关于在小企业开发过程中技术的选型,我一直在中小型企业工作,开发人员多的时候,十来个,少的时候,两三个。但是虽然企业小,但是在面对技术选型时,却常常出现不一致的问题。
比如A想选择最新的技术路线,比如,微服务,前后端分离部署等,但是B又想选择比较传统的技术路线,比如普通部署,非前后端分离的项目;C又想选择VUE+Spring全家桶,D还想选择Jquery,BootStrap等技术路线,那么其实这个时候选择是比较困难的,如果选择最新的技术路线,那么就意味着有许多坑需要去处理,但是这对技术人员是有好处的,可以带来技术上的提升,程序设计理念的转变等。但是却对企业开发并不一定是好事,可能会耽误开发进度,影响系统的整体稳定性。如果选择比较成熟的技术路线,那么大家都熟悉,但是对于想突破自己技术的人,却不一定友好,必定限制了使用新技术,而且也会带来技术更新慢。当然我个人建议是,如果想学习新技术,在企业中无法满足时,必须要在业余时间上努力学习,只有在学习到一定程序的时候,到时候可以顺理成章的应用起来。
工作这么多年做过开发,做过管理,当然,做管理也得开发,有时候,管理者(有懂技术的,有不懂技术的,当然也包括我自己),很多时候,听到一个新技术,就想用到项目中,而且很多时候为了这个,需要讨论半天,并不是所有听到的技术,都可以应用到项目中。比如有的项目中,是用VUE开发的,基于VUE+JavaScript的方式进行开发,而且相应的开发人员,对这个开发方式也很熟悉,开发效率很高,但是上面从网上看到了一个还有TypeScript技术,这个更新,更好,那么就会问,为什么,咱们在开发过程中没有选择TypeScript,而选择JavaScript呢?就得去讲解,去分析JavaScript对于用户体验上没有什么区别,而且TypeScript属于JavaScript的超集,虽然有一些功能上可能会强大,但是需要相关的开发人员,从头把这个代码熟悉了,这会耽误不少工期等等,有时候,会问,为什么这个项目不用C#开发,或者是为什么这个项目用了C#开发,使用JAVA开发,为什么不使用Kotlin开发等等。
其实作为开发者来说,在很多时候,也想使用新技术,新方法,很多时候,新技术确实带来不少方便,但是工作这么多年后,现在才想明白。并不一定是新技术才适合,有时候成熟的技术路线更适合中小企业,主要还是对于中小企业来说,试错的成本不能太高,要在试错成本能包含的范围内,更新技术,提升技能。
其实对于一些以实现功能为主的中小企业来说,解决问题的最好办法是选择成熟的既定方案,选择适合开发人员开发的技术路线,这样的技术路线相对成熟。可以减少很多不必要的试错成本。保证开发的进度与系统的更新迭代的稳定性。
很多时候,在其它的工作中,也是这样子的,做一个事情的方法,合适才是最重要的。