编辑
2024-05-29
👨‍🎓 无限进步
00
请注意,本文编写于 386 天前,最后修改于 225 天前,其中某些信息可能已经过时。

目录

MVC, MVP, MVVM, MVVM-C, and VIPER
18 Key Design Patterns Every Developer Should Know

MVC, MVP, MVVM, MVVM-C, and VIPER

These architecture patterns are among the most commonly used in app development, whether on iOS or Android platforms. Developers have introduced them to overcome the limitations of earlier patterns. So, how do they differ?

image.png

MVC是最古老的模式,可以追溯到大约50年前。

每个模式都有一个“视图”(V),负责显示内容和接收用户输入。

大多数模式包括一个“模型”(M)来管理业务数据。

“控制器”、“演示者”和“视图模型”是在视图和模型(在VIPER模式中为“实体”)之间起中介作用的翻译器。

18 Key Design Patterns Every Developer Should Know

模式是针对常见设计问题的可复用解决方案,能够使开发过程更加顺畅和高效。它们作为构建更好软件结构的蓝图。以下是一些最流行的模式:

image.png

  • 抽象工厂:家族创造者 - 创建相关项目的组。

  • 建造者:乐高大师 - 逐步构建对象,保持创建和外观分离。

  • 原型:克隆制造者 - 创建完全准备好的示例的副本。

  • 单例:唯一的一个 - 一个只有一个实例的特殊类。

  • 适配器:通用插头 - 连接具有不同接口的事物。

  • 桥接:功能连接器 - 将对象的工作方式与其功能联系起来。

  • 组合:树形构建器 - 形成简单和复杂部分的树状结构。

  • 装饰器:定制器 - 在不改变其核心的情况下为对象添加功能。

  • 外观:一站式商店 - 用一个简化的接口代表整个系统。

  • 享元:空间节省者 - 高效共享小的、可重用的项目。

  • 代理:替身演员 - 代表另一个对象,控制访问或动作。

  • 责任链:请求中继 - 通过对象链传递请求,直到被处理。

  • 命令:任务包装器 - 将请求转化为一个准备行动的对象。

  • 迭代器:集合探索者 - 一次访问集合中的一个元素。

  • 中介者:通信中心 - 简化不同类之间的交互。

  • 备忘录:时间胶囊 - 捕获并恢复对象的状态。

  • 观察者:新闻广播员 - 通知类关于其他对象的变化。

  • 访问者:熟练的客人 - 在不改变类的情况下为其添加新的操作。

本文作者:Eric

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!