虽然现在才晚上11点,但是1月份的寒潮影响下的深圳还是特别冷,用了3月春天带来的毯子,看了会儿书,都想睡觉了,来了个电话打断了下拖延的情绪,还是大概坐起来说一说关于读的这本书,吐槽下,这个mac的触摸板摸起来真冷。
现在读书,讲究短平快了,这本书,用了四五天就翻完了,给我的印象是挺好的。适合有一定编码基础,但是编码心中还没底,对代码的表现力还没信心,读过设计模式,知道优秀设计的一点点概念,调试代码还不能马上锁定代码bug位置而且有时候花费比较长时间,看过几万行代码的我。这本书,相对于我才翻过一两章的代码大全,更加抽象,不过更加生活化了,需要更好的类比能力。就像书中前面的序言说朴素的生活道理,对于初学者来说,不就是这样吧,不屑一顾,而中级水平的需要有针对项目或者具体代码更加细致的阐述,高阶的望尽天涯路自己已经领悟了无数道理或许在出书的时候有一点帮助和共鸣。朴素,总是一种大道。奥卡姆剃刀原理,我们总愿意选择更简单的表现形式。但是其表现的形式和我们在道理下所应该表现的动作,需要有大量的实战经验往往才能体会和领悟到。还好,高手们把这本武功秘籍放出来,只要你肯练,你就是高手之一。
这本书有八章,分为介绍实效哲学,注重实效哲学的准备和思维,在具体代码中实效所发挥作用的地方,最后讲的是团队的实效。另外,请了许多有名的人来作序,如云风,提及余晟等。一般的理解就是些小tips,但是高手的身上体现的就是这些品质。
第一章,注重实效的哲学。1.我的源码让猫给吃了,作为程序员的产品,源码在任何时候都应该有备份和VCS,当其它人问你要代码的时候,不要有这个理由,经理经常告诉我们,要建立起代码的管理机制,而且注意经常备份。2.软件的熵,应该让软件的秩序性得到控制,程序员对自己代码的逻辑性要做好控制,不要“写”自己掌握不了的代码,一旦写下,就意味着你应该对其在软件中造成的混乱有底。3.石头汤与煮青蛙,我们要促进变化的发生,要当变化的catalyst,比如有一个想法或者好得点子,在写程序的圈子,自己先做个小demo出来,然后拿出来让大家来评价和改进,这是更有效率的方式,如Linux的出世。4.足够好得软件,注意这里不是完美的软件,只要软件足够好,足够满足用户的需求,那么就足够了,而不是增加更多的友好功能?另外足够好也好项目提供的经费有关,项目给出一个需求,这个足够好其实也和代码的质量相关,与之匹配才叫足够,多少钱多少质量的代码。5.你得知识资产,作为一名程序员,面对时代的浪潮,需要好好的投资好自己,毕竟技术日新月异,如何让自己的水平跟上甚至成为技术上得弄潮儿是一个投资的问题,定期投资需要长期投得项目,比如数据结构与算法,深入理解操作系统,编译原理,软件工程,tcp/ip协议等等,这些都是需要长期投资的,因为这些东西不会轻易改变;根据时代潮流,有选择性的投资一些短平快的项目,比如一些不错的语言,如最近挺火的一些大数据语言,hadoop,我的理解中是要知道java和python,动静结合,客户端编程与服务器编程等等。6.交流,作为互联网时代,经常关注时代的潮流是很有必要的,出了哪些新框架,最近有哪些新技术出来了,哪些好得产品出来了。
第二章,注重实效的途径。7.重复的危害。8.正交性。9.可撤销性10曳光弹11原型与便笺12领域语言13估算
第三章,基本工具。14纯文本的威力15shell游戏16强力编辑17源码控制18调试19文本操纵20代码生成器
第四章,注重实效的偏执。21按合约的设计22死程序不说谎23断言式编程24何时使用异常25怎样配平资源
第五章,弯曲,或折断。26解耦与得墨忒耳法则27元程序设计28时间耦合29它只是视图30黑板
第六章,当你编码时。31靠巧合编程32算法速率33重构34易于测试的代码35邪恶的向导
第七章,在项目开始时。36需求之坑37解开不可能解开的谜题38等你准备好39规范陷阱40圆圈与箭头
第八章,注重实效的项目。41注重实效的团队42无处不在的自动化43无情的测试44全都是写45极大地期望46傲慢与偏见。
-------待续