对于一名在IT互联网领域从事技术研发的工程师来说,往往都会纠结过编程语言的选择,尤其是对于掌握多门全场景编程语言的程序员来说,经常会反复权衡编程语言的选择问题,对于从事技术选型的架构师来说,也经常会遇到类似的问题。
编程语言本身往往都有比较明显的应用场景,在不同的场景下往往会采用不同的编程语言,但是对于Java、Python、C#等全场景编程语言来说,在做出取舍时,确实需要考虑到更多方面的因素,比如开发团队的技术构成、技术积累、开发周期、技术升级等等。
通常来说,在编程语言的选择上往往没有最完美的选择,在考虑编程语言的选择问题时,通常要首先考虑开发周期问题和技术生态问题,而对于平台类产品研发来说,往往需要考虑性能和扩展性问题。虽然说编程语言本身仅仅是一种工具,开发的核心往往并不是编程语言的选择,但是一个适合的编程语言往往能够明显提升研发效率。
比如我在早期从事机器学习方面的研发时,一直在采用Java语言来完成算法实现,后期调整到采用Python实现算法时,明显提升了开发效率,而且调整起来也比较方便,但是如果要开发一些需要落地应用的产品时,就会纠结是采用性能更稳定的Java,还是采用更方便的Python,我想这也是很多程序员会纠结的问题。
最后,选择编程语言的过程,往往就是一个权衡各种利弊的过程,比如时间周期特别短,肯定要首先考虑采用开发周期更短的编程语言等等,但是不论选择哪种编程语言,往往很少会因为编程语言的选择问题,而导致项目失败。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以