面向对象架构设计与设计模式
Leo Zhang 查看讲师
百林哲咨询(北京)有限公司专家团队成员
曾在华为和科陆公司担任多年敏捷教练
浏览:4374次
详情 DETAILS

简介

该课程包含:面向对象架构设计思想、架构文档撰写、面向对象设计原则、常用的设计模式。

课程收益

帮助软件架构师掌握如何进行架构设计及设计思想

帮助设计人员掌握架构设计各类模式

受众人群

软件架构师、软件设计师、程序员、测试人员

课程时长

2天(12H)

分享提纲

主题授课内容
引子

从两个案例说起。指出大部分的软件都是“意大利面条”式的代码。

引申出解决之道――软件架构设计、代码持续优化和自动化测试。

第1单元

架构设计思路

1、架构设计思路

1考虑驱动因素

2设计基础架构

3输出设计结果

4跟随项目持续优化

5输出优化代码

2、架构设计的驱动因素

1软件质量模型

2质量属性间的互斥

3性能与其他属性的取舍

第2单元

模块化程序设计思想

该单元介绍代码分模块、分层的思想,以及一些基本的代码解耦方法。

1、模块化设计的目的

2、模块化程序设计方法

(1)什么是模块

(2)什么是好模块

(3)模块接口设计

3、模块杀手--循环依赖

(1)次晨综合症

(2)分层设计思想

第3单元

架构设计文档

1、架构视图

(1)开发视图――类图和包图

(2)逻辑视图

(3)4+1视图

(4)4+1视图在架构文档中的取舍

2、架构设计文档

(1)架构文档的价值

(2)架构文档的撰写原则

3、平台接口说明文档

(1)平台架构思想

(2)平台接口约束文档

第4单元

设计原则

1、面向对象设计原则

(1)单一职责原则

(2)开闭原则

(3)里氏替换原则

(4)接口隔离原则

(5)依赖倒置原则

2、组包原则

(1)重用-发布原则

(2)共同重用原则

(3)共同封闭原则

(4)无环依赖原则

(5)稳定依赖原则

(6)稳定抽象原则

第5单元

设计模式概述

1、什么是设计模式

2、使用设计模式的好处

3、被滥用的设计模式

第6单元

策略模式和表数据入口模式

2.1 依赖倒置原则

2.2 策略模式

2.2.1为什么叫策略

2.2.2策略模式的好处

2.2.3案例1

2.2.4运用时机

2.2.5案例2--变体

2.3 表数据入口模式

第7单元

模板方法模式

3.1 策略模式带来的重复代码

3.2 模板方法模式

3.3 运用时机与弊端

3.4 模板方法的滥用

第8单元

工厂模式

4.1 策略模式的局限

4.2 工厂模式

4.3 自动化测试

4.4 扩展运用

4.5 运用时机


第9单元

抽象服务模式

和适配器模式


5.1 抽象服务模式

5.2 适配器模式

5.2.1对象形式的适配器模式

5.2.2类形式的适配器模式

第10单元

组合模式

6.1 扩展功能需求导致违反开闭原则

6.2 组合模式

6.3 运用时机

6.4 组合模式的好处

第11单元

MVP模式

7.1 反例

7.2 抽取“模型”层接口

7.3 “表示器”层

7.4 案例

7.5 数据主动变化处理

7.6 MVC模型

7.7 MVP模型的优缺点

7.8 MVP模式的运用时机

第12单元

观察者模式

8.1 案例

8.2 合成复用原则

8.3 与工厂模式的矛盾

8.4 观察者模式的运用时机

8.5 用event简化观察者实现

8.6 推模型观察者模式

选讲内容:Lamda表达式

第13单元

状态模式

9.1有限状态机案例

9.2 switch/case实现

9.3 迁移表实现

9.4 状态模式实现

9.4.1 状态模式类图

9.4.2 旋转门类的实现

9.4.3 状态类的实现

9.4.4 状态模式的优缺点

9.5 状态模式的运用时机

企业服务热线:400-106-2080
电话:18519192882
投诉建议邮箱:venus@bailinzhe.com
合作邮箱:service@bailinzhe.com
总部地址:
北京市-丰台区-汽车博物馆东路6号3号楼1单元902-B73(园区)
全国客户服务中心:
天津市-南开区-桂苑路15号鑫茂集团鑫茂军民园1号楼A座802-803
公众号
百林哲咨询(北京)有限公司 京ICP备2022035414号-1