Python 和 JavaScript 是当今最热门的两种编程语言。但是,它们不可能永远位居榜首。最终,它们一定会失宠,就像所有的编程语言一样。这很可能在未来十年内就会发生。
哪些编程语言有望取代它们呢?下面就是我列出的挑战者名单。
Dart
由于 Flutter 框架和 Google 的认可,这门语言迅速流行起来。它与使 Ruby 如此流行的驱动力相似:Rails 框架。
如果 Google 的新操作系统 Fuchsia 取得成功的话,Dart 将会成为其中心。
主要优势:它是一种比 JavaScript 更优秀的编程语言。
主要缺点:它面对来自 JavaScript 及其迷惑的群体的对抗。
曼德勃罗分形图(Mandelbrot set)示例代码:
Elixir 是 Erlang 的派生语言,具有改进的语法,以及与 Erlang 相同的、惊人的并发性支持。作为一种纯函数式语言,它很有可能将这一范式提升为主流。
主要优点:它使函数式编程变得异常简单。它非常适合并发性。
主要缺点:需要了解潜在的一次性可编程基础知识,这可能是一项艰巨的任务。
曼德勃罗分形图(Mandelbrot set)示例代码:
另一种 Google 支持的语言 Golang,得益于其闪电般的编译速度、简单高效的并发性以及非凡的简单性,它被证明是赢家。唯一缺少的就是泛型,不过,这个特性已经在路线图上了。
主要优点:超级简单,对并发性支持非常好。
主要缺点:它(目前)缺少泛型。
曼德勃罗分形图(Mandelbrot set)示例代码:
Julia 的优势在于它对数学计算的出色支持。数学友好的语法对数学家来说非常有用。如果有哪种语言可以推翻 Python,那么 Julia 肯定是一个竞争者。
主要优点:这门语言是为科学家精心设计的。
主要缺点:这门语言面临数据科学之王 Python 的挑战。
曼德勃罗分形图(Mandelbrot set)示例代码:
Kotlin 是更好的 Java。事实上,它实际上就是 Java 的一个可以立即使用的替代品。Google 已经将其打造成 Android 开发的一流语言。
主要优点:它是一种升级版的 Java。
主要缺点:它是一种非常庞大的语言,即使与 Java 相比也是如此。
曼德勃罗分形图(Mandelbrot set)示例代码:
主要优点:Lua 是一种小巧、简单、快速、可嵌入、可移植的灵活的语言。
主要缺点:它已经被人们忽视了 26 年,现在会有什么改变呢?
曼德勃罗分形图(Mandelbrot set)示例代码:
Pharo 是 Smalltalk 的现代变体,Smalltalk 是一种非常高效的面向对象编程语言。实际上,Smalltalk 是面向对象编程的典范,它几乎启发了地球上所有其他面向对象编程语言的灵感。最后,没有一种语言比 Smalltalk 更适合面向对象编程了。
Pharo 还是世界上最简单、最优雅的语言之一。你可以在 15 分钟内学会 Smalltalk 的全部语法!
主要优点:它的工作效率非常高效,就像工作效率提高了 5 倍一样!
主要缺点:掌握这种语言,需要一种不同的编程思维。但人们往往害怕改变。
分形树示例代码:
Rust 因其内存安全特性:借位检查器而得到了广泛的认可。这个特性实际上消除了所有与内存相关的编程错误。Rust 保证了编程的安全性。
主要优点:它有助于使软件更可靠。
主要缺点:这门语言很难学习,而且借位检查器可能也很难理解。
曼德勃罗分形图(Mandelbrot set)示例代码:
TypeScript 是 JavaScript……带来了好处。它主要是添加了静态类型。与 JavaScript 的兼容性使它成为前端 Web 开发人员的最爱,因为他们已经了解 JavaScript,而且几乎不需要改变他们的工作流程。
主要优点:它就是 JavaScript,因此对 JavaScript 开发人员来说没有什么太大的变化。
主要缺点:它仍然是 JavaScript,所以仍然继承了 JavaScript 的所有包袱。
分形树示例代码: