《代码大全》笔记第二篇
第二部分:创建高质量的代码
这一部分只要分为五个部分,软件构建中的设计、可以工作的类、高质量的子程序、预防式编程、伪代码编程过程。主要是设计层面的优化建议。
软件构建中的设计是无章法的过程,可以采用很多方式,因此也是不确定的,它是一个启发式的过程,需要确定取舍和调整顺序,关键在于管理复杂度,设计的层次:1、软件系统 2、分解为子系统 3、分解为类 4、分解成子程序 5、子程序内部的设计。可以用分而治之的方法,把问题分成各小块的问题,找到解决的关键,找到小问题之间的关系,合理设计过程。
可以工作的类,例如ADT抽象数据类型,能够分离数据结构和对其使用的方式,可以隐藏实现细节、改动不会影响到整个程序、让接口能提供更多信息、更容易提高性能、让程序的正确性更显而易见、程序更具自我说明性、无须在程序内到处传递数据、可以像在现实世界中那样操作实体,而不用在底层实现上操作它。
防御式编程的核心思想为子程序应该不因传入错误数据而被破坏,哪怕是由其他子程序产生的 错误数据。这种思想是将可能出现的错误造成的影响控制在有限的范围内。具体措施为对输入进行体检、对非预期错误使用断言如对空指针、数据越界返回错误,终止程序执行。
伪代码是一种非正式的,类似于英语结构的,用于描述模块结构图的语言。可以让人便于理解的代码。不依赖于语言的,用来表示程序执行过程,而不一定能编译运行的代码。
总的来说,在写代码的时候,如何可以创建高质量的代码,关键在于在设计的时候,要清楚的了解整个构造,可以通过伪代码把整个结构先整理一遍,合理运用类与类之间的关系,使结构更加合理有序,通过防御式编程,及时阻止错误的发生,也可以通过防御式编程找到发生错误的地方,及时更改。