所有编程语言都提供抽象机制。可以认为,人们所能够解决问题的复杂性直接取决于抽象的类型和质量。
程序员必须建立起机器模型(位于“解空间”内,这是你对问题建模的地方,例如计算机)和实际待解决问题模型(位于“问题空间”内,这是问题存在的地方,例如一项业务)之间的联系。
这种思想的实质是:程序可以通过添加新类型的对象使自身适用于某个特定问题。
Booch对对象提出了一个更加简洁的描述:对象具有状态、行为和标识。这意味着每一个对象都可以拥有内部数据(它们给出了该对象的状态)和方法(它们产生行为),并且每一个对象都可以唯一的与其他对象区分开来,具体来说,就是每一个对象在内存中都有一个唯一的地址。
在程序执行期间具有不同的状态而其他方面都相似的对象会被分组到对象的类中,这就是关键字class的来源。
创建抽象数据类型(类)是面向对象程序设计的基本概念之一。
抽象数据类型的运行方式与内置类型(built-in)几乎完全一致:你可以创建某一类型的变量(按照面向对象的说法,称其对象或实例),然后操作这些变量(称其为发送消息或请求;发送消息,对象就知道要做什么)。
(目前就摘这么多吧,读了前几章,34章节略微看了一下,还有待仔细研读)