设计模式
Léon's Blog
一只野生程序猿
展开
-
[Design Pattern]Python设计模式——设计原则
1.单一职责原则:每个类都只有一个职责,修改一个类的理由只有一个2.开放-封闭远程(OCP):开放是指可拓展性好,封闭是指一旦一个类写好了,就尽量不要修改里面的代码,通过拓展(继承,重写等)来使旧的类满足新的需求,而不是修改一个类里面的代码。3.依赖倒转原则:高层模块不应该依赖底层模块,两个都应该依赖抽象;抽象不应该依赖细节,细节应该依赖抽象。底层模块例如很多工具类,例如专门用于管转载 2017-08-11 05:29:31 · 698 阅读 · 0 评论 -
[Design Pattern]Python设计模式——模板模式
1.模版方法模式做题的列子:需求:有两个学生,要回答问题,写出自己的答案#encoding=utf-8class StudentA(): def answer1(self): print '题目一:XXXXXX' print '我的答案是:B' def answer2(self): print '题目一:XXX转载 2017-08-11 05:55:29 · 110 阅读 · 0 评论 -
[Design Pattern]Python设计模式——状体模式
需求,根据当前的时间,返回工作状态#encoding=utf-8__author__ = 'kevinlu1010@qq.com'def get_state(hour): if hour>=8 and hour: return '上午工作,精神百倍' elif hour>12 and hour: return '中午工作,困,想午休转载 2017-08-11 06:00:59 · 279 阅读 · 0 评论 -
【C】——C利用回调函数实现多态
案例: 功能:可以根据用户输入的命令完成相应的功能; 例如: 用户输入 hello 完成输出 hello的功能。 用户输入 hi 完成输出 hi 的功能。一般的写法可能会写两个函数来实现 输出 hello 和 hi 的功能,然后在根据用户输入的字符串与 hello 和 hi 比较,然后执行相应的函数。代码如下: 1 //回调函数的用处 2...转载 2019-02-12 14:43:42 · 329 阅读 · 0 评论 -
【设计模式】代理模式(Proxy)的应用场景
今天看了《大话设计模式》中代理模式一节,感觉应用那部分写的不详细,遂查了几篇代理模式应用的文章,总结一下,加深理解。文中可能有较多的错误,欢迎斧正。代理模式的应用场景:1、一个对象,比如很大的一张图像,加载前可以用一个占位的图像来替代。2、一个过程计算需要等待很长时间,并且需要再计算过程中展示结果。3、一个存在于远程的对象,通过网络载入需要较长的时间,4、验证用户对对象的...原创 2019-03-13 15:07:28 · 2768 阅读 · 0 评论