程序开发中的工厂模式是什么呢?

程序开发中的工厂模式是什么呢?,第1张

你好,很高兴能解答你的问题,工厂模式是程序中的一种常见的设计模式

首先工厂模式是软件开发中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。

工厂模式主要的意图是:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。

案列1:您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。 2、Hibernate 换数据库只需换方言和驱动就可以。

优点: 1、一个调用者想创建一个对象,只要知道其名称就可以了。 2、扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。 3、屏蔽产品的具体实现,调用者只关心产品的接口。

缺点:每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中类的个数成倍增加,在一定程度上增加了系统的复杂度,同时也增加了系统具体类的依赖。这并不是什么好事。

案例2:日志记录器:记录可能记录到本地硬盘、系统事件、远程服务器等,用户可以选择记录日志到什么地方。 2、数据库访问,当用户不知道最后系统采用哪一类数据库,以及数据库可能有变化时。 3、设计一个连接服务器的框架,需要三个协议,"POP3"、"IMAP"、"HTTP",可以把这三个作为产品类,共同实现一个接口。

注意事项:作为一种创建类模式,在任何需要生成复杂对象的地方,都可以使用工厂方法模式。有一点需要注意的地方就是复杂对象适合使用工厂模式,而简单对象,特别是只需要通过 new 就可以完成创建的对象,无需使用工厂模式。如果使用工厂模式,就需要引入一个工厂类,会增加系统的复杂度。

1、开闭原则

开闭原则的意思是:对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。

2、里氏代换原则

里氏代换原则是面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。LSP 是继承复用的基石,只有当派生类可以替换掉基类,且软件单位的功能不受到影响时,基类才能真正被复用,而派生类也能够在基类的基础上增加新的行为。里氏代换原则是对开闭原则的补充。实现开闭原则的关键步骤就是抽象化,而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。

希望能帮到你,谢谢!

设计程序 工厂设计通常包括设计前期工作、初步设计和施工图设计3个阶段。

① 设计前期工作:包括可行性研究、厂址选择和设计任务书的编制。设计任务书由建设项目的主管部门组织编制,其目的是根据可行性研究报告和厂址选择报告,对建设项目的主要问题,即产品方案、建设规模、建设地区和地点、专业化协作范围、投资限额、资金来源、要求达到的技术水平和经济效益等作出决策。

② 初步设计:根据批准的设计任务书进行编制。初步设计包括:确定主要原材料、燃料、水、动力的来源和用量;规定工艺过程、物料储运(见物料搬运)、环境保护(见劳动保护)等设计的主要原则;明确设备、建筑物和公用系统的构成和要求;进行工厂布置,设计全厂和车间的平面布置图;提出生产组织、管理信息系统和生活福利设施的方案;计算主要设备材料的数量、各项技术经济指标和工程概算。批准后的初步设计是建设投资的拨款、成套设备订购和施工图设计的依据。

③ 施工图的设计:绘制各种建筑物的建筑结构详图、设备和管线的安装详图、各项室外工程的施工详图、编制全部设备材料明细表和施工预算。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10965331.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-12
下一篇 2023-05-12

发表评论

登录后才能评论

评论列表(0条)

保存