你应该学习哪些编程语言?

学习一门新的编程语言是提升你职业生涯的好方法。但是学习哪一门呢?
247 位读者喜欢这篇文章。
magnifying glass on computer screen

Opensource.com

如果你想开始你的编程职业生涯或者更进一步,学习一门新的语言是个明智的选择。但是现在有如此多的在用的语言,这就引出了一个问题:哪种编程语言是最好的呢?为了回答这个问题,让我们从一个简化的提问开始:你想做什么类型的编程?

如果你想在客户端做 Web 编程,那么 HTML、CSS 和 JavaScript 这些专用语言(以及它们无数的变种)是必不可少的。

如果你想在服务器端做 Web 编程,可以选择所有常见的通用语言:C++、Golang、Java、C#、Node.js、Perl、Python、Ruby 等等。通常,服务器端程序会与数据存储交互,例如关系数据库和其他数据库,这意味着像 SQL 这样的查询语言可能会派上用场。

如果你正在为移动设备编写原生应用程序,那么了解目标平台非常重要。 对于 Apple 设备,Swift 已经取代 Objective C 成为首选语言。 对于 Android 设备,Java(带有专用库和工具集)仍然是主要的语言。还有一些特殊的语言,例如与 C# 一起使用的 Xamarin,可以为 Apple、Android 和 Windows 设备生成特定于平台的代码。

那么通用语言呢? 通常的分类中有很多选择。在*动态*或*脚本*语言(例如,Perl、Python 和 Ruby)中,有更新的语言,例如 Node.js。 Java 和 C# 比他们的粉丝愿意承认的更相似,它们仍然是针对虚拟机(分别为 JVM 和 CLR)的主要*静态编译*语言。在编译为*原生可执行文件*的语言中,C++ 仍在其中,以及后来的 Golang 和 Rust。 通用*函数式*语言比比皆是(例如,Clojure、Haskell、Erlang、F#、Lisp 和 Scala),通常具有充满激情的社区。 值得注意的是,Java 和 C# 等面向对象语言已经添加了函数式构造(特别是 lambdas),而动态语言从一开始就具有函数式构造。

让我以 C 语言结束,它是一种小巧、优雅且可扩展的语言,不要与 C++ 混淆。 现代操作系统主要用 C 语言编写,其余部分用汇编语言编写。 任何平台上的标准库也大多用 C 语言编写。 例如,任何发出*你好,世界!*问候语的程序都是通过调用名为 **write** 的 C 库函数来完成的。

C 语言充当可移植的汇编语言,暴露了其他高级语言故意隐藏的底层系统的细节。 因此,理解 C 语言就是更好地掌握程序如何争夺执行所需的共享系统资源(处理器、内存和 I/O 设备)。 C 语言既是高级语言,又是底层语言,因此在性能方面无与伦比——当然,汇编语言除外。 最后,C 语言是编程语言中的通用语,几乎每种通用语言都以某种形式支持 C 调用。

对于现代 C 语言入门,请考虑我的书 C 语言编程:便携式汇编器入门。无论你如何学习,学习 C 语言你将会学到不仅仅是另一门编程语言。

你认为哪些编程语言很重要? 你是否同意这些建议? 请在评论中告诉我们!

标签
User profile image.
我是一名计算机科学领域的学者(德保罗大学计算与数字媒体学院),在软件开发方面拥有丰富的经验,主要是在生产计划和调度(钢铁行业)以及产品配置(卡车和巴士制造业)。关于书籍和其他出版物的详细信息可在以下网址获得

21 条评论

奇怪的是,你甚至没有提到 PHP,它是服务器端 Web 开发中使用最多的语言……

我也想知道 PHP 是如何在这篇精彩的文章中被完全遗忘的。

回复 ,作者:Bernard(未验证)

哇,在 Web 语言中甚至没有提到 PHP。 即使它是迄今为止使用最广泛的语言。 如此多的 PHP 仇恨。 你知道他们称 PHP 开发者为什么吗? “已就业”

这不是仇恨!
主题是:你应该学习哪些编程语言。
好吧,PHP 已经很老了,现在有很多更好的替代方案。 所以,是的,如果你想至少成为一名员工,你应该学习它们而不是 PHP……

回复 ,作者:Patrick Thurmond(未验证)

PHP 是一种很糟糕的语言,不应该作为你的第一门语言来学习。 它会教会你如何对你正在使用的工具感到愤怒。

同样在你的其他评论中,人们使用很多其他语言,并且该行业正在远离 PHP。

有关为什么你不应该学习 PHP 的更多详细信息
https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/

回复 ,作者:Patrick Thurmond(未验证)

如果你想开发 Android 移动应用程序,kotlin 是一种必备语言,你甚至可以用它编写后端/Web 前端和原生桌面应用程序 :)

Android 开发缺少 Kotlin,我相信 Kotlin 现在是它的默认选择。

那么 Dart 和 Flutter 势头如此强劲呢?

很好的提醒——应该引用 PHP。 然而,很难确定哪种服务器端语言占主导地位。

奇怪的是,你没有谈论 Web 上的 php,超过 50% 的人在使用 php。

我决定在 1997 年左右学习编程,当时很明显互联网将成为一种“事物”。 我读了 Ivor Horton 的《Beginning C》。 第一次阅读并没有掌握太多,所以又读了一遍。 我继续掌握了 Perl、Php、Bash 和系统管理。 然而,你激励我再次拿起 C.... 谢谢。

我更喜欢专注于简单而不是复杂的语言。 像 C 和 Go 这样的语言是我的选择,它们的简单性使它们成为开源项目的理想选择。

我想获得编程技能,因为我是一名数学和计算机科学专业的学生

是否可以在不考虑 PHP 的情况下编写这些行? 我不这么认为……

看起来你只是讨厌它! ?

我发现 C 语言作为入门编程语言非常难啃。 我不知道我有多少关于 C 或 C++ 的书籍,而且很难取得很大的进展。 我认为 Perl 或 Python 更适合入门。 Perl 和 PHP 在结构上有许多相似之处。
我认为起点应该是提出一些关于你想用这种或那种语言做什么的想法。 筛选一些做一些有趣的事情并且你实际上可能会使用的简短程序,然后挑选程序中的更改以自定义其输出,或者只是看看当你更改一行或多行时会发生什么。

许多其他语言也使用 C 作为模型,可以帮助其他人,例如 Open Shader Language 和 GLSL 等着色语言。 几乎每个 CPU 都有 C 编译器。 许多科学模拟仍然使用 Fortran,也非常快。

1. Ruby|Python|Perl|Forth(Postcript)
2. C|汇编器|C++|Pascal
3. Haskell|Scala|Prolog

对我来说,编程与其说是学习某种语言的特定语法,不如说这些东西可以在 Google 上搜索到。 更重要的是理解编程的逻辑,然后能够将任务分解为可定义的块,这些块可以编程以解决问题。 选择正确的语言来解决你必须解决的特定问题也很重要。 此外,学习 Python,它很有趣!

我认为“学习 C 语言你将会学到不仅仅是另一门编程语言。”

没有提到 PHP,这很令人惊讶。 opensource.com 本身是用 PHP - Drupal 制作的

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.