D1 准备

来源:互联网 发布:linux 逐行读取 编辑:程序博客网 时间:2024/05/16 11:06

2017-07-04

D1 准备

从小就喜欢计算机,小时候想做游戏,后来大一些了又想做外挂,上了大学选了计算机专业,不过是个专科,后来升了本,现在毕业了想了想,还是从事程序员这条路。
今天也看了许多,想去培训补一补。看了看自己基础太差,后来在知乎看到这个问题。
你会如何重新学习编程?
亡羊补牢为时不晚,虽然毕业了,但是就从现在开始认真学习吧。这是底下一位答主的回答。
不知道怎么加引用,单独分开写一下吧。


罗文益 先生的回答
一.科普与入门/这个时候我希望能够看看:
1.《编码 (豆瓣)》,大致理解计算机硬件的构成,为以后的数电、模电、微机学习留个大致基础;
2.《计算机科学概论(第11版) (豆瓣)》,概览计算机的软硬件(主要偏软件),生动有趣,激发继续学习的兴趣;
3.《逻辑的引擎 (豆瓣)》,从逻辑的角度理解什么是“计算”以及它的发展;
4.《什么是数学 (豆瓣)》,概览数学的宏图,为之后的数学学习打下基础;
5.《C Primer Plus (豆瓣)》,c语言太合适了,非常适合理解接近计算机的编程实现,是以后理解其它编程语言以及范式的一个最初参照;
6.《Head First HTML与CSS、XHTML(中文版) (豆瓣)》,理解网页的基本原理,写几个网页玩儿玩儿;
二.进阶:理论与实践/编程、系统、数学这三大块可以进一步往下走了:
1.《深入理解计算机系统(原书第2版) (豆瓣)》,这本是神器,可以进阶阅读了;
2.《微积分之屠龙宝刀 (豆瓣)》,很好玩儿的微积分教材;
3.《高等代数简明教程(上册) (豆瓣)》大多数大学线性代数教材都写得极烂,蓝先生这本写得很好,不能错过;
4.《概率论与数理统计 (豆瓣)》陈希孺先生这本书也是极好;
5.《离散数学及其应用(原书第5版) (豆瓣)》,书很厚,很全,也讲得很清楚;
6.《算法 (豆瓣)》,这本算法讲得比较清晰,比[《算法导论》]好懂,前面讲java的部分也很值得一看;
7.看看python相关的教程,尝试用轻量级的脚本语言,写一些爬虫和数值分析程序;熟悉主要开发语言所使用的较好的工具,比如eclipse,pycharm的使用,学会使用github(哪怕只是克隆别人代码),学会整理资料,自己解决开发中的小问题;
三.再进阶这个层面一个人基本知道自己想要干什么了,偏工程还是偏研究也有了一个模糊的概念,就推荐一些不得不读的好书吧:
1.《Ruby元编程 (豆瓣)》,理解好玩儿又锋利的元编程,对脚本语言开发都有启发;
2.《疯狂Java讲义 (豆瓣)》,这本书不仅可以学学java,还可以把编程的知识整体上过一遍;
3.《代码大全(第2版) (豆瓣)》,虽是老书,但也是经典;
4.《计算理论导引 (豆瓣)》,下探到计算的本质;
5.《计算机程序的构造和解释 (豆瓣)》,可以看看这本知名的神书了,它并不像一般人说的那么简单;
6.《程序设计实践 (豆瓣)》,值得深思;
7.《程序员修炼之道 (豆瓣)》
好了,经过这三个阶段,就算是真的入门了!接下来,可以自己去找书看了,找方向专研了。
另tips:1.大多数大学老师都不会教书,大多数大学教材都是反人类的,听不下去就不要听,看不下去就不要看,计算机的经典教材很多,看国外的知名教材吧;
2.实践实践不断实践,失败是常态,胜利才是偶然的幸运!
3.不要怀疑你不适合编程,编程没有那么难,大学才开始编程、系统地学习,照样秒杀那些小初高就开始写代码的,很多时候,他们小初高的一些想法,反而会束缚他们——因为代码的经验总能培养,抽象的逻辑和深入的思考,不到年龄普通人是根本做不到的,搞的那些花拳绣腿,你好好学半年也就赶上了——哪儿都有传说,但是少有人考虑幸存者偏差。


以上横线之内的这些文字的版权属于罗文益 先生

想按照这位答主的书单进行学习。尽量做到每天来记录一些。如果真的学成了也算是给后人一下参考。