阅读笔记五
第六章:对象和数据结构
对象暴露行为,隐藏数据,便于添加新对象类型而无须修改既有行为,同时难以在既有对象中添加新行为;数据结构暴露数据。
没有明显的行为,便于向既有数据结构添加新的行为,同时难以向既有函数添加新的数据结构。
数据抽象:隐藏实现关乎抽象,暴露抽象接口,以便用户无须了解数据的实现就能操作数据本体。
得墨忒耳律:模块不应了解它所操作对象的内部情况。
数据传送对象:最为精炼的数据结构,是一个只有公共变量,没有函数的类。这种数据结构有时被称为数据传送对象。
第八章:边界
整洁的边界,边界上的代码需要清晰的分割和定义了期望的测试。
一个避免我们的代码过多地了解,第三方代码中的特定信息。依靠你能控制的东西,好过依靠你控制不了的东西,免得日后受它的控制。