python设计模式(十二):结构型模式总结
前面总结了创造型结构模式《python设计模式(四):单例模式及创建型模式总结》,及其创造性模式的常用几种模式总结:《python设计模式(一):工厂方法与抽象工厂及应用场景》、《python设计模式(二):建造者模式》、《python设计模式(三):原型模式—快速实例化类的一种途径》。
后续分量了结构型模式的几种代表模式:
《python设计模式(五):适配器模式——各种类接口的合并》
常用的结构型模式为:适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式,结构型的意思是处理类与类之间、系统与系统之间的逻辑结构,是协调类结构的重要模式设计思想。
适配器模式:将其他类或系统中的方法封装一个统一接口来调用,从而达到适配各种系统方法的目的。
桥接模式:处理抽象部分(类)与实体(实例化)之间的结构,可以使抽象部分和实例化部分单独变化不干扰。
组合模式:用于设计一个有层次等级的系统,处理各层次之间的关系。
装饰模式:用于扩展一个类或者系统的功能
外观模式:为子系统中相似功能设计一组统一的界面
享元模式:让小粒度高频使用的类被共享,减少实例化过程,减少损耗
代理模式:用于控制一个对象的访问,让客户端通过代理访问,而不是直接访问
总而言之:结构型模式设计用于处理系统之间、类之间的关系,创建型模式用于处理一个实例化过程中类的选择和处理。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
linux服务器---百科mediawiki
Mediawiki Mediawiki是一个强大的维基软件,可以实现页面编辑、图像和多媒体管理。 1、下载mediawiki软件(“https://www.mediawiki.org/wiki/News”) 2、为mediawiki-1.22创建一个自己的数据库,我们起名为“mediawiki-1.22” 3、将mediawiki安装包解压到apache的网页根目录“/var/www/html/” [root@localhosthtml]# cp/wj/mediawiki-1.22.tar/var/www/html///拷贝压缩包 [root@localhosthtml]# tar–xvfmediawiki-1.22.tar//解压 [root@localhosthtml]# mvmediawiki-1.22mediawiki-1.22//重命令,这样方便从浏览器打开 4、安装。在浏览器输入地址“127.0.0.1/mediawiki”,开始安装 1)提示“localsetting.phpnotfound”,点击“setupthewiki” 2)选择语言 3)检测环境,如果有严重问...
- 下一篇
python设计模式(十三):解释器模式
此前已经将创造型模式、结构性模式分享了,后面将分享模式设计中的另一种典型模式:行为型模式。 创造型模式是解决实体的生成问题、结构性模式是为了解决实体的组合、搭配问题 ,而行为型设计模式的出现是为了解决不同实体通信的问题。 解释器模式:开发者自定义一种“有内涵”的语言(或者叫字符串),并设定相关的解释规则,输入该字符串后可以输出公认的解释,或者执行程序可以理解的动作。这种模式被用在 SQL 解析、符号处理引擎等 解释器模式要实现两个核心角色: 终结符表达式:实现与文法中的元素相关联的解释操作,通常一个解释器模式中只有一个终结符表达式,但有多个实例,对应不同的终结符。终结符一半是文法中的运算单元,比如有一个简单的公式R=R1+R2,在里面R1和R2就是终结符,对应的解析R1和R2的解释器就是终结符表达式。 非终结符表达式:文法中的每条规则对应于一个非终结符表达式,非终结符表达式一般是文法中的运算符或者其他关键字,比如公式R=R1+R2中,+就是非终结符,解析+的解释器就是一个非终结符表达式。非终结符表达式根据逻辑的复杂程度而增加,原则上每个文法规则都对应一个非终结符表达式。 #-*-cod...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启