类关系
类 是计算功能;类关系是指两个类的完成计算任务的协作关系;
!类间关系本质只有一种意义,就是 计算使用,来协作完成 复合计算功能
-- !!关系种类源于 计算功能的逻辑关系(强弱)
类关系 强度种类的实质
仅用 类有没有属性项引用 另一个类来区别 依赖 和 关联 是不精确的 我们写定制对象,大部分会使用环境(例如浏览器提供DOM BOM)的通用功能,使用通用环境功能,就是依赖; 而类对象使用了私有的对象则是 更强烈的 对象关系
!被关系的类(独立专业)的 私有程度
依赖 > 关联 > 聚合 > 组合

类是什么
A class is a type of something. 类是某种的东西抽象型
这里的类特指 对计算对象抽象过的东西,全称可叫 某计算功能的类型
比 “是什么” 更要紧的是“为什么”
具体计算对象,是 OO构造术 的基本,类(对象模板)则在具体计算对象技术基础上,更强大的 OO程序构造术,更精细的复用计算功能
类 是什么东西的“型”
如果那东西是程序(计算功能),计算对象的“类”就是它的类型? 计算功能的抽象“型”是什么? 是 不具体的,通用的计算功能模板!
用 实物 比喻 计算功能,我以为始终不妥
1 例如吉它,吉它是实物,它不同于计算功能 2 例如 类对象的公共计算数据叫 属性Class State: Attributes 3 公共计算功能方法叫行为 Class Behavior: Operations 4 其实,类对象作为 程序结构层次中 的一个模块,它的意义是 提供计算功能(服务) 给层次中 其它 对象,从而实现计算协作。 5 类的公开数据,和方法,都是为 提供计算功能,这个形式目标的。 6 所以当我们制作类对象时,考量它的形式时,更多是它提供何计算功能,由此决定公开什么的数据属性,和功能方法
类抽象过对象
计算功能 类型 怎么 抽象 具体计算?从某具体计算功能中抽象出通用部分! 函数就是通用计算功能!
计算功能如何抽象
要知道如何抽象一个具体计算功能,得先知道 计算功能的实质 计算功能由 一个以数据和一步以上的计算操作组成
行为和状态
At its simplest, a class's description will include two pieces of information: the state information that objects of the class will contain and the behavior that they will support.
类是不会绝对独立
,哪怕程序只有一个类,它还跟用户交互关系。
如何确定类间关系
这是 程序内的对象 层次结构设计 的重要技术
两个类之间的关系,其实问几个问题就可以确定。例如它【服务】几个其他类,它又【使用】/依赖了哪些类等。
22
编程就是制作对象,修正下,编程不只是制作类(对象),而更多是制作多个协作的类。
内部的类 间接 完成程序目标
程序是为个人用户服务的,为他提供计算信息;然而,程序内的组件(类对象)很多不是 直接 完成这个最终任务的,而只是为它创造条件。例如app router等