新年伊始,通常都会立一面flag。为什么不选择一门你今天没学过的编程语言呢?如果一种编程语言是一只股票,如果是,你会选择哪种编程语言进行投资?您可以查看某些编程语言的排名和分析,就像标准普尔500指数对股市的影响一样。比如有3种股票:大盘股:经营稳定的大公司,比如世界500强公司。上行平稳但不多面,下行空间有限。中盘股:未来成为大盘股的可能性较大的中盘股公司。这些回报要高得多,但也可能低得多。小型股:即将上市的公司。目前规模很小,但潜力巨大。这些可以变成多张纸,但也非常危险。如果只投资大盘股,收益会受到压制。如果你只投资小盘股,你可能会中大奖,但也可能破产。多元化的投资组合为每个资产类别分配资金。这使回报保持稳定,并且很有可能获得更高的回报。本文还按照大中小盘的分类,分享了最具投资(学习)价值的10种编程语言。这些语言将足以完成大多数团队所做的大部分工作。选择一个或多个并学习它。一张图片胜过一千个单词一种编程语言至少在一个领域或生态系统中占据主导地位。1.PythonPython是一种广泛使用的解释型、高级通用编程语言。如果你是初学者,学习Python是你最好的选择,因为它简单易学,功能强大,并且易于构建Web应用程序。非常适合初学者作为入门级的开发语言。它确实存在性能问题(包括GIL),但是在机器性能几乎达到巅峰的今天,几毫秒的延迟已经不重要了,开发效率比机器效率更重要。最著名的云计算开源平台OpenStack就是基于Python开发的。人工智能和机器学习的首选开发语言也是Python。Python已经成为互联网发展的焦点。从TIOBE编程语言趋势图可以看出,Python已经是第一。Python有很多杀手级框架,Flask、FastAPI、Django是开发微服务的热门框架。NumPy、SciPy、Pandas、Scikit-Learn、TensorFlow和PyTorch是最流行的数据处理和机器学习库。JupyterNotebook是数据科学家的流行且几乎默认的IDE。2.Javascript/TypeSciptJavaScript是一种解释型、动态类型和垃圾收集的编程语言。TypeScript是JavaScript的静态类型超集。JavaScript与HTML和CSS一起统治着网络开发世界。所有主要的网络浏览器都优化了JavaScript执行引擎。Node.js是一种流行的服务器运行时环境。Express、Sails、Hapi、Meteor、Loopback、Fastify、Koa是最流行的Web服务框架。React、Angular、Vue、Ember、Inferno、Svelte、Preact是流行的前端框架。这种对前端和后端的全栈覆盖使得JavaScript成为开发Web应用程序的最主要语言。JavaScript甚至在机器学习方面也取得了进展。例如,TensorFlow.JS可用于在带有node.js的浏览器中部署机器学习模型。3.JavaJava是一种面向对象、静态类型、垃圾收集的编程语言,它在Java虚拟机(JVM)上使用即时(JIT)编译进行解释。除了C语言,Java几乎是性能最好的编程语言。从第一个编程语言趋势图也可以看出,经过多年的编程语言竞争,它仍然在竞争中占据主导地位,这也是它在企业软件市场上独领风骚的原因。它也是Android应用程序开发中的主导语言。Java/JavaEE是开发企业级服务的经典平台。微服务框架有很多:SpringBoot、Vert.X、Helidon、Lagom、AxonIQ、Micronaut、Dropwizard、Quarkus。Java也是数据处理应用程序中的重要语言。大多数Apache数据处理框架,如Spark和Flink,都是基于JVM的。4.C#C#是一种用于Windows的静态类型、垃圾收集编程语言。Microsoft生态系统的必备语言。ActiveServerPages(ASP.NET)是它的.NET平台Web开发框架。5.SwiftSwift是一种通用的、静态类型的编译语言。它是Objective-C语言的替代品,Apple和iOS是两个主要的移动平台之一,而AppleAppStore是iPhone和iPad应用程序的市场,开发人员可以在其中赚钱发布他们的软件。Swift是一种用于创建iOS应用程序的编程语言。中档中档编程语言具有显着的实用性,并且有可能在至少一个领域或生态系统中占据主导地位6.KotlinKotlin是一种跨平台的、具有类型推断的静态类型编程语言。它在JVM上运行,并与Java完全互操作。Google将其作为Android的首选语言。Kotlin主要针对JVM,但它可以编译为JavaScript和本机代码(使用LLVM)。因此,Kotlin代码可以在浏览器和iOS中运行。在服务器端,它可以运行在任何Java微服务框架以及Ktor或http4k上。Kotlinx.html是用于构建DOM的DSL,而Kotless是用于无服务器部署的框架。还有许多不断发展的Kotlin数据科学库。在JVM上运行并受益于成熟的Java生态系统、跨平台和编译为JavaScript是使Kotlin越来越受欢迎的一些优势。7.GolangGo语言是一种来自谷歌的静态类型编译编程语言。它的语法类似于C,但具有内存安全、垃圾收集和结构类型。Go语言的杀手级应用Docker已经成为新一代的云计算技术。Go语言中的Goroutine和Channel这两个神器简直就是并发和异步编程的一大福音。C、C++、Java、Python、JavaScript等语言的并发和异步编程方式控制起来比较复杂,容易出错,而Go语言却非常优雅流畅地解决了这个问题。Go的优势在于它的性能,因此它有可能在编写服务器端代码方面占据主导地位。8.ScalaScala是一种静态类型的面向对象的函数式编程语言。Scala代码可以编译为Java字节码并在JVM上运行。它提供了JVM生态系统的优势,而没有Java的冗长。与Kotlin一样,它可以与Java互操作。除了Java框架,Scala服务也可以使用AkkaHTTP、Play、Chaos、Scalatra等框架开发。Scala.js是将Scala编译成JavaScript的编译器,而ScalaNative是将其编译成原生代码的LLVM编译器。Scala在编写大数据处理应用程序方面也很受欢迎。Smallcap9.RustRust是一种静态类型的编程语言,专为提高性能和安全性而设计。它具有强大的类型系统和所有权模型,保证编译时内存安全(无垃圾收集)和线程安全。Rust的明显用途是开发后端服务,但它也可以用于开发带有Web组件的前端。Hyper、Rocket、Actix、Warp是最流行的Web框架。鉴于Rust的编译时内存和线程安全保证,Rust框架是WebFrameworkBenchmark中最快的框架之一也就不足为奇了。借助前端WASM框架,Rust可以成为强大的全栈替代方案。10.DartDart是一种静态类型的垃圾收集编程语言,专为Web和移动应用程序的客户端开发而设计。Dart为Flutter框架提供支持——一个多平台用户界面工具包。Dart带有DartVM以方便开发。对于生产部署,代码会根据目标平台编译为本机代码或JavaScript。由于这些原因,Dart有潜力成长为前端开发的主要语言。最后,本文分享了大中小三种类型的10种语言。新的一年你会选择学习哪门编程语言?
