架构、框架、设计模式 区分

1、

2、从概念的广泛性而言,架构(C/S, B/S)> MVC框架 > 设计模式;

如:设计一个软件,首先可以知道是C/S 还是B/S部署;

假设是C/S,那么可以采用MVC模式,也可以不采用;

假设C/S + MVC,编码层面可以用某些设计模式,如:"单例模式",也可以不用!

3、

常见架构:C/S, B/S;

常见框架:MVC,

‌MVC衍生架构模式:包括MVVM、MVP、MVI、VIPER等衍生架构模式;

微服务框架‌,代表框架‌:Spring Boot(Java)、Express.js(Node.js)。‌‌

解释:

  • MVVM(Model-View-ViewModel) ‌。
    • 特点‌:通过双向数据绑定实现视图与逻辑解耦,ViewModel负责处理视图逻辑并与模型交互。‌‌‌‌1
    • 适用场景‌:数据驱动型应用(如WPF、Angular、Vue.js)或需要高可测试性的项目。‌‌‌‌2
  • MVP(Model-View-Presenter) ‌。
    • 特点‌:Presenter作为中间层替代控制器,完全解耦视图与模型,适合事件驱动的场景。‌‌‌‌3
    • 典型案例‌:Android应用开发和复杂UI逻辑系统。‌‌
  • MVI(Model-View-Intent) ‌。
    • 特点‌:采用单向数据流确保UI状态一致性,强调用户交互意图的明确传递。‌‌
    • 适用领域‌:响应式编程框架(如RxJava)和高状态管理需求的实时应用。‌‌
  • VIPER(View-Interactor-Presenter-Entity-Router) ‌。
    • 特点‌:模块化分层设计,强调单一职责原则,适用于iOS大型复杂项目。‌‌‌‌
相关推荐
const_qiu15 分钟前
微服务测试项目架构设计与实践
微服务·云原生·架构
奕成则成1 小时前
面试被问:MySQL 与 Doris/SelectDB 的架构区别。 大数据为什么禁止select *。
mysql·面试·架构
1104.北光c°1 小时前
深入浅出 Elasticsearch:从搜索框到精准排序的架构实战
java·开发语言·elasticsearch·缓存·架构·全文检索·es
SmartBrain1 小时前
Spring Boot的高性能技术栈的工程实践
spring boot·后端·架构
Predestination王瀞潞2 小时前
5.4.3 通信->WWW万维网内容访问标准(W3C):WWW(World Wide Web) 协议架构(分层)
前端·网络·网络协议·架构·www
掘根2 小时前
【微服务即时通讯】用户管理子服务1
微服务·云原生·架构
han_2 小时前
JavaScript设计模式(二):策略模式实现与应用
前端·javascript·设计模式
源远流长jerry3 小时前
RDMA 传输服务详解:可靠性与连接模式的深度剖析
linux·运维·网络·tcp/ip·架构
填满你的记忆4 小时前
RAG 架构在实际项目中的应用(从原理到落地)
java·ai·架构
技术小甜甜4 小时前
[AI架构] 云模型 vs 本地模型:企业AI部署的架构选择
人工智能·ai·架构·创业创新