Head First Design Pattern《深入浅出设计模式》读书笔记

本文是对《深入浅出设计模式》的读书笔记,涵盖设计原则和多种设计模式,如策略模式、观察者模式、装饰者模式、工厂模式、单例模式、命令模式、适配器模式、外观模式、模板方法模式、迭代器模式、组合模式、状态模式和代理模式。通过这些模式,理解如何实现灵活、可扩展和易于维护的软件设计。
摘要由CSDN通过智能技术生成

Chapter 01 Intro to Design Patterns
第01章 设计模式入门
 

1. Design Principle Identify the aspects of your application that vary and separate them from what stays the same.  (P9)
设计原则:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。

2. Design Principle Program to an interface, not an implementation. (P11)
设计原则:针对接口编程,而不是针对实现编程。

3. Design Principle Favor composition over inheritance.   (P23)
设计原则:多用组合,少用继承。

4. The Strategy Pattern defines a family of algorithms, encapsulates each one, and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.  (P24)
策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。

 

Chapter 02 the observer pattern
第02章 观察者模式
 

1. The Observer Pattern defines a one-to-many dependency between objects so that one object change state,all of its dependents are notified and updated automatically.   (P51)
观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。

2. Design Principle Strive for loosely coupled designs between objects that interact.  (P53)
设计原则:为了交互对象之间的松耦合设计而努力。

3. Loosely coupled designs allow use to build flexible OO systems that can handle change because they minimize the interdependency between objects. (P53)
松耦合的设计之所以能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的互相依赖降到了最低。

 

Chapter 03 the decorator pattern
第03章 装饰者模式
 

1. Design Principle Classes should be open for extension, but closed for modification.  (P86)
设计原则:类应该对扩展开放,对修改关闭。

2. Be careful when choosing the areas of code that need to be extended; applying the Open-Closed Principle EVERYWHERE is wasteful, unnecessary, and can lead to complex, hard to understand code. (P87)
在选择需要被扩展的代码部分时需要小心。每个地方都采用 开放-关闭 原则是一种浪费,也没必要,还会导致代码变得复杂而且难以理解。

3. The Decorator Pattern attaches additional responsibilities to

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值