首先,在本次的阅读过程中有学到了一个专有的名词,叫做概念的一致性。正如书中所说的那样,在计算机领域绝大多数系统体现出的概念差异和不一致性远远超过了经过了几个世纪沉淀发展的古建筑群了,这通常并不是因为它由不同的设计师们开发,而是由于设计被分成了由若干人完成的若干任务。所以在系统分开发的过程中概念完整性应该是最重要的考虑因素。也就是说为了反映一系列连贯的设计思路,宁可省略一些不规则的特性和改进,也不提倡独立和无法整合的系统,哪怕它们其实包含着许多很好的设计。而对于保证一个系统的概念性的统一来说有一位杰出的精英,或者说是结构设计师的贵族专制,和一群创造性天分和构思被压制的平民编程实现人员或者是一个具有共识的小团队来负责。对于非常大型的项目,将设计方法、体系结构方面的工作与具体实现相分离是获得概念完整性的强有力方法。
将制订功能规格说明的责任从开发快速、成本低廉的产品的责任中分离出来,那么有什么样的准则和机制来约束结构师的创造性热情呢?这就是在对设计师的考验了,尽早交流和持续沟通能使结构师有较好的成本意识,使开发人员获得对设计的信心,并且不会混淆各自的责任分工,想要成功,结构师必须:1.牢记是开发人员承担创造性和发明性的实现责任,所以结构师只能建议,而不能支配;2.时刻准备着为所指定的说明建议一种实现的方法,同样准备接受其他任何能达到目标的方法; 3.对上述的建议保持低调和平静; 4.准备放弃坚持所作的改进建议。5.听取开发人员对结构上的改进的建议。然而设计师所要面临的还不仅仅如此,第二个系统是设计师们所设计的最危险的系统。他会面对不断产生的装饰和润色功能。这些功能都被搁置在一边,作为“下一个”项目的内容。第一个项目迟早会结束,而此时的结构师,对这类系统充满了十足的信心,熟练掌握了相应的知识,并且时刻准备开发第二个系统,在第二系统中这些被搁置的功能就会被提上日程,设计师会尽量的去修饰润色这些功能OS/360 是典型的第二次开发(second-system effect)的例子,是软件行业的 Stretch 系统。所以在设计师进行第二系统的开发时必须得意识到这个问题,也许就是因为你的过分追求完美,过分的修饰创造最终导致的将是画蛇添足是你的系统显得粗糙、浪费不优雅。
对于一个大型程序想要保持概念的一致性来说并非易事,要想做到这一点就必须做到贯彻执行,如果每个人都按照自己的想法进行编写那只会是一盘散沙。所以大型的设计团队也必须是一个或者相互默契的少数人来完成,保持一致性。另外,各种会议的召开对于软件开发是有着深刻的意义的,会议由设计师,经理等人召开,目的就是贯彻统一的思想集中地处理问题,防止由于每个人的想法的不同而造成系统中的冲突。只有贯彻执行廷议的标准才能开发出清晰便捷的操作系统。
通过对本章的学习也是颇有感受的虽然书中介绍的都是一些管理经验,但是对于我们的开发也是很有帮助的。就如我们在实际的开发过程中,就必须要有清晰地思路,要一步步的实现基本的功能不能过分的追求美观,切记不要画蛇添足。另外,我们在学习过程中要尽量的按照标准来要求自己。