如何选择编程语言?

作为软件开发人员,您需要学习一种或多种编程语言。今天,可能有更多的编程语言可供使用,超出了您的学习能力,无法有效地使用。有了所有这些语言选择 - 您如何选择要学习的编程语言?

以下是主要编程语言选择标准的列表:

  • 我的工作需要吗?
  • 我想要的其他工作需要吗?
  • 该语言流行吗?
  • 该语言是为了控制还是为了方便而设计的?
  • 该语言有一些有趣的功能或创新吗?
  • 有没有好的学习资料可以利用?

我的工作需要吗?
在选择是否学习编程语言时,最重要的因素或标准是,我当前的工作是否需要该编程语言。或者,即使我不需要它,了解编程语言对我目前的工作仍然有帮助吗?如果是的话,这将是我学习该编程语言的一个很大的动力。

我想要的其他工作需要吗?
第二个标准是给定的编程语言在我感兴趣的另一项工作中是否需要或有益。如果是的话,这将是我学习该编程语言的另一个动力。

通常了解某些工作需要哪些编程语言的方法是查看该类工作的招聘广告,并查看列出的编程语言类型。

编程语言流行吗?
第三个标准是编程语言是否流行。在尝试确定编程语言的流行度时,通常查看 PYPL 和 TIOBE 索引:

该语言是为了控制还是为了方便而设计的?
第四个标准是该语言是为了控制还是为了方便而设计的。优先学习为控制而设计的语言,其次是方便性。

  • “为控制而设计”的意思是,旨在让开发人员尽可能多地控制运行时代码中最终发生的情况。例如,对编程范式的最大控制、硬件如何执行某些操作、内存管理、对硬件的访问等。Assembly、WebAssembly、LLVM、C、C++、D 和 Rust 等语言是为以下目的而设计的语言:控制和性能第一,便利性第二。
  • 为方便而设计,使复杂的代码易于编写,但在此过程中会失去对代码在运行时执行方式的控制。JavaScript、Python、Ruby、Perl 等语言的设计是为了方便控制​​。

该语言有一些有趣的功能或创新吗?
第五个标准是该语言是否有一些有趣的功能或创新。如果是这样,就会更有动力学习该编程语言。

有没有好的学习资料
第六个标准是我是否能找到有关给定编程语言的任何好的学习材料。如果我不能,通常应推迟学习该语言,直到找到更好的学习材料。