iOS:关于APP架构设计的简单理解

App架构是软件设计的一个分支,它关心的是如何设计一个 App 的结构。我的理解结构设计分水平和垂直两个方向。垂直方向分:基础层、核心层、业务层、界面层。水平方向可以理解为对界面的的设计模式,目前比较通用的有MVC、MVP、MVVM三种,具体见下图:

iOS:关于APP架构设计的简单理解_第1张图片

1、MVC - Apple版

是 Cocoa app 中最为常⻅的架构,同时也是在 Cocoa 中讨论架构时所采用的基准线。
iOS:关于APP架构设计的简单理解_第2张图片

1、实线部分代表编译期间的引用
2、图中的虚线部分代表运行时的引用

优点:View、Model可以重复利用,可以独立使用
缺点:Controller的代码过于臃肿

2、MVC – 变种

iOS:关于APP架构设计的简单理解_第3张图片
优点:对Controller进行瘦身,将View内部的细节封装起来了,外界不知道View内部的具体实现
缺点:View依赖于Model

3、MVP

iOS:关于APP架构设计的简单理解_第4张图片

4、MVVM

iOS:关于APP架构设计的简单理解_第5张图片

你可能感兴趣的:(iOS开发,MVC,MVP,MVVM,iOS,APP架构设计)