Java设计模式:从基础构建到重要模式应用
1. 设计模式基础认知
理解设计模式,工具和标准至关重要,因为每个模式都是一个或多个设计原则的应用。掌握抽象、多态和继承后,就能更轻松理解模式如何降低软件设计的复杂度。软件设计目标虽重要,但目标与实际实现间存在巨大差距,而模式能弥合这一差距,实现设计目标。
2. 基于设计原则构建模式
任何模式的核心都是一系列设计原则。下面介绍一种从基础开始构建模式的简单且非常规的方法,从简单设计入手,逐步修改使设计更灵活,每一步都运用Java中的面向对象工具和之前讨论的设计原则,每次设计变更都是构建更复杂设计模式的一步。
2.1 单类设计
单类虽不构成设计模式,但也是一种设计。设计过程的一部分是为对象分配职责。常见的问题是类可能因包含多个与该类所代表的抽象无关的方法而变得臃肿,这会导致依赖问题,不符合高内聚设计原则。例如, Teacher
类包含多个与教师职责相关的方法,解决办法是将不属于该抽象的方法进行委托。
+getName()
+getSSN()
+teachClass()
+takeAttendance()
+proctorTest()
+gradePaper()
+reportGrades()
-name
Teacher
2.2 创建类间关联
将所有教师职责委托给 TeacherResponsibilities
类。为使 TeacherResponsibilities <