给菜鸟的建议:如何选择第一门语言
英文原文:Choosing Your First Programming Language
众多语言摆在菜鸟程序员的面前,致使许多菜鸟程序员在选择自己第一门要学习的语言时常常面临困惑。那到底选择哪一门编程语言吗?下面一位国外朋友从各流行编程语言的优势、开发环境配置等方面进行了简单对比,给出了相关建议。
了解各语言的长处
“尺有所短,寸有所长”。每个编程语言都有自己擅长的领域,有的适合建站,有的适合文本处理……所以到底如何什么样的编程语言,我们还需要具体问题具体分析,发挥每个语言自己的优势才行。
让我们大体看下几个语言的常用领域:
语言 | 常用领域 |
Java | 编写跨平台应用 |
C# / .Net | 开发 Windows 应用、iPhone 应用 |
PHP | Web 程序后端 |
Javascript | 网页设计 |
Python | 系统管理、自动化运维、科学研究 |
Ruby | 大型 Web 应用开发 |
Perl | 适用于大量文本处理 |
Bash | 用于 Linux 下的自动化工作 |
C/C++ | 大型项目、嵌入式开发 |
上面列举的语言都可以完成一些其他语言擅长的工作,但可能要花费更多的时间与精力才行。
了解各语言的语法细节
目前全球共有几千种语言,每个语言也都有自己的语法规定,这和编程语言是一样的。比如,英语和日语语法相差千里,但法语与西班牙语语法则类似。我们先通过下面几个例子,来了解下几个语言的语法细节,以输出“Hello World”为例:
Perl 代码
#!/usr/bin/perl print “Hello World.\n”;
Python 代码
#!/usr/bin/python print “Hello World\n”
C#代码
public class Hello1 { public static void Main () { System.Console.WriteLine (“Hello, World!”); } }
Java 代码
public class HelloWorld { public static void main (String[] args) { System.out.println (“Hello, World”); } }
我们可以看出,Perl 和 Python 语法很接近,C#与 Java 的语法很接近。很多语言在设计之初就参考了其他的同类语言的语法,比如,Python 就大量借鉴了C语言,Python 的命名规则、部分关键词与C语言是一样的。所以,如果你学习了一门语言,其他类似的语言也就很容易上手了。
开发环境配置
本文中提到的一些例子,在 Linux 下的开发环境都很容易进行配置。比如 Python,目前大多数 Linux 发行版本都默认安装了 Python。之前 C# 只能跑在 Windows 平台上,不过现在也可以借助 Mono 项目来在 Linux 下运行。但相比起来,在 Linux 下配置开发环境更加简单一些,很多只是一条命令就可以解决。
语言 | Windows 平台安装 | Ubuntu 系统安装 |
Ruby | Rubyinstaller | apt-get install ruby |
Python 2.7 | Activepython | apt-get install python |
C#/.Net | VisualStudio | - |
Java | Javase | apt-get install openjdk |
C++ | VisualStudio | apt-get install build-essential gcc |
流行度比较
我们可以在编程语言排名网站 TIOBE.com 上来查看最近的编程语言排名。下面是排名前 10 的编程语言:
选择
如果你:
- 一个 Windows 用户,想要编程:可以学习C#/.Net,轻松写出图形应用,同时也可以在 MSDN 上找到很多学习资料;
- Linux 用户,想要完成部分自动化工作:可以学习 Python,适合初学者。
- 搭建网站:那学习 JavaScript 和 PHP 吧!
部分菜鸟程序员可能已经开始了某个语言的学习,但如果你发现正在学习的编程语言不适合你,就可以考虑学习下其他语言,慢慢找到适合自己工作和个性的语言。