课程名称:面向对象的设计模式

认证机构:UML软件工程组织

上课时间:上午9:00~12:00;下午13:00~16:00

学习期限:12学时
课程构成:资深专家授课、互动式案例教学、实战模拟项目运作。

培训报名:

学习费用:(含教材费用 等、并免费提供午餐)
报名方式:电话报名(teacher@uml.net.cn
010-82357435 , 13121152075 UML软件工程组织)
住宿情况:根据个人要求安排住宿,费用自理

课程介绍:

   设计模式(Design Patterns),它描述了在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案。所有结构良好的面向对象软件体系架构中都包含了许多设计模式,特别是在J2EE的架构中如PetStore,Struts,Junit等,它们大量的使用了设计模式,使系统架构精巧,简洁和易于理解,同时也给我们提供了学习典范。
    与之同时设计模式被认为是的Refactoring目标。Refactoring是最近被Martin Fowler专门提出,并且写出名著《Refactoring: Improving the Design of Existing Code》。我们的课程根据该书,讲解在java中常用的Refactoring技术。
由于设计模式比较抽象,难以理解,特别是目前国内没有专门的书籍,虽然GOF的设计模式国内已有中英文版,但是该书比较晦涩,并且样例代码较少。我们的培训课程列举的大量的可运行代码,结合实例使课程生动。详细讲解了设计模式在jdk,j2ee,struts,jive,junit等opensource项目中的应用,并且讲师根据自己的项目经验介绍了一些设计模式使用原则。同时介绍了通过使用refactoring技术,改造代码,从而使用合适的设计模式。

课程指南:

培训对象

具有一定的开发经验的软件编程人员、系统分析员、软件研发队伍的管理人员

学员基础

采用面向对象技术进行设计的分析设计人员,项目管理员,体系结构师和编程人员。了解基本的Java语言规范,具备面向对象思想基础。

 

培训目标

 

1. 设计模式概述
目标:本课程完成后,您将具备以下能力
什么是设计模式
设计模式历史,描述,分类,应用,
Java语言概述(接口以及抽象类)
设计模式与Refactoring
UML概述以及Rose简单使用

2. 面向对象的设计基本原则
目标:本课程完成后,您将具备以下能力
开-闭原则(Open-Closed Principle)
里氏代换原则(Liskov Substitution Principle)
依赖倒换原则(Dependence Inversion Principle)
接口隔离原则(Interface Segregation Principle)
合成、聚合复用原则(Composite Aggregate Reuse Principle)
迪米特法则(Law of Demeter)
设计模式课程大纲第4
UML软件工程组织认证课程大纲 各种原则的关系以及在设计模式中的应用

3. 创建型模式
目标:本课程完成后,您将具备以下能力
简单工厂模式(Simple Factory)
工厂模式(Factory Method)
抽象工厂模式(Abstract Factory)
单实例模式(Singleton)
建造模式(Builder)
原型模式(Prototype)
创建型模式的讨论

4. 结构型模式
目标:本课程完成后,您将具备以下能力
适配器模式(Adapter)
桥模式(Bridge)
组合模式(Composite)
外观模式(Fa.ade)
享元模式(Flyweight)
代理模式(Proxy)
结构模式讨论

5. 行为模式
目标:本课程完成后,您将具备以下能力
责任链模式(Chain of responsibility)
命令模式(Command)
迭代器模式(Iterator)
中介者模式(Mediator)
备忘录模式(Memento)
观察着模式(Observer)
状态模式(State)
策略模式(Strategy)
模板方法(Template Method)
解析器模式(Interpreter)

6. 模式的关系以及综合应用
目标:本课程完成后,您将具备以下能力
设计模式课程大纲第5
UML软件工程组织认证课程大纲 设计模式之间的关系
设计模式在Sun PetStore中的应用
设计模式在Junit中的应用
设计模式在Struts中的应用
设计模式在Jive中的应用
设计模式在Jdom中的应用

7. Refactoring的概述
目标:本课程完成后,您将具备以下能力
Refactoring概述
Refactoring和设计模式的关系(设计模式是Refactoring的目标)
Refactoring 理由
Refactoring 原则
Refactoring 困难
Refactoring 方法
Refactoring 与软件设计
Refactoring 场合与分类

8. Composing Methods
目标:本课程完成后,您将具备以下能力
Extract Method
Inline Method / Temp
Replace Temp with Query
Introduce Explaining Variable
Split Temporary Variable
Remove Assignments to Parameters
Replace Method with Method Object
Substitute Algorithm

9. Moving Features Between Objects
目标:本课程完成后,您将具备以下能力
Move Method / Field
Extract Class
Inline Class
Hide Delegate
Remove Middle Man
Introduce Foreign Method / Local Extension

10. Organizing Data
目标:本课程完成后,您将具备以下能力
Self Encapsulate Field
Replace Data Value with Object/ Array with Object
Change Value to Reference/ Reference to Value
Duplicate Observed Data
Change Unidirectional Association to Bidirectional
Change Bidirectional Association to Unidirectional
Replace Magic Number with Symbolic Constant
Encapsulate Field/ Collection
Replace Record with Data Class/ Subclass with Fields
Replace Type Code with Class/ Subclasses/ State/Strategy

11. Making Method Calls Simpler
目标:本课程完成后,您将具备以下能力
Rename Method
Add Parameter/ Remove Parameter
Separate Query from Modifier
Parameterize Method
Replace Parameter with Explicit Methods
Preserve Whole Object
Replace Parameter with Method
Introduce Parameter Object
Remove Setting Method
Hide Method
Replace Constructor with Factory Method
Encapsulate Downcast
Replace Error Code with Exception/ Exception with Test

 课程特点

本课程使学员掌握如何使用面向对象的方法,采用设计模式设计应用程序。
本课程注重实用性,授课方式是理论与应用实例相结合,基本概念的讲解简单易懂,并结合可运行的实例进行说明,直观的讲解设计模式的原理、方法和技巧,使培训班的学员快速掌握设计模式,并使用设计模式设计出实用的应用程序。
我们通过UML图示来帮助大家学习分析设计

E-mail:

teacher@uml.net.cn

咨询电话:
010-82357435 , 13366103248

 

Copyright 2002 ®  UML 软 件 工 程 组 织