zoukankan      html  css  js  c++  java
  • iOS开发架构学习记录

    闲着没事看了一些iOS开发架构的视频,简单的介绍了几个常用的架构设计,现将它记录如下,以后有时间再专门写这方面的内容,大家可以看看,感兴趣的就进一步学习。

    一、架构基础

    1.架构设计的目的

    进一步解耦。

    2.耦合的方式

    1)单例-彼此知道对方的存在

    2)delegate-被委托方不知道委托方的存在,委托方知道被委托方的存在

    3)通知-双方都不知道对方的存在

    二、MVC

    C可以控制V的渲染,C可以修改M。

    V可以将用户这边采集到的数据和用户事件反馈给C做进一步的处理,V可以读取到M中的数据进而展示自己。

    三、MVP

    与MVC的比较

    MVC中-M、V、C这三个角色是互相知道的,相互引用的,V是知道M的存在的。

    MVP中-V和M是相互不存在的,不存在引用,不存在依赖,所有的耦合都在P中处理。

    四、MVVM

    存在双向绑定,在iOS中这种绑定可以使用ReactiveCocoa框架或者KVO来完成。

    五、CDD

    用处-不需要书写Delegate就能够完成一个事件的传递。

    场景-view的结构非常复杂的情况下,比如,聊天界面、直播界面。

    六、分层架构

    应用层-服务层-数据层。

    七、总结

    以上只是基础的入门概念,想要使用好架构是需要-

    1.大量的理论知识的学习与总结

    2.多个项目的实践,因为没有哪个架构设计适合所有的项目,每个项目都需要根据其业务逻辑设计好适合的架构。

  • 相关阅读:
    bzoj1607: [Usaco2008 Dec]Patting Heads 轻拍牛头
    bzoj1016: [JSOI2008]最小生成树计数
    bzoj1051: [HAOI2006]受欢迎的牛
    bzoj1003: [ZJOI2006]物流运输
    bzoj1079: [SCOI2008]着色方案
    bzoj1179: [Apio2009]Atm
    bzoj1877: [SDOI2009]晨跑
    bzoj1821: [JSOI2010]Group 部落划分 Group
    bzoj1305: [CQOI2009]dance跳舞
    bzoj1858: [Scoi2010]序列操作
  • 原文地址:https://www.cnblogs.com/cchHers/p/6731248.html
Copyright © 2011-2022 走看看