iOS App架构相关
一)
我们可以定义一个好的架构应该具备的特点:
-
任务均衡分摊给具有清晰角色的实体
-
可测试性通常都来自与上一条(对于一个合适的架构是非常容易)
-
易用性和低成本维护
二)
传统的MVC模式。:三个实体间相互都有通信,而且是紧密耦合的。这很显然会大大降低了三者的复用性,而这正是我们不愿意看到的。
MVP的好处就是解除view与model的耦合,使得view或model有更强的复用性。
MVVM和MVP模式看起来非常像:
-
MVVM将ViewController视作View
-
在View和Model之间没有紧密的联系
VIPER:
https://blog.csdn.net/dipolar/article/details/60963660
https://www.objc.io/issues/13-architecture/viper/
https://www.jianshu.com/p/bc24f1c167a9
3,
2,iOS 架构
iOS 架构模式--解密 MVC,MVP,MVVM以及VIPER架构
MVC:http://www.runoob.com/design-pattern/mvc-pattern.html
MVVM的优点和缺点
取消使用单例组装http请求的做法。虽然它做到了统一管理http请求的作用,但是不符合那个页面的请求那个页面管理请求的原则。
(单例像类一样常驻内存,无形中增加类内存的开销。)
参考:
1,iOS 路由
苹果核 - 解耦神器 —— 统跳协议和Rewrite引擎
http://www.jianshu.com/p/3a902f274a3d
http://www.jianshu.com/p/be7da3ed4100
3,架构示例
携程移动App架构优化之旅
蘑菇街App的组件化之路
iOS应用架构谈 view层的组织和调用方案
https://casatwy.com/iosying-yong-jia-gou-tan-viewceng-de-zu-zhi-he-diao-yong-fang-an.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 重磅开源!