任何编程语言可以从五个方面去考量:
- 语法
- 编程范式
- 库
- 工具和框架
- 领域
语法
这是编程语言最为核心最为基础的内容。所有编程语言的语法差别不大,甚至是高度雷同!语法包含的内容实际非常少:变量,表达式,语句,流程控制(分支,循环,递归等),优先级,函数等。
语法中差别最大的就是表达式和语句了,其他的基本一致。
编程范式
编程范式指的是语言用于解决问题的方法。典型的范式有:面向过程,面向对象,函数式,元编程,范型等。
编程范式还包含了语言的类型,这里包含了脚本语言,编译语言,以及动态类型语言和静态类型语言。
库
库是对一类问题的解决方法和实现的封装。语言很多功能是无法在语法层面实现支持的,或者说实现的成本巨大!所以使用库的方式来提供这些功能,库有标准库和三方库之分。
库的规模和支持力度是评价编程语言实力的重要方面。
工具和框架
工具和框架是对语言的更加抽象的支持,这个层面主要是生产力和开发效率的支持。这些主要由社区来实现。和库一样,这个也是考量一门编程语言的重要一方面。对于很多企业级的开发,这个是最为关心的因素。
领域
由于语言设计的初衷或者在发展过程中的一些意外因素,任何编程语言都有它自己擅长的领域,有些仅适用一个领域,而有些则胜任很多领域。