表弟问我学编程从哪门语言开始,手机里存了三张语言排行榜截图,越看越乱。计算机编程语言有几百种,真正在招聘和项目里常用的也就二三十种,先按用途分类,比按热度排行靠谱。排行榜统计口径不同,名次年年变,参考一下就行。

底层到高层,先分清三层

机器语言是 0 和 1,CPU 直接执行;汇编语言用 mov、add 这类助记符对应指令,写驱动和单片机时还能见到。高级语言离硬件远,人写起来舒服,C、C++、Java、Python、JavaScript 都属于这一层。高级语言又分编译型和解释型:C、Go 先编译成可执行文件再运行,Python、JavaScript 一般边解释边执行,Java 折中,先编译成字节码再由虚拟机跑。这三层的界限没那么死,很多语言带点混合特征,入门阶段不用抠定义。

按想做的事挑语言

  • 网页前端:HTML、CSS 打底,交互靠 JavaScript,绕不开。
  • 后端服务:Java 岗位多,Go 适合高并发,Python 写起来快,PHP 中小项目常见。
  • 系统底层:C 和 C++,操作系统、嵌入式、游戏引擎都在这。
  • 数据分析:Python 生态最全,R 在统计领域用得多。
  • 手机应用:安卓主流 Kotlin,iOS 用 Swift。

同一种语言,生态差别也很大。Python 有 pandas、requests,Java 有 Spring 全家桶,JavaScript 靠 npm 上一堆包。选语言其实也在选生态和社区,遇到报错能不能搜到答案,比语法优雅重要。

第一门语言的取舍

想尽快做出东西,选 Python,装好解释器就能写脚本,爬数据、处理表格都方便。想走企业后端,直接上 Java,语法啰嗦但资料多、岗位稳。想打基础,学 C,指针和内存这关过了,再看别的语言会轻松很多。别一上来同时学三门,语法会串。入门阶段别纠结语言鄙视链,能把手头的项目跑通才是真的。

计算机编程语言只是工具,真正通用的是变量、循环、数据结构、调试思路这些。选定一门写够两三个月,再横向对比,比在排行榜前纠结半个月有用。