学编程第一门语言是什么?教你怎么选
想学编程的原因有很多,你也许是想要做一个程序,又或者你只是想投身于这个行业,所以,在选择你的第一门编程语言之前,问问你自己:你想要在哪里运行程序?你想要程序来完成什么工作?
你学习编程的原因将会决定你的第一门编程语言的选择。
在这篇文章里,我会交替使用“编码”code、“编程”program、“开发”develop 等动词,“代码”code、“程序”program、“应用程序”application、“应用”app等名词。这是考虑到了你可能听过的语言用法。
了解你的设备
在你编程语言的选择上,你的程序将运行在何处是个决定性因素。
桌面应用是运行在台式机或者笔记本电脑上的传统软件程序。这样你编写的代码在同一时间内只能在一台电脑上运行。移动应用,也就是我们所熟知的“app”,运行在使用 IOS 、Android 或者其他操作系统的移动设备上。网页应用是功能像应用的网页。
按互联网的 客户-服务器(C/S)架构分,网页开发者经常被分为两类:
前端开发,就是编写运行在浏览器里面的代码。这是个面对用户的部分,或者说是程序的前脸。有时候被称为“客户端编程”,因为浏览器是网站的客户-服务器架构的客户端部分。浏览器会运行在你本地的电脑或者设备上。
后台开发,也就是大家所熟知的“服务器端开发”,编写的代码运行在你无法实际接触的服务器上。
创造什么
编程是一门广泛的学科,能应用在不同的领域。常见的应用有:
数据科学
网页开发
游戏开发,以及
不同类型的工作自动化
现在我们已经讨论了为什么你要编程,你要程序运行在哪里,让我们看一下两门对于新手来说不错的编程语言吧。
Python
Python 是对于第一次编程的人来说是最为流行的编程语言之一,而且这不是巧合。Python 是一门通用的编程语言。这意味着它能应用在广泛的编程任务上。几乎没有你不能用 Python 完成的工作。这一点使得很多新手能在实际中应用这门编程语言。另外, Python 有两个重要的设计特征,使得其对于新手更友好:清晰、类似于英语的语法,和强调代码的可读性。
从本质上讲,一门编程语言的语法就是你所输入的能让这编程语言执行的内容。这包括单词,特殊字符(例如 ;、$、% 或者 {}),空格或者以上任意的组合。Python 尽可能地使用英语,不像其他编程语言那样经常使用标点符号或者特殊的字符。所以,Python 阅读起来更自然、更像是人类语言。这一点帮助新的编程人员可以聚焦于解决问题,而能花费更少的时间纠结于语言自身的特性上。
清晰语法的同时注重于可读性。在编写代码的时候,你所创造的代码的逻辑“块”,就是一些为了相关联目标而共同工作的代码。在许多编程语言里,这些块用特殊字符所标记(或限定)。它们或许被 {} 或者其他字符所包住。块分割字符和你写代码的能力,这两者不管怎么结合起来都会降低可读性。让我们来看一个例子。
这有个被称为 fun 的简短函数。它要求输入一个数字,x 就是它的输入。如果 x 等于 0,它将会运行另一个被称为no_fun 的函数(这函数做了些很无趣的事情)。新函数不需要输入。反之,简短函数将会运行一个使用输入 x 的名为 big_fun 的函数。
这个函数用 C 语言 将会是这样写的:
或者,像是这样:
功能上两者等价,而且都能运行。{} 和 ; 告诉我们哪里是代码块的不同部分。然而,第一个对于人们来说明显更容易阅读。相比之下完成相同功能的 Python 是这样的:
在这里,只有一个选择。如果代码不是这样排列的,它将无法工作。如果你编写了可以工作的代码,你就有了可阅读的代码。同样也留意一下两者在语法上的差异。不同的是 def ,在 Python 代码中这个词是英语单词,大家都很熟悉这单词的含义(LCTT 译注:def 是 definition 的缩写,定义的意思)。在 C 语言的例子中 void 和 int 就没有那么直观。
Python 也有个优秀的生态系统。这有两层意思,第一,你有一个使用该语言的庞大、活跃的社区,当你需要帮助指导的时候,你能向他们求助。第二,它有大量早已存在的库,库是指完成特定功能的代码集合。从高级数学运算、图形到计算机视觉,甚至是你能想象到的任何事情。
Python 作为你第一门编程语言有两个缺点。第一是它有时候安装起来很复杂,特别是在运行着 Windows 的电脑上。(如果你有一台 Mac 或者 Linux 的电脑,Python 默认已经安装好了。)虽然这问题不是不能克服,而且情况总在改善,但是这对于一些人来说还是个阻碍。第二个缺点是,对于那些明确想要建设网站的人来讲,虽然有很多用 Python 写的项目(例如 Django 和Flask ),但是编写运行在浏览器上的 Python 代码却没有什么好的选择。它主要是后台或者服务器端语言。
Javascript
如果你知道你学习编程的主要原因是建设网站的话,Javascript 或许是你的最佳选择。 Javascript 是关于网页的编程语言。除了是网页的默认编程语言之外, Javascript 作为初学的语言有几点优点。
第一,无须安装任何东西。你可以打开文本编辑器(例如 Windows 上的记事本,但不是一个文字处理软件,例如 Microsoft Word)然后开始输入 Javascript 。代码将在你的浏览器中运行。最顶尖的浏览器内置了Javascript 引擎,所以你的代码将可以运行在几乎所有的电脑和很多的移动设备上。事实上,能马上在浏览器中运行代码为编程人员提供了一个非常快的反馈,这对于新手来说是很好的。你能尝试一些事情然后很快地看到结果。
开始 Javascript 是作为前端语言的,不过一个名为 Node.js 的环境能让你编写运行在浏览器或者服务器上的代码。现在 Javascript 能当作前端或者后台语言使用。这增加了它的使用人数。Javascript 也有大量能提供除核心功能外的额外功能的包,这使得它能当作一门通用语言来使用。Javascript 不只是网页开发语言,就像 Python 那样,它也有个充满生气的、活跃的生态系统。
尽管有这些优点,但是 Javascript 对于新手来说并非十全十美。Javascript 的语法并不像 Python 那样清晰,也不怎么像英语。更像是之前例子里提到的 C 语言。它并不是把可读性当作主要的设计特性。
做出选择
选 Python 或者 Javascript 作为入门语言都没有问题。关键是你打算做什么。为什么你要学习编程?你的回答很大程度上影响你的决定。如果你是想为开源做贡献,你将会找到大量用这两门语言编写的项目。另外,许多主要不是用 Javascript 写的项目仍使用 Javascript 用作前端组件。当你做决定时,别忘了你本地的社区。你有在使用其中一门语言的朋友或者同事吗?对于一个新手来说,有实时的帮助是非常重要的。
祝好运,开心编程。
相关文章
- Java环境变量怎么配置?本文将介绍Java环境变量的配置步骤
- 电脑编程软件哪个好-电脑编程软件推荐介绍
- 9月编程语言排行榜出炉 Python跻身进入前三
- scratch编程如何让角色上下移动的教程
- 360驱动大师检查系统语言方法教程
- 安装程序包的语言不受系统支持怎么卸载office?
- 火狐浏览器怎么设置日语模式?火狐浏览器更改语言的方法教程
- 谷歌浏览器怎么设置语言排序的方式?谷歌浏览器语言排序设置方法
- 谷歌浏览器怎么添加语言?谷歌浏览器怎么添加语言设置方法
- wps如何更改语言设置?wps切换语言输入法的方法
- Vscodephp模板语言标记关闭方法教程
- 搜狗输入法怎么设置快捷语言?
- smartftp怎么设置中文?smartftp语言设置教程
- plsql developer怎么设置中文?
- Win8系统当中语言包应该如何安装?
- Win10系统怎么避免按shift键转换语言?
相关推荐
-
核桃编程 V2.1.120.0 电脑版
核桃编程是一款相当优秀的零基础6-12岁孩子专用图形编程工具,核桃编程客户端功能强劲,能够帮助孩子轻松进行编程学习,核桃编程软件便捷好用,还提供了专业的教师在线辅导,支持一对一点评,可以帮助孩子提升编程兴趣,提高编程能力。
-
STC ISP(编程烧录软件) V6.91 最新中文版
STC ISP在线编程软件是一款专业的STC系列单片机烧录的软件工具。最新版可以充分发挥C51技术优势,全面地展现STC15系列单片机本身特色,如片内晶体振荡器时钟调整、将芯片配置成为具有仿真功能的单片机。操作简单,容易上手,感兴趣的朋友可以在本站下载体验。
-
Mind+(编程软件) V1.7.3 RC1.0官方版
Mind+(编程软件)是一款拥有自主知识产权的国产青少年编程软件,集成各种主流主控板及上百种开源硬件,支持人工智能(AI)与物联网(IoT)功能,既可以拖动图形化积木编程,还可以使用Python C C++等高级编程语言,是青少年编程爱好者的首选软件。
-
VisualFreeBasic(可视化编程工具) V5.8.6 官方版
VisualFreeBasic(可视化编程环境)类似VisualBasic6的FreeBasic语言集成开发环境。拥有和VB6高度相似的语法规则,具有和C语言一样强大的功能,支持面向对象。VisualFreeBasic很绿色,很纯净,不需要任何运行库,解压到任意文件夹,打开即用。
-
AutoIt(Au3) V3.3.16.1 最新版
AutoIt是专为script脚本打造的管理工具,能够帮助用户将script脚本文件转换为exe格式的可执行文件,并且还能够支持互转。AutoIt目前最新是v3版本,不仅支持PC(个人电脑)对数千台PC进行配置的“批量处理”,还很适合用于家庭自动化和编写用以完成重复性任务的脚本。
-
ucode编程软件 V3.9.1.1 中文版
ucode编程软件不仅可以创作出有趣的游戏、动画作品,还能对硬件产品进行编程,甚至可通过软硬件联合编程的方式,实现软硬件相互控制的虚拟现实效果,是一款软硬件结合的编程客户端。




