设计模式-创建型模式的优缺点比较
4页1、比较几种创建型模式的优缺点,仔细考察这几种模式的区别和相关性。第一类是工厂模式,工厂模式专门负责将大量有共同接口的类实例化。工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式有三种形态:简单工厂模式;工厂方法模式;抽象工厂模式是。前两者是类的创建模式,后者是对象的创建模式。简单工厂:简单工厂模式是由一个工厂类根据传入的参量决定创建出哪一种产品类的实例,涉及工厂角色(Creator)、抽象产品(Product)角色及具体产品(Concrete Product)角色等三个角色。优点:模式的核心是工厂类,该类中含有必要的判断逻辑,可以决定在什么时候创建哪一个产品类的实例,客户端可以免除直接创建产品对象的责任,而仅仅负责“消费”产品。简单工厂模式实现了对责任的分割。缺点:当产品类有复杂的多层次等级结构时,工厂类只有它自己。模式中工厂类集中了所有的产品创建逻辑,形成一个无所不知的全能类。将多个创建逻辑放在一个类中,当产品类有不同接口种类时,工厂类需要判断在什么时候创建某种产品,使得系统在将来进行功能扩展时较为困难。该模式采用静态方法作为工厂方法,而静态方法无法由子类
2、继承,因此工厂角色无法形成基于继承的等级结构。简单工厂模式只在有限的程度上符合“开-闭”原则。工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。工厂方法模式是简单工厂模式的进一步抽象和推广,其基本思想是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。优点:多态性:客户代码可以做到与特定应用无关,适用于任何实体类子类可以重写新的实现,也可以继承父类的实现。加一层间接性,增加了灵活性。良好的封装性,代码结构清晰。扩展性好,在增加产品类的情况下,只需要适当修改具体的工厂类或扩展一个工厂类,就可“拥抱变化”屏蔽产品类。产品类的实现如何变化,调用者都不需要关心,只需关心产品的接口,只要接口保持不变,系统中的上层模块就不会发生变化。典型的解耦框架。高层模块只需要知道产品的抽象类,其他的实现类都不需要关心,符合迪米特法则,符合依赖倒置原则,符合里氏替换原则。缺点:需要Creator和相应的子类作为工厂方法的载体,如果应用模型确实需要creator和子类存在,则很好;否则的话,需要增加一个类层次。抽象工厂:提供一个创建
《设计模式-创建型模式的优缺点比较》由会员大米分享,可在线阅读,更多相关《设计模式-创建型模式的优缺点比较》请在金锄头文库上搜索。
湖北省八校2012届高三第二次联考理科数学试题Word版
2019-2020学年高中物理第十二章3波长频率和波速练习含解析新人教版选修3-4.docx
监控室值班员安全生产责任制.doc
诚信演讲稿模板集锦5篇
新员工入厂后工作体会_1
什么是语言学
克莱默夫妇观后感.docx
2023年理财经理面试自我介绍
2021版证券从业资格考试《证券市场基本法律法规》强化训练试卷D卷.doc
施工组织设计41780.doc
物资管理制度.doc
重阳节文艺演出方案.docx
语文课堂教学心得体会.docx
浙江2011年1月高等教育人际关系心理学自考试题
2023年教师个人专业成长三年发展规划道德与法治.docx
云南集成电路芯片技术研发项目商业计划书
相亲相爱一家人幼儿教学故事分享.doc
个人房屋租赁合同新版范本下载.docx
冬日写景作文300字集锦五篇.doc
管理人际关系十招
2023-09-01 23页
2024-02-02 19页
2023-12-22 14页
2022-10-27 17页
2022-09-23 3页
2022-09-10 9页
2024-01-21 3页
2023-11-19 100页
2023-02-16 131页
2022-08-29 22页