《程序员修炼之道---从小工到专家》第二章标题为:注重实效的途径.本章主要着重在与作为一位软工人,在实际的编写代码中应当用什么样的方式使得自己的代码编写可以达到最高效,编写出的代码可以更加强健.,甚至可以让这看起来很容易.
首先作者指出了重复的危害.我们擅长于从以往的编程,学习中总结出属于自己的知识库.可是在我们使用这个知识库编写新的工程的时候却并没有意识到因为出多因素,这些知识并不完全适用.因此为了避免这种无益的事情发生,我们要遵循DRY准则,及不要重复你自己(Don’t Repeat Yourself).重复的种类可以分为:强加的重复,无意地重复,无耐的重复和开发者之间的重复.
随后是正交性,正交性一词是数学几何中的词汇,在计算机技术中,它用来指多个事务中一个发生变化,而不会对其他的产生联想.保证程序中的正交性是十分有必要,因为你永远也不知道哪里会出错,或者不严谨,一个程序如果它的正交性不好的话那么一处错误变回连锁反应一般造成多出BUG.而在团队中这样的程序所导致的风险就更大了.因此一个优秀的程序员应该想尽办法让程序变得更加的正交.除此之外,正交还会让程序的测试变得更加容易.
接下来是可撤销性,因为需求的改变,往往会让我们在进行编程时遇到许多的变动.从来都不存在最终的决策.这时,优秀的程序员能够保正它们的程序将会更加快速的作出相应的转变.而初学者往往会对于内容的修改产生很大的困惑.因此在编程中要考虑好程序的可撤销性,如采用更加灵活的架构等.
然后是曳光弹原理,.即快速,直观和可重复的找到需求,最终满足系统的某一个方面的要求.在开发的过程中要随着开发出的功能加追曳光弹代码.曳光弹代码有着诸多好处,如用户可以及早的开导工作的东西,开发者构建一个他们能在其中工作的结构等.虽然曳光弹也并不是总能击中目标,但却在需要时发挥作用.
接下来是使用原型,原型便是对项目进行建模,将大体的框架构建出.应构建出原型的是:架构,已有系统中的新功能,外部数据的结构或内容,第三方工具或内容,性能问题,用户界面设计.
最后是估算,学会估算,将会加深你对你的程序所处的世界的理解,也会避免意外的发生.估算主要包含有多个步骤,先是需要明白估算来自哪里,那些内容需要估算,随后要建立系统的模型,并将模型分解为组件,给每个参数指定值.同时我们也可以估算将亩的进度.