首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/427330

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

我是架构师-设计模式-工厂模式--抽象工厂和工厂方法区别

上次说到简单工厂模式,然后作为简单工厂的扩展,主要是抽象工厂和工厂方法 一般的UML工具图都会提供一些现成的模板,只需要导入就可以了,我用的startUML,来看看例子: 抽象工厂模式: 工厂方法模式: 我第一接触设计模式的时候,第一反应是:天呢!这是什么啊!这些人太无聊了!这有什么用啊?有啥区别呢? 呵呵,不得不承认如果传递知识,过于只言片语确实存在过多的沟通噪音,甚至成了学习者的障碍物。 下面,我对以上两个图做些改动,至少,先区别一下抽象工厂和工厂方法。 用一个比较现实的例子: 抽象工厂: 工厂方法: 上面的例子多少有些不太合理,但为了吸引您的兴趣,就适当采取点变通方式,但道理是一样的。 解读: 对比两幅图 1. 都包含了简单工厂模式 2. 两幅图,都把工厂放在了图的左侧 抽象工厂:Abstractfactory 工厂方法:Ctreaor 3. 产品对应 抽象工厂: 每一个工厂的一个方面可以产出一个类型的产品,如非本地Fa,只买房子,不买车是没问题的。(其中注释上税5年,是刚好买车和买房都是5年,不一定要相同条件) 工厂方法: 每个工厂,可以实现多个某种类型的多个产品,如非本...

我是架构师--设计模式-工厂模式-简单工厂模式

单例模式写的太匆忙,今天写工厂模式,顺便简单的说下UML类图四种关系:依赖,关联,泛化(继承)和实现。 说说依赖与关联的区别 依赖: 关联: 注意箭头,关联更像是依赖的一种扩展。 工厂模式: 工厂模式,通常指的三个模式:简单工厂,抽象工厂,工厂方法三个模式(其实我不大喜欢他们这个命名,刚开始的时候并不能把他们当做模式的名称,尤其工厂方法)。简单工厂模式有时候不被叫做一种设计模式(你只需要知道,这并不重要),我们遵循主流原则,把简单工厂当做一种设计模式,并首先介绍。 看UML图: 这个图中,Factory类作为工厂,专门生产实现了Per接口的所有类。 Performer作为实际实现者。下面我们来个借《Java与模式》的例子,来整体理解一下简单工厂设计模式。 如果有一个农场,负责销售各种水果,你作为一个客户,只需要对农场的销售人员说:我要苹果,农场就会给你苹果。 转换成软件语言: 农场是个服务端,而他对外的接口便是销售人员,客户便是客户端。 客户端只需要知道Fruit和 工厂类,就可以得到期望的水果,比如苹果,而不需要知道其他苹果或者葡萄的实现类。 水果接口 publicinterf...

相关文章

发表评论

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

用户登录
用户注册