读大话设计模式Gof后的总结
来源:互联网 发布:淘宝网名龙堂 编辑:程序博客网 时间:2024/06/04 21:24
一.代码无错就是优----简单工厂模式
1.1)命名的规范性。
2)判断语句的合理写法。
3)考虑不肯能成立的条件。
2.活字印刷,面向对象
1)可维护
2)可扩展
3)可复用
4)灵活性好
3.面向对象的好处
复用和复制,业务的封装
4. 业务逻辑和界面逻辑分开
5.紧耦合和松耦合
6.简单工厂模式就是如何去实例化对象的问题
注:UML的知识点补充
空三角形+实线:继承关系
Interface+棒棒糖:接口
空三角形+虚线:接口的实现
实线箭头:关联关系
空菱形+实线:聚合关系
实菱形+实线:拥有关系
虚箭头:依赖关系
二.商场促销-----策略模式
1. 面向对象的编程并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同属性和功能的抽象集合才是类。
2. 策略模式:定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化,不会影响起用算法的客户。
需要添加一个context上下文,维护一个对strategy对象的引用。
三.拍摄UFO-----单一职责模式
就一个类而言,他应该有一个引起他变化的原因。
如果一个类承担太多的职责,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。
工厂方法克服了简单工厂违背开放--封闭原则的缺点,又保持了封装对象创建过程的优点。工厂方法模式是简单工厂模式的进一步抽象和推广。但是缺点是由于每加一个产 品,就需要加一个产品工厂的类,增加了一个额外的开发量。
九.简历复印----原型模式
原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
原型模式其实就是从一个对象在创建另外一个可定制的对象,而且不需要知道任何创建的细节。
.net在system命名空间中提供了ICloneable接口,其中就是唯一的方法Clone(),只需要实现这个接口就可以完成原型模式了。
但是必须添加如下代码:前复制
piblic Object Clone(){
return (Object)this.MemberwiseClone();
}
MemberwiseClone()方法是这样,如果字段是值类型的,则对该字段执行逐位复制,如果字段是引用类型,则复制引用但不复制引用的对象;因此,原始对象及其复本引用同一对象。意思就是MemberwiseClone()只能对浅复制,不能实现里面有类的情况。那样就要进行深复制。
调用深复制 this.work=(workExperience)work.Clone();
- 读大话设计模式Gof后的总结
- GOF 设计模式总结
- 关于Gof设计模式的精辟总结
- GoF的设计模式
- JAVA GOF设计模式 总结。
- GOF设计模式 读书总结
- 大话设计模式总结
- 大话设计模式总结
- 大话设计模式总结
- 大话设计模式的整体总结
- 一句话总结GOF的23种设计模式
- 一句话总结GOF的23种设计模式 .
- 一句话总结GOF的23种设计模式
- 一句话总结GOF的23种设计模式
- 一句话总结GOF的23种设计模式
- 一句话总结GOF的23种设计模式
- 【设计模式】读GOF设计模式想到的。
- GoF设计模式的概括
- leetcode之189. Rotate Array(C++解法)
- 【web】basic CSS(1)
- android studio中错误代码不提示问题
- ubuntu 系统 opencv3.1.0 安装
- HDU 1048 The Hardest Problem Ever(字符串处理)
- 读大话设计模式Gof后的总结
- hdu5876 Sparse Graph(最短路)
- CSV JDBC 数据库Parameter Junit
- freemarker中的list
- leetcode之104. Maximum Depth of Binary Tree(C++解法)
- [初级教程]arm-linux裸机开发之-bootstrap.bin的实现
- Longest Palindromic Substring
- 写了个高仿内涵段子,iosapp,源码。
- Ubuntu 安装myeclipse 2014GA 添加swap swap交换空间