工厂方法模式与策略模式的应用场景的区别是什么啊

帕秋莉_诺蕾姬 2020-06-30 10:29:27
很多地方就是这么说的
它们的用途不一样。工厂模式是创建型模式,它的作用是创建对象。策略模式是行为型模式,作用是在许多行为中选择一种行为,关注的是行为的多样性。

但是如果对于一个实际的应用场景来说,怎么才能分得清什么创造与行为的区别啊……看网上的例子也是经常模糊不清,总感觉两者可以替代一样%……
...全文
7474 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
GreyZeng 2021-09-20
  • 打赏
  • 举报
回复

可以参考我的这个博客中的例子:
https://www.cnblogs.com/greyzeng/p/14107751.html

我是一道光_ 2021-01-24
  • 打赏
  • 举报
回复
工厂方法,解决的是对象的创建问题。 策略,是解决对象里的方法实现。 严格来说,二者没可比性,但是可以结合使用。
teamlet 2020-12-04
  • 打赏
  • 举报
回复
工厂模式是创建型模式,目的是隐藏创建过程的细节,得到一个创建的对象,关注创建的结果; 策略模式是行为型模式,关注的是对象之间的通信情况,关注如何在不同对象间传递数据和调用关系。 每个模式中都有特定的参与者和对象角色。 模式不强调在设计中使用,更多的是在系统重构和优化的时候,进行模式构建和改进。 系统、应用软件或者网站在使用或者提供服务之前,需要进行必要的资源加载、对象的创建和对象关系的组织,这个阶段是创建型模式发挥作用的主要场景。 当系统接收外部数据进行业务逻辑运算,处理数据过程,系统对象间数据传递交换的形式就是行为型模式发挥的主要场景。
闫文敬 2020-07-10
  • 打赏
  • 举报
回复
工厂模式是创建型模式,这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。【目的是创建一个对象】 策略模式是行为型模式,关注的是对象之间的通信。【目的是为了在不同的行为状态下选择不同的策略】 参考: https://www.runoob.com/design-pattern/factory-pattern.html https://www.runoob.com/design-pattern/strategy-pattern.html

3,405

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 设计模式
社区管理员
  • 设计模式
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧