关于阅读技术类图书的思考

很多做编程朋友都喜好读书的。但为什么要读书?读什么书?读多少书?如何读书?这都成了很大的问题。我想就这些问题谈谈我自己的看法。注意,本文读者最好是那些时间不多,希望通过读一些好书能有大收获的朋友。如果那种只要是技术书都要去读读的朋友,你的精力和时间实在太多了,本文应该不适合你。

首先,在中国,程序员只能靠读书来提高自己的编程或设计能力,这本身其实是很无耐的,因为国内软件编程方向的教育已经远远落后于编程业的发展了。名师凤毛麟角,能够听到名师的课的人非常少。运气好,进了大学或者公司,有个高手师兄或者大牛同事带一带,成长会快些。否则,要想提高,除了读书,还真是没有别的办法。由于本人曾经做过数学教师,我很清楚,数学学习如果只是给你几本参考书,然后就能高考得高分,那是不可能的(你如果例外,只能说你是天才,没有普遍意义),但数学教育已经发展了不知多少年,特别中国这样以应试教育为主导的国家,数学是不需要好书只要有好的老师就可以出好的学生,而软件编程教育的师资就实在是不容乐观。而我想强调的是,读书永远没有好老师的好教学来得有效(注意需要强调“好”字)。因为老师和学生之间是有互动的,是在一个交流的气氛中学习,而不是读书的那种完全单方向的信息传递。现在有了网络视频录像,情况得到了很大改善。不过视频同样存在只能告诉你东西,而不能最快速的解决你碰到的疑问的单向信息传递问题。比如你看了一个视频学习如何用VS2008写一个“HelloWorld”程序,可是你始终找不到视频里提到的“解决方案资源管理器”(原因是之前你或别人无意将它关闭了),或许你费了很大力,终于明白在工具栏上有按钮或者菜单中可以打开它,但是你的挫败感就很强烈了,这对于初学者来说,是很不爽的。如果有个老师,或者旁边有个同学,这种问题几秒钟就能解决。再比如你看了策略模式的教学书或视频,可是为什么一定要用策略模式呢?我不可以用简单工厂吗?不可以用装饰模式吗?你的问题一个接一个,书中没有答案,答案只能依靠自己去想。如果你坚持去想,你会有“悟”通的一天,但是更大的可能是,算了,设计模式也太难了,以后再研究吧。因此我觉得多读书当然好,不过编程能力通过读书显然不是唯一,更不是最好的办法。不过就目前的国内现状来讲,读书或许是在你没有老师的前提下最好的提高途径,尤其是初学者,系统看一些好书,学习一项技术是很有必要的,只靠实际的做项目来提高极有可能会发展不全面(培训学校我不推荐,因为骗钱居多,好教师太难找)。

然后是读什么书的问题。现在很多过来的朋友都推荐了一些好书,这些好书大多是经过时间验证,的确是难得的精品,看看一些网上书店的排名和评论就大概知道好书是哪些。不过问题又来了,是不是这些书都适合我阅读呢。答案不是,并不是只要是好书就适合读者阅读的。从技术书的分类来看,简单的分就有程序设计、软件工程、数据库、网络、图形图像等等;从技术难度上分,就有入门读物、进阶读物、高级读物等;从写作形式上分,有教材类、论文类、休闲类等;从价位上,有10-30、30-60、60-90、90-抢钱没商量价等;从书的厚度或阅读时间来讲,有三天读完、两周读完、两月读完、半年读完、阅读三遍、终生阅读等分类;当然最重要的分类,即按书的写作质量来分,应该是垃圾书、一般书、可读书、精品书、绝对必读书等。换句话说,仅仅是告诉你,编程书好书有哪些是远远不够的,往往会让读者根本没办法去区别这个好书是不是适合自己,是不是应该要现在阅读,是否有必要全部读完。当然,商家是不会做这么细致的分类的,没有什么商家会告诉你,本书是垃圾书,本书不适合低手阅读,本书太厚没时间不要读,本书很贵买前要慎重、本书只有三章可以一读等等。但作为读者,如果你没有这种多角度分类的思考去找书的话,你或许会迷失在书的海洋中,无以自拔。打个比方(尽管这个比方我已经打过很多次),GoF的《设计模式》的的确确是好书,但真的不是每个编程者需要去阅读的,至少不是一开始去阅读的,如果你是非面向对象程序员(比如嵌入式开发),你是关系数据库开发者(比如存储过程开发者),你是UI设计者(偏设计但涉及程序的那种),甚至你是面向对象编程初学者,我都建议你不要读它,真的没什么必要,只有等你真的已经达到一定的开发量了,真的有必要提高自己的编程和设计能力的时候再去阅读它。总结,一定要读经过时间检验的好书,但在这些好书中,需要分分类,需要多多思考自己是不是真的适合当前阅读。

接着,就是读多少书的问题了。好书很多,不是一本,不是十本,而是几十本上百本。有些书是全本都好,有些书是部分章节优,有些书有很强的时效性(比如现在去阅读一些asp.net 1.0入门经典方面的书可能就没有与时俱进了)。是不是有必要把相同类型好书都读了呢?我看没什么必要。比如你要学习asp.net,你真有必要把这方面的好书都阅读一遍吗?读一本足矣。毕竟这里更加需要的是练习而不是阅读了。而要读的这一本书就应该是精读,甚至反复读。其实。因此别的行业可能很需要参考书,我看编程行业基本不需要参考书,Google百度就是最好的参考。思想层面的,比如设计、分析、项目管理等方向的,可能要多读一些。但书实在是贵在精而不是多,还是以设计模式为例,入门读《Head First设计模式》,进阶再去读GoF的《设计模式》就足够了。当然,像《Java与模式》、《设计模式解析》都是好书,你有精力可以多读,没精力,那就不读也罢。

跟着,也是比较关键的,就是如何读的问题,本来这个问题不应该我来多说的,读书吗,从头读到尾就行了,但其实这里学问还真是不少的,技术书还是很有区别于一般的小说书的。如果你只是简单的理解为读书就是花点时间,从头读到尾的话,你从这本书得到的收获是很小的。首先,技术书,并不一定都是需要从头读起的。这要看是什么书,特别是应用级的书,往往是你当前最需要了解的技术,你需要多花时间去研究相关的章节。好的书通常都会在前言就告诉你,应该如何去读这本书。我记得《敏捷软件开发:原则、模式与实践》书中前言就写得很清楚什么样的读者应该更加关注什么样的章节,特别他提到如果你觉得无聊就看看书后的两个故事,哈,我还真是在一次没事做时,去认真的阅读了那两个项目开发对比的故事,感觉非常好。技术的学习不是看完书就完全理解的,更不是看完就能马上应用自如的,一项技能要经过知道、理解、掌握、应用等等过程。我强烈建议读者朋友在精读一本书时,一定要手拿着笔,最好旁边再有一本笔记本(纸)和一台笔记本(电)(哈,PC当然也没问题)。看到好的句子要摘录到笔记本上(别懒,这其实不是让你以后去看你抄的东西,而是让你在抄的时候,放慢你阅读的速度和节奏,而把大脑紧紧的集中在这个知识点上),有句话说,在一个人用笔写东西的时候,他是不可能分神去想别的事情的。这对于记忆和理解是非常有帮助的,简言之,不动笔墨不读书(非常可惜,现在我已经很少看到喜欢记读书笔记的朋友了,有些人可能一年除了签名都写不了几个字,这实在是一大悲哀)。那么旁边那台笔记本或PC要来干吗呢?不是让你来玩游戏的,更不是让你和MM聊QQ的,而是用来写代码的,代码只是看看是没用的,一定要自己打一遍,最好的效果是看懂了后,根据自己理解的来编,效果差一些的是照着书中的抄一遍,但无论哪种都比你根本不写只是看要强。我见过不少朋友买了书,可能连随书的光盘封套都没拆过,又或者光盘中的代码只是简单的运行一下。没有认真的模仿打一遍,这都是不好的学习方法。有些人认为书读完了,应该就差不多都掌握了,其实未必。不知你有没有过看一部电影,过段时间再看第二遍发现很多很有意思东西原来根本没在意。特别是英文字幕的片子,看第一遍甚至根本就不懂,看第二遍就轻车熟路这种情况不是很多吗。读书也是一样的,好书绝对有必要多读,常读。否则理解可能还是会很片面。

最后,还得提一提两个细节问题。
      关于电子版和纸版书的阅读问题。有些朋友喜欢收藏电子版的好书,一收藏就是几十上百本,可惜真正看完的可能是零头。书是用来看的,这些放在硬盘里不看的图书,不如删除更换为几部AV短片(毕竟后者看的可能性要大得多)。但为什么这些好书,却不能好好阅读呢?这也不能全怪读者,而是电子版图书天生有其不足之处。第一,它不方便携带,它一定要在电脑面前才能阅读(特指有图有代码的编程技术电子书),不像纸质书那样可以在地铁公交甚至厕所里阅读;第二、长时间伤眼睛,书不同于短的文章,在电脑面前长时间阅读很容易疲劳,特别是要学习技术的书,看纸质书会更舒服一些;第三、不方便批注,尽管有的软件可以解决这问题,不过怎么使用不如纸质书来得方便;第四、有些电子书不清晰,有可能直接是把原书扫描而得,这显然无法和纸质书相比,阅读情绪会产生很大影响。所以,只有在能完全克服这些困难的人才可以通过阅读电子书来学习。不过现在老外的有些英文原版电子书制作得非常精良,在美元跌落却依然购买不起纸质书的前提下,阅读好的电子书也是不错的选择。

关于图书馆借书还是自己买书看的问题。有句俗语叫“书非借不能读也”。说的是因为自己的书,会有一种反正已经拥有,有空再读的想法,造成反而很长时间都不去阅读。而借的书因为有还期,所以抓紧读的机会还更大一些。加之图书馆借书可以省很多买书的钱,所以去图书馆借书也是不错的选择。不过图书馆的书很难跟得上时代,很多都太老了,有些新书图书馆虽然引进了,但因为抢手也很难借得到,特别好书,基本都要碰运气才行,加之有些书一个月外加一个月续借的时间很难读完。所以借图书馆的书是好办法,但有些书借不到时,还是要考虑购买。但盲目的购买图书显然不是好办法。说到买书,不妨几个同事相约买书,这样可以平摊的购书的成本,另外网络购书优惠不少,也是不错的选择。

总之,在国内的大环境下,读书还是编程工作者提升技术能力的最好办法。那么上面所谈到的问题,也就显得非常的必要。希望本文可以给你的技术书阅读有所帮助,我的看法也可能有失偏颇,大家一起讨论。但不管你是否同意,留句话,那尽管我花这么几个小时打字的劳动也甚感欣慰了。

时间: 2024-10-29 19:08:49

关于阅读技术类图书的思考的相关文章

【白痴弟弟和你加强应用层】阅读 Develop API Guides 思考(一个)

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 动态检測设备属性 关于targetSdkVersion的含义 关于onSaveInstanceState的高级知识 关于startActivity和Intent 动态检測设备属性 我们能够使用以下的代码动态检測当前设备是否具备某一个特性,如是否有方向传感器 PackageManager pm = getPackageManager(); if(!pm.hasSystemFeature(PackageMan

非技术类图书

http://pan.baidu.com/share/home?uk=2017353576&third=4#category/type=0 http://pan.baidu.com/share/home?uk=2451950861&third=0#category/type=0 http://pan.baidu.com/share/home?uk=976375006&third=1#category/type=0

阅读,享受,思考——一个爱书人写给大家的文章

我从初中开始有个不知是好还是坏的习惯,就是非常爱去逛校门外的书店,而且特别爱买课外练习册,什么黄冈密卷,龙门题库,X年真题X年高考,真是买了好多好多,结果当然是绝大部分都是买过之后大部分都没有做过.在高考后的那个暑假整理以前的书时候,看到那么多空白着的练习册,真是心生愧疚啊.可人啊就是秉性难改啊.到了大学,当然不会再买练习册了,我如愿学了我最喜欢的计算机,所以校门外的那家书店我四年里都不知道逛了多少次,买了多少本书,特别是上了大学自己的经济上可以管理每个月的生活费了,而后来知道了当当网更是让我可

《如何阅读一本书》

学会一种新知识不如掌握一种获取知识的能力,<如何阅读一本书>就是教会你如何通过书与智者交谈. <如何阅读一本书>-精读 (对应原书页码) Day 1(P7-P51) NO.1 阅读是一种能力(p7-p10)NO.2 阅读是一门艺术(p10-p17)NO.3 阅读的四个境界(p18-p21)NO.4 基础阅读与检视阅读(p22-p35)NO.5 速读的技巧(p36-p41)NO.6 读者是怎样炼成的?(p42-p51)NO.7 练习与预习 Day 2 (P55-P163) NO.8

阅读与感悟-如何高效学习

第一部分-整体性学习策略 整体性学习主要基于三个观点: ①结构 ②模型 ③高速公路 ①结构: 结构就是与所掌握的知识相关的方方面面.例如对于Java程序员来说,掌握Java语言意味着需要掌握与之相关的基本语法(变量.类.循环.判断...).IO流.swing.继承和多态.设计模式.多线程.网络编程... 而工作经验也可以将其理解为结构,例如在某一标准版软件上做二次开发,随着开发次数的增多,软件开发人员会对标准版代码包结构.数据库设计.具体代码越来越熟悉,当有问题出现时通过分析就能大概知道是如何产

如何提升你的阅读能力?

导读: 今天我想给大家分享下我自己的阅读经验,这些经验甚至是我花钱学习,加上自己实践总结而来的,请大家有耐心的.一字一句的读完,我相信会对你今后的人生有很大的帮助. 我在上篇文章「我的 2016」年终总结时提到:我工作至今 5 年多,唯一没放弃的是坚持阅读.足以看出阅读这件事对我影响之深,我一直认为,阅读是唯一短期内可能没什么太大帮助,但是长期积累下来一定会对你有巨大影响的一件事. 这里我先阐述一个前提,本文所提及的阅读,并不是指你刷刷微博.看看各大门户网站的新闻性阅读,也不是指你读小说.诗歌等

聊聊阅读:从路飞和鸣人哪个厉害说起

无意中看到了黄国珍在TEDxTaiPei上的一个演讲,“掌握阅读技巧是了解这个世界秘密的关键(Redefining the importance of literacy)”. 里面说了一个很有意思的小故事.话说一次吃饭的时候,隔壁桌两个国中生讨论,海贼王里的路飞和火影里的鸣人究竟谁更厉害? 争论的过程是这样的:“我说路飞厉害!鸣人厉害!路飞厉害!鸣人厉害……”. 这样复读机式的争论持续了10分钟,然后家里的大人出马了:“这个有什么好争的,没有意义.你们声音太大了,安静点老实吃饭!” 在整个演讲里

人文思考与科研探索之管锥篇【转】

作者系华中科技大学智能与分布计算(IDC) 实验室优秀硕士生代表李成洲硕士,他给实验室全体师生所做的一场报告,真诚的睿智语言和深思熟虑的思考方式给我们留下了深刻的印象,同时在很多方方面面都 值得我们学习和仿效.该文是李成洲于报告之后的整理,相信无论是对踏足于科研之路的学生群体,还是奋斗于工作岗位的白领阶层都会有启发的意义和引起我们思 考的魔力.Happy博客团强烈推荐,供大家一阅! ——推荐者序 人文思考与科研探索之管锥篇 李成洲 2011年11月10日 晚,我有幸给实验室做了一场题为<我的研究

关于大数据的思考

关于大数据的思考 <大数据思维与决策>读后感 “21世纪的竞争是数据的竞争,谁掌握数据,谁就掌握未来.”——马云 不难理解大数据在我们生活的重要性.随着科技发展,网络无处不在,存储信息的本质是数字0和1(至少目前的计算机是如此),因而可以说数据无处不在. 在<大数据思维与决策>中,作者采用大量例子说明近20年来大数据对传统行业.传统思维的冲击,从医学到教育领域到金融行业再到互联网,大数据思维的冲击是史无前例的. 一.回归方程带来的冲击 从前人们的决策几乎全靠人为经验判断,作者在这个