作为一个学习计算机软件的工科男,笔者常被朋友问及该如何自学计算机和编程知识,是否需要参加线上或者线下的培训班。对此,笔者倒是觉得完全没有必要(除非你以就业为导向,想要速成为码农),网上的很多优质网站完全可以满足大多数人的自学需要,所以自己稍微整理了一些自己收藏的网页,和大家分享一下。
因为主流的计算机编程是以英语为基础的,所以很多优秀的、大牛集聚的码农社区都是英文的。但是笔者认为,既然是自学,兴趣是第一动力,所以不该让语言成为负担,因此选择出来被推荐的网站主要都是中文网站。
一.公开课网站
现今网上有各种视频教育网站,其中很大一部分便是针对编程教学的。笔者在此只推荐几个自己比较熟悉的优质公开课网站:
1.慕课网(imooc.com)
笔者个人认为,对于编程学习而言,慕课网是国内最优秀的免费公开课平台了。上学期,本来完全不会JAVA语言的笔者正是完全依靠这一网站,学会了JAVA和一些安卓开发知识,完成了一个APP的编写。
慕课网上的课程很全面,涵盖了主要的编程语言,还有数据库、移动开发和云计算等等方面的课程,而且这些课程是全中文的,学习起来毫无障碍。网站各个课程的交流板块和实战板块更是可以帮助我们对学习的知识快速上手。
2.Cousera(zh.coursera.org)
coursera的大名想必很多人都听说过,它是目前全球最大的公开课平台,由著名华裔计算机学家、笔者的偶像吴恩达(Andrew Ng)和友人创建的。
Coursera拥有全中文的页面,收录的课程来自全球最顶尖的大学,比如中国的北大、复旦,美国的斯坦福、加州理工等等,课程都是这些大学的讲师亲自录制的,和他们的学生得到的授课信息完全相同。另一方面,coursera的课程也非常全面,从基础科学、语言学习到工程科学一应齐全。可以说,只要愿意付出足够的时间和努力,通过coursera,你可以学习到几乎全球最优秀的大学中的所有课程,计算机科学的知识自然也包含在其中。
3.网易公开课(open.163.com)
网易公开课和coursera一样,视频内容非常全面,全球各所优秀大学的计算机知识公开课便是其中的一部分。更加难能可贵的是,网易公开课上的外语视频都会被添加高质量的中文字幕,而这可以让我们事半功倍地学习外国原汁原味的计算机知识的讲授。
和coursera一样,笔者建议有兴趣的朋友在网易公开课上浏览更多类别的视频(笔者最近便在重拾高中时对物理的兴趣,学习斯坦福大学的《量子力学》系列),而那些已经配上了中文字幕的TED演讲更是太棒了,空闲时看上一集TED演讲,你付出的时间绝对物有所值。
4.其他公开课平台
除了以上三个笔者常用的平台之外,如今还有极客学院(jikexueyuan.com)和腾讯课堂(ke.qq.com)等繁多的教授IT知识的平台。但是比起一些“以快速就业”为目的的“培训平台”,笔者还是更喜欢来自于大学课程的那些公开课。
二.开发者论坛
除了公开课平台之外,另一个重要的自学IT技能的渠道便是各个开发者论坛,通过这些论坛,我们可以和大牛们直接交流,可以学习到更具体的知识点,而且还能结交许多志同道合的朋友。
1.Github(github.com)
github是全球最大的开发者论坛和协作平台了,这里既有牛翻天的独立开发者,也有企业界的技术高手,他们供职的企业从google、microsoft、amazon到国内的BAT应有尽有。因为用户群体主要为程序员,github又被戏称为“全球最大同性交友网站”(然而中国的“全国最大同性交友网站”应该是bilibili了吧)。
使用Github只需要很低的英语门槛。同时,github中还支持简书用户十分熟悉的markdown语法(很著名的markdown集成编辑器atom也是github出品的)。
2.博客园(cnblogs.com)
博客园是一个开发者的博客平台,以高质量的技术类博文而闻名。从图片左上角的,博客园的口号“代码改变世界”我们便可以知道这个博客平台的态度了。
3.开源中国(oschina.net)
笔者使用开源中国并不是很多,但是它给笔者留下了蛮深的印象,一是这个论坛中中很多刚入职的新程序员,二是通过这个平台,很多城市的程序员们互相认识,结成了自己的小圈子,他们还经常会举行各种线下的聚会,实在是蛮有趣的。
相较于之前介绍的网站不同,开源中国并没有太多系统讲授IT知识的资源,但是当你在开发过程中遇到了具体的困难,来这里提问吧,会有很多程序员们帮助你解决这些具体的问题。
4.码农网(codeceo.com)
码农网被笔者记住,很大程度是因为他域名中对“码农”的翻译是“codeceo”。好吧,大概每个程序员都有出任ceo,迎娶白富美,走上人生颠覆的梦想吧。
和很多论坛一样,码农网的资源也是按照学习的编程语言划分的。比如你学习java语言,那么在这里,你就可以订阅java的栏目,然后通过RSS或者微博,你就会得到这个栏目中的文章的推送了(微博推送的是文章的链接)。
5.segmentfault(segmentfault.com)
很有趣的是,笔者记住这个网站也是因为他的名字,当时笔者正学到法语数学中的“segment”(“区间”)一节,恰好知晓了这个论坛,于是一直难以忘记。
6.stackoverflow(stackoverflow.com)
这也是一个英文的网页,但是上面大量高水平的用户和问答实在让笔者不舍得落下它。stackoverflow是一个问答型的平台,和知乎以及quora很相似(这两个也是学习it知识的一个渠道,因为上面有大量可以回答专业问题的程序员),当遇到难题时,我们可以在平台上查找答案或者自己向大牛们提问,这种方式得到的答案更有针对性,优势明显。
总结
笔者列举的只是自己较为熟悉的网站,而且剔去了很多英文的网页,留下github和stackoverflow是因为觉得实在有必要提一下。在这些网站中,公开课网站最适合入门。在学习编程的过程中,我们应该多多练习,找一些实例去完成它,在过程中发现问题,遇到困难时再去论坛提问或者查找资料,笔者通过个人经历认为,这种方式往往会是最有效的。
“自学成为程序员”实在是有点标题党了,因为笔者认为在当前时代,懂一些编程知识、数据库知识对各行各业都很重要,不应该成为程序员的专利,也希望我的分享能帮助到大家,祝大家能一直保持对编程的兴趣,可以成为优秀的开发者。
网友评论