学习编程的原因因人而异。你可能有一个想要制作的程序,或者你只是想尝试一下。所以,在选择你的第一门编程语言之前,问问你自己:你希望那个程序在哪里运行?你希望那个程序做什么?
你学习编码的原因应该影响你选择第一门语言。
在本文中,我交替使用 "code"、"program" 和 "develop" 作为动词,同时交替使用 "code"、"program"、"application" 和 "app" 作为名词。这是为了反映你可能听到的语言用法。
了解你的设备
你的程序将在哪里运行是你选择语言的一个决定性因素。
桌面应用程序是在台式机或笔记本电脑上运行的传统软件程序。对于这些程序,你将编写只能在单台计算机上一次运行的代码。移动应用程序,即 App,在运行 iOS、Android 或其他操作系统的便携式通信设备上运行。Web 应用程序是像应用程序一样运行的网站。
Web 开发通常基于 Web 的客户端-服务器架构被分解为两个子类别
-
前端编程,即编写在 Web 浏览器本身中运行的代码。这是面向用户的部分,或者程序的 "前端"。它有时被称为 "客户端" 编程,因为 Web 浏览器是 Web 的客户端-服务器架构的客户端一半。Web 浏览器在你的本地计算机或设备上运行。
-
后端编程,也称为 "服务器端" 编程,编写的代码在服务器上运行,服务器是你无法物理访问的计算机。
要创建什么
编程是一个广泛的学科,可以用于各种领域。常见的例子包括
- 数据科学,
- Web 开发,
- 游戏开发,以及
- 各种类型的工作自动化。
现在我们已经了解了你想要编程的原因和地点,让我们来看看两种非常适合初学者的语言。
Python
Python 是最受首次程序员欢迎的语言之一,这并非偶然。Python 是一种通用语言。这意味着它可以用于广泛的编程任务。几乎没有什么是你不能用 Python 做的。这让范围广泛的初学者能够实际使用该语言。此外,Python 还有两个关键的设计特性,使其非常适合新程序员:清晰、类似英语的 语法 和对代码 可读性 的强调。
语言的语法本质上是你为使语言执行而键入的内容。这可以包括单词、特殊字符(如 ;
、$
、%
或 {}
)、空格或任何组合。Python 尽可能使用英语,这与其他通常使用标点符号或特殊字符的语言不同。因此,Python 的阅读方式更像是自然的、人类的语言。这有助于新程序员专注于解决问题,并且他们花费更少的时间来处理语言本身的细节。
与清晰的语法相结合的是对可读性的关注。编写代码时,你将创建逻辑 "代码块",即为某些相关目的协同工作的代码段。在许多语言中,这些块由特殊字符标记(或分隔)。它们可能包含在 {}
或其他字符中。块分隔字符的组合以及你以几乎任何方式编写代码的能力会降低可读性。让我们看一个例子。
这是一个小函数,名为 "fun",它接受一个数字 x
作为输入。如果 x
等于 0,它会运行另一个名为 no_fun
的函数(它做一些不好玩的事情)。该函数不接受任何输入。否则,它会使用相同的输入 x
运行函数 big_fun
。
用 "C 语言 定义的这个函数可以这样写
void fun(int x)
{
if (x == 0) {
no_fun();
} else {
big_fun(x);
}
}
或者,像这样
void fun(int x) { if (x == 0) {no_fun(); } else {big_fun(x); }}
两者在功能上是等效的并且都会运行。{}
和 ;
告诉我们块的不同部分在哪里;但是,一个明显更易于人类阅读。将它与 Python 中相同的函数进行对比
def fun(x):
if x == 0:
no_fun()
else:
big_fun(x)
在这种情况下,只有一个选项。如果代码不是以这种方式结构化的,它将不起作用,因此如果你有可以工作的代码,你就拥有可读的代码。另外,请注意语法的差异。除了 def
之外,Python 代码中的单词都是英语,对于广泛的受众来说都是清晰的。在 C 语言示例中,void
和 int
不太直观。
Python 还有一个出色的生态系统。这意味着两件事。首先,你有一个庞大的、活跃的语言用户社区,当你需要帮助和指导时可以向他们求助。其次,它有大量的预先存在的库,它们是执行特殊功能的代码块。这些范围从高级数学处理到图形到计算机视觉到几乎任何你可以想象的东西。
Python 作为你的第一门语言有两个缺点。首先是它有时很难安装,尤其是在运行 Windows 的计算机上。(如果你有 Mac 或 Linux 计算机,则 Python 已经安装。)虽然这个问题并非无法克服,并且情况一直在改善,但它可能会阻止一些人。第二个缺点是对于那些特别想构建网站的人。虽然有使用 Python 编写的项目(例如 Django 和 Flask)可以让你构建网站,但没有太多选项可以编写将在 Web 浏览器中运行的 Python。它主要是一种后端或服务器端语言。
JavaScript
如果你知道你学习编程的主要原因是构建网站,那么 JavaScript 可能是你最好的选择。JavaScript 是 Web 的语言。除了作为 Web 的默认语言之外,JavaScript 作为初学者语言还有一些优势。
首先,没有什么需要安装的。你可以打开任何文本编辑器(例如 Windows 上的记事本,但不是像 Microsoft Word 这样的文字处理器)并开始键入 JavaScript。该代码将在你的 Web 浏览器中运行。大多数现代 Web 浏览器都内置了 JavaScript 引擎,因此你的代码几乎可以在任何计算机和许多移动设备上运行。你可以在 Web 浏览器中立即运行你的代码这一事实提供了非常快速的反馈循环,这对新程序员来说是一件好事。你可以尝试一些东西并非常快速地看到结果。
虽然 JavaScript 最初是一种前端语言,但名为 Node.js 的环境允许你编写在 Web 浏览器或服务器上运行的代码。现在 JavaScript 可以用作前端或后端语言。这导致了它的受欢迎程度的提高。JavaScript 还有大量的软件包,可以为核心语言提供额外的功能,使其可以用作通用语言,而不仅仅是 Web 开发的语言。与 Python 类似,JavaScript 拥有一个充满活力的、活跃的生态系统。
尽管有这些优势,但 JavaScript 对于新程序员来说并非没有缺点。JavaScript 的语法 不像 Python 那样清晰或类似英语。它更像上面的 C 语言示例。它也没有将可读性作为关键设计原则。
做出选择
选择 Python 或 JavaScript 作为你的第一门语言都很难出错。关键因素是你打算做什么。你为什么要学习编码?你的答案应该对你的决定影响最大。如果你希望为开源做出贡献,你会发现大量使用这两种语言编写的项目。此外,许多主要不是用 JavaScript 编写的项目仍然将其用于前端组件。在做出选择时,不要忘记你的本地社区。你是否有使用这些语言的朋友或同事?对于新的编码员来说,获得实时支持非常重要。
祝你好运,编码愉快。
5 条评论