这周读的是程序员修炼之道,虽然老师课上讲的是软件体系架构的东西,但是我一直觉得其实对于我们这些小菜鸡们,还是要从基础的东西打好。这个基础其实就是代码。真正的架构是起于代码重构的。当然,这是我的个人观点。另外,我觉得对于架构这种高大上的东西而言,与其多说一些,不如放慢脚步,多做一点,可能会更好。当然,不是多做更多的项目,而是更多的去打磨自己的作品。好了,牢骚太盛肠断,还是专注当前要做的事情。
今天大致翻阅了一下程序员修炼之道——从小工到专家。
小有收获,这一章的名字叫做重复的危害。作者提出了一个概念叫做,don't repeat yourself。首先先记一下笔记,
我们所见到的大部分重复都可以归入下列范畴,
强加的重复,开发者觉得他们无可选择,环境似乎要求重复,
无意义的重复,开发者没有意识到他们在重复信息,
无耐性的重复,开发者偷懒,他们重复,因为那样似乎更容易开发者之间的重复同一团队或不同团队的几个人重复了相同的信息。对于这个作者提出了不同的解决方案。
对于强加的重复来说,例如文档作者提出的方案是根据文档本身来生成这些测试,当客户修改他们的规范规范时,文档发生改变,测试套件也会发生改变,这样就会清晰许多。
第2个就是无耐性的重复。作者说的是每个项目都有时间压力,有人就会受到诱惑,去拷贝原有的代码并做一些改动。从而导致重要的失误。这个我觉得它的适用的范围应该是当你做一件正确的事情时所面临的抉择。因为在开始做一件事情之前,我们应该决策的是这件事情是否值得做,就像在吴军老师的书中写道,有的人在该花大力气的世界上花费了太多的功力,而忽视了真正重要的东西。算是一点小小的思考。
第3种重复是开发者之间的重复,我们平时常见的就是不同的系统。例如对一个医院来说,可能包含着各种各样不同的系统,使用不同的方案。作者提出的其中一个思路是,鼓励开发者相互进行交主动的交流。
这是我现在最感触最深的一点,在其他的章节中也有,挺有意思的,例如,在第18章调试中有提示25,don't panic。重视调试的思想,如果你目睹bug或者见到bug报告时,第一反应是那不可能,那你就完全错了,一个脑细胞都不要浪费,以但那不可能发生企图的思路上,因为很明显那不仅可能而且已经发生了。
暂时先讲到这里。