设计模式学习
来源:互联网 发布:linux退出并保存 编辑:程序博客网 时间:2024/05/17 06:25
知道设计模式已经很久了,但是一直没有认真的去系统的学习,这几天才开始逐渐的学习起来。下面是我学习设计模式的一些心得。要想成为一名优秀的软件设计师或软件架构设计师,了解一些设计模式是很有必要的。
我认为学习设计模式的思路如下:
一、基本概念:理解面向对象;理解重用等概念性的东西;
1. 什么是面向对象?
2. 面向对象的三大机制?
² 封装:隐藏内部实现;
² 继承,复用现有代码;
² 多态,改写对象行为
3. 设计原则:
首先学习设计模式,要学会针对接口编程,而不是针对实现编程;优先使用对象组合而不是继承。这些原则是我们开发中常用到的,也是我们的代码可重用、可扩展的一些原则,所以一定要理解。
² 单一职责原则(SRP):一个类应该仅有一个引起它变化的原因。
² 开放封闭原则(OCP):可扩展,不可修改。(对扩展开放,对修改封闭)
² 里氏代替原则(LSP):子类必须能替换它们的基类
² 依赖倒置原则(DIP):高层模块不应该依赖于低层模块,二者都应该依赖于抽象。 抽象不应该依赖于实现细节,实现细节应该依赖于抽象。
² 接口隔离原则(ISP):不应该强迫客户程序依赖于它们不用的方法。
二、学习常用设计模式;
有些设计模式是比较相似的,所以我还是建议大家学习的时候,要先学那些常用的,等这些常用的设计模式学会了,可以应用自如了,再去学其它的会避免在一些相似的模式之间引起混乱。
我说几个常用的模式:工厂模式、单例模式、代理模式、门面模式、策略模式、状态模式、迭代模式。
我觉得这几个模式,好理解,而且常用,所以可以先从这几个模式入手。另外,有时这些模式联合使用起来效果更好,所以学习设计模式不要太书本化了。
学习设计模式时,首先要先问一下,这个模式干什么用的,在什么情况下用,然后再结合你想象的情况去学习。
三、找一些实际应用的例子,更深刻的理解这些设计模式;
我觉得JIVE论坛里用到的设计模式是一个很值得学习的实际应用,建议大家在学习的过程中参考一下。
四、扩展去学习更多的设计模式。
- 设计模式学习--设计原则
- 设计模式学习--适配器模式
- 设计模式学习--观察者模式
- 设计模式学习--命令模式
- 策略模式--设计模式学习
- 设计模式学习----Builder模式
- 设计模式学习----外观模式
- 设计模式学习----代理模式
- 设计模式学习----装饰模式
- 设计模式学习----Memento模式
- 设计模式学习----观察者模式
- 设计模式学习----策略模式
- 学习设计模式-----策略模式
- 【设计模式】策略模式学习
- 设计模式学习-工厂模式
- 设计模式学习-----策略模式
- 设计模式学习-----装饰模式
- 设计模式学习-----代理模式
- C语言学习中的错误信息
- Excel 2007 常用技巧
- 计算机网络攻击实验之-DDOS攻击
- 如果浏览器是女人……
- (转)SqlHelper 使用中需要注意的一点(带输出、返回参数的存储过程)
- 设计模式学习
- 090310周二
- 手机上的奥妙
- 和菜鸟一起学linux 第三篇:第一个能在开发板上运行的程序
- 开心的一天
- 深入浅出MFC“文档/视图”架构(1)
- Extmail/Extman配置文件参数说明
- 所有架构师都应该至少读上两遍的十篇论文收藏
- ssl加密