设计模式导引指北
2019-04-01 本文已影响0人
HotCatLx
1. Introduce
- 会持续更新我的设计模式的学习一些思考和代码
- 代码地址 HotCatLX Github
- HotCatLX Blog
- 具体的实际应用会不断更新
- 因为很久没使用swift,所以用swift设计相关代码,如果有代码上的问题或者好的应用案例,请随时知道
- 如果觉得不错,手动star
2. 最容易犯的错误
- 遇到需求和需要实现业务逻辑,最容易犯的错误就是不假思索就开工,直觉的以计算机能够理解的逻辑来求解问题,但是这样往往是在面向过程编程
- 面向过程编程造成的后果
- 不易维护
- 不易扩展
- 不易复用
3. 面向对象三兄弟
- 面向对象三特性 :封装,继承,多态,虽然简单的就三个词,但是所有的设计模式都是在这三种方式下去实现解耦,增加灵活性,易修改性和易于复用
- 三兄弟虽然朗朗上口,但是真的能体会到核心和信手拈来的应用,那么我想你的代码一定是不需要codereview了
- 封装的好处
- 良好的封装减少耦合,分离业务逻辑&界面逻辑
- 类内部的实现,可自由的修改
- 类具有清晰的对外接口
- 继承的优缺点
- 继承在一定程度上增加了易修改性和易扩展性
- 但是继承也是有缺点的,父类变,则子类不得不变,父类的实现细节暴露给子类
- 继承本身就是一种强耦合的关系
4. 设计模式的原则
5. 设计模式的类型
- 创建型设计模式 :侧重于对象的创建
- 结构型设计模式 :侧重于接口的设计和系统的结构
- 行为型设计模式 :侧重于类或对象的行为