70 | 程序员练级攻略:零基础启蒙

您好,我是陈皓,网名左耳朵耗子。

如果您从来没有接触过程序语言,这里给大家两个方面的教程,一个偏后端,一个偏前端。对从零基础开始的人来说,最重要的是能够对编程有兴趣,而要对编程有兴趣,就要有成就感。而成就感又来自于用程序打造东西,所以,我推荐下面这份不错的入门教程。

第一份入门教程,主要是让您体会到编程是什么。

然后,您可以到 CodeAbbey 上去做一些在线编程的小练习。

第二份入门教程,主要是让您做点实际有用的东西。嗯,做个网页吧。

这两份教程都很不错,都是从零开始,带着您从环境准备开始,一点一点地从一些简单又有意思的东西入手,让您感觉一下编程世界是什么样的,相信这两个教程可以让零基础的您喜欢上编程。

编程入门

在这时,我们使用Python和JavaScript作为入门语言。Python就不用多说了,语法比较简单,有大量的库和语法糖,是零基础的人学习编程的不二之选。而JavaScript则是前端的语言,为了让您更有编程的成就感,所以,这也成了一门要学习的语言。(注意:对于计算机专业的学生来说,一般会使用Pascal做为入门的编程语言,但我觉得编程入门还是要以培养兴趣为主,所以,还是选一些能让人有成就感的语言会更好)。

入门语言Python

如果您想更为系统地学习一下Python编程,我强烈推荐您阅读下面这两本书。它们是零基础入门非常不错的图书,里面有大量的更为实用的示例和项目,可以快速给大家正反馈。

这两本书除了编程语法方面的讲述有所不同之外,其他都差不多,主要是通过书中的示例来强化您对编程的学习。第一本偏文本处理,包括处理Word、Excel和PDF,第二本中有一些Web项目和代码部署方面的内容。如果可能的话,您可以把两本书中的示例都跑一遍。如果您时间有限的话,我推荐您看第二本。

[编辑植入:极客时间上也有Python入门的视频课程。]

入门语言JavaScript

如果想入门学习JavaScript,我主要推荐以下在线教程。

操作系统入门Linux

学习编程您还需要会玩Linux,虽然Windows占据着更多的桌面市场,但是您还是要了解Linux。这里,您可以看一下,W3CSchool上的在线教程 Linux教程

编程工具Visual Studio Code

这里主要推荐时下最流行也是最好用的Visual Studio Code,这个工具潜力十足,用它开发Python、JavaScript、Java、Go、C/C++都能得心应手( 教程) 。

Web编程入门

如果玩到这里,您觉得有趣的话,可以学习一下Web方面的入门知识。 为什么是Web而不是别的其他技术呢?因为您正身处于第三次工业革命的信息化浪潮中,在这个浪潮中,Web互联网是其中最大的发明,所以,这是任何一个程序员都不能错过的

关于Web编程,有下面几个方向您要学习一下。

下面是一些学习要点:

这里,您可能会问我,入门时有三个后端语言,一个是Python,一个是Node.js,一个是PHP,您对这三门语言怎么看?老实说,Python我还看好一些,PHP次之,Node.js最后。原因是:

当然,这里只是让您感觉一下, Web前端编程的感觉,只是为了入门而已。所以,对于这些语言您也不用学得特别精通,感觉一下这几个不同的语言就可以了,然后知道相关的文档和知识在哪里,这样有助于您查阅相应的知识点

实践项目

无论您用Python,还是Node.js,还是PHP,我希望您能做一个非常简单的Blog系统,或是BBS系统,需要支持如下功能:

您需要从前端一直做到后端,也就是说,从HTML/CSS/JavaScript,到后面的PHP(Python/Node.js),再到数据库。这其中需要您查阅很多的知识。

这里有几个技术点您需要关注一下。

  1. 用户登录时的密码不应该保存为明文,应该用MD5+Salt来保存(关于这个是什么,希望您能自行Google)。
  2. 用户登录后,对于用户自己的贴子可以有“重新编辑”或 “删除”的功能,但是无权编辑或删除其它用户的贴子。
  3. 数据库的设计,您需要三张表:用户表、文章表和评论表,它们之间是怎么关联的,您需要学习一下。这里有个PHP的blog教您怎么建表,您可以 前往一读

如果您有兴趣,您可以顺着这个小项目,研究一下下面这几个事。

上面这些东西,不是什么高深的东西,但是可以让您从中学到很多。相信您只需要自己Google一下就能搞定。

小结

接下来,我总结下今天的内容。首先,我推荐了Python和JavaScript作为入门语言,以让您尽快上手,获得成就感,从而激发您想持续学习的热情。随后介绍了Linux操作系统、Visual Studio Code编程工具、Web编程入门等方面的学习资料,并给出了学习要点。最后,我给出了一个实践项目,帮助您理解和巩固今天所学的内容。

消化好了今天的内容,就准备好精力迎接后面的挑战吧。下篇文章中,我们将正式入门学习该如何编程。

下面是《程序员练级攻略》系列文章的目录。