如何选择合适的编程语言

时间:2022-03-27 19:59:28

工作有几年了,逐渐摆脱了为了语言而争得没完没了的问题。最近接触到的各式项目较多,存在各种不同的问题域之中。作为技术人员,总免不了思考出一个合适的解决方法来。选哪种语言,哪个系统平台,都是至关重要的。每一个问题域中,都有特定的环境,这些环境都是客观存在的,没办法改变。自认为在限定条件下的问题求解是最有趣的。如果所有的环境都是自己想要的,那会是多么的无趣,也是多么的不可能。

言归正传,现有的语言,自认为都是为了解决问题而存在的。问题多种多样,哪一种问题需要使用哪一种语言? 我们应该怎么来选择呢? 这个问题确实恼火。最近一直在为这个问题烦恼。以前工作的时候,都是公司要求用什么语言,就用什么语言, 大环境都定死了。现在更灵活了,自己有一定的决策权,更多的选择,当然也需要更多的思考。

基于语言只是解决问题的工具这个点出发,选择何种语言, 应该首先研究问题领域,分析问题的根本所在。到底什么才是问题的根本? 我只抛砖,欢迎大家讨论。找到问题的根本是否就可以决定使用哪种语言了?反过来,是否也要充分的认识到语言的优势和缺点呢?

语言的基本功能在于沟通,其作用在于表达,对于特定问题域,语言是否能很好的表达问题域中的参与者,以及他们之间的关系,是否也是一个重要的考察方面呢。如果一种语言不能很好的表达一种问题域,那该语言是否面临着死亡?这是我想讨论的第二个方面,是否合适的语言必然是能很好地表达问题域的?如果是,那至少需要表达到什么程度,是否有一些基本的要素?

在很多时候,还需要考虑团队成员熟悉的语言,工作能力,时间期限,以及成本等等因素,但这些东西并没有上面两个问题令我感兴趣。如果你也感兴趣,不妨说说你的想法。谢谢。