快速上手设计模式
设计模式(Design Patterns) ——可复用面向对象软件的基础
设计原则:
- 封装变化。找出应用中可能需要变化的部分,把它独立出来,不要和那些不需要变化的代码混合在一起。
- 针对接口编程,而不是针对实现编程。
- 多用组合,少用继承。 使用组合建立系统具有很大弹性,不仅可以将算法族封装成类,更可以“在运行时动态地改变行动”。只要组合的行动对象符合正确的接口标准即可。
-
适配器模式——Adapter
比较常见的示例:如电源适配器。
eg:我们国家的电器使用普通的扁平两项或三项插头,而去外国的话,使用的标准就不一样了,比如德国,使用的是德国标准,是两项圆头的插头。如果去德国旅游,那么我们使用的手机充电器插头无法插到德国的插排中去,那就意味着我们无法给手机充电。
怎样解决这个问题呢?只要使用一个电源转化器就行了。
适配器分类适配器和对象适配器。
转接头是类适配器,万能充是对象适配器。
http://www.runoob.com/design-pattern/adapter-pattern.html
-
装饰器模式(Decorator Pattern)
-
装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。
-
-
外观模式——Facade模式
- 为子系统中的一组接口提供一个一致的界面, Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。引入外观角色之后,用户只需要直接与外观角色交互,用户与子系统之间的复杂关系由外观角色来实现,从而降低了系统的耦合度
设计模式之组合模式:
组合模式(Composite Pattern):组合多个对象形成树形结构以表示具有“整体—部分”关系的层次结构。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性,组合模式又可以称为“整体—部分”(Part-Whole)模式,它是一种对象结构型模式。
分透明组合模式与安全组合模式
https://www.cnblogs.com/lfxiao/p/6816026.html
命名模式:
http://www.runoob.com/design-pattern/command-pattern.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!