从大一开始学编程,比起很多人,已经晚了一大步,上高中的时候也没有学习的环境,家里人也对电脑和网络这个东西视为洪水猛兽,你所站的位置,决定了你目前的眼界,虽然当初对计算机很感兴趣,但是在家里人和亲戚的一些所谓的人生建议下没有报考计算机专业,记得当时问老师和表哥,我说我想学计算机,他们说学的人太多了,不要学,然而现在还是走上了这条路,如果当初坚持我自己的意见,也许会少走一点弯路。
一路自学过来,说实话,虽然也走过弯路,但是也没有多曲折,所幸的是,现在学编程网上的资料,学习建议遍地都是,最重要的是坚持,下面是我看过的一些不错的编程相关的书籍。
《C语言程序设计:现代方法(第2版)》这本书是我高中一个学计算机的同学大一下学期给我的,感谢这位同学,这本C语言的书写的非常好,内容由浅入深,后来在网上发现很多人一开始学习C语言的时候看谭浩强的那本C语言,在网上的评价很不好,误导初学者,国内特别是一些高校的教材,写的太烂,很多作者是面向职称写书,实在是无语,如果初学者要学习C语言,可以去阅读这本书,写的很不错。
《C和指针》这本书是一个老师给我推荐的,适合C语言进阶的时候阅读,适合C语言入门之后阅读,这本书指针讲的很不错,看完这本书,以前一些比较糊涂的东西变得就很明朗,但是不能光看,要多写程序。
《C陷阱与缺陷》这本书是和《C和指针》一起买的,书很薄,主要讲了C语言的一些坑,如果准备笔试的话,这本书里面的很多东西都可以过一遍。
Python基础教程Python是我学习的第二门语言,这本书是当时一个学弟买了之后放着没看,我就拿着看了一大半,书写的中规中矩,我觉得没有什么出彩的地方,现在写Python很多时候还是Google+StackOverflow。
《Learn Python The Hard Way》这本书是我推荐给没有编程基础的人看的,写的很好,循序渐进,作者引导的很好,而且网上很多相关的资料,这本书没看过中文版的,看到是英文版,如果英语可以的同学,建议阅读英文版,国内编程书的译者的水平参差不齐,有时候翻译出来的东西牛头不对马嘴,很误导人。
《Machine Learning In Action》这本书是实验室老师当时给我推荐的一本书,书看到监督学习,把书上监督学习的代码都撸了一遍,没有讲机器学习的原理,提供的有数据给你训练,看完了对机器学习没有那种神秘的感觉,感觉机器算法的预测,需要足够大的数据去训练,算法就那一套,主要是数据难拿,搞机器学习还是得读个master或者phd,本科我觉得还是不好找到相关的工作,国内外公司都要求有数学或者统计学的背景。
《汇编语言》虽然现在已经有很少的机会写汇编了,但是汇编代码还是需要看懂,因为你不知道会在那个阴暗的角落遇到它。大二的时候看的这本书,说实话看完依然徒手写不了汇编,因为用的少,而且也没有机会去写相关的代码,但学后看到汇编代码,不会有畏惧的心理,能够耐心看完,同时对程序的执行也比以前深刻,这本书真的是国人的良心之作!
《算法导论》算法和数据结构是学习计算机很重要的一门课,这本算法导论磕磕碰碰读了一大半,课后题做了30%~40%,学算法看这本书肯定没错,书中数学证明和推倒很多,但是对数学知识的要求也没有那么高,证明最好还是看一看,网易公开课上有算导的公开课,可以配合着看,书中只有伪代码,看算法不能光看,要动手去写实现。
《计算机程序的构造与解释》《计算机程序的构造与解释》(SICP),网上评价很高,读完这本书,并不能让你马上撸出一个网站或者是App,但是这本书我觉得核心就是讲计算机的本质是抽象,如何通过抽象去控制复杂度,看这本书的时候,对一些问题的解法和思路很让人惊叹,但是这本书我觉得并不适合刚学编程的人看,即使MIT把这门课程当作大一本科生的课程,我觉得有一定编程经验了去看这本书更合适。
《深入理解计算机系统》这本书的翻译让人一看就感觉这本书很难,其实不然,这是一本导论级别的书,写的真的是超级好,书的作者好像是CMU的教授,我看的是英文版,全书1300多页通过程序员的角度,从一个程序的执行开始,从字符编码、二进制、讲到CPU、存储、链接......,作者娓娓道来,佩服作者的功力,这本书适合有一点C基础的人阅读,而且这本书越早读越好!
《C++ Primer 5th》学习C++的最好的入门书,记住不是C++ Primer Plus,plus那本我也看过,没有这本好,不要被书名误导,plus并不是加强版本,直接读C++ Primer,最好看第五版本,第五版讲了C++ 11的一些新特性,中文版翻译的也可以,英文版的用词也不难,有能力的可以去看英文版。
《Effective C++》Life is too short to learn C plus plus.如果要用C++做开发,一定要去读这本书,C++很灵活,这本书教你怎样去写更好的C++,里面一些东西,可能现在用不到,但是现在读到的时候看懂,遇见的时候有印象,写C++心理负担重,这本书能给你卸一些负担。
《计算机网络自顶向下方法》网上很多人一推荐网络的书籍很多人推荐《TCP/IP详解:卷一》,这本书写的很不错,学习网络协议的时候是很枯燥的,这本书从应用层讲到链路层,适合入门,入门之后去阅读《TCP/IP详解:卷一》更合适。
《The Linux Command Line》学习Linux命令行的时候一开始看的是《鸟哥的私房菜》,读了300多页,读不下去了,写的太啰嗦,无意中发现这本书,比鸟哥那本讲的更简练,入门好书,我这里读的是英文版,不清楚中文版的翻译怎样。
一路学来,看了不少书,以上的书是我能想起来,认为写的不错的书,目前也正在看的一些书,没有读完,暂时不写书的推荐,马上要找工作了,回头看看以前的日子,一晃而过,现在才发现浪费的时间太多,你走过的每一步,读过的每一本书,遇见的每一个人,成为了现在的你。
PS:书的评价仅代表个人观点,无利益相关。
Keep focus and learning!
网友评论