美文网首页
《iOS开发》--------常用的设计模式

《iOS开发》--------常用的设计模式

作者: 木子先生622 | 来源:发表于2019-11-21 13:44 被阅读0次

    关于iOS开发中的设计模式,当下有集中最常用的设计模式:代理模式、观察者模式、MVC模式、单例模式、策略模式、工厂模式、MVVM。
    一、代理模式

    使用地方:当一个类的某些姑娘需要由别的类来实现,但是又不确定具体是由哪个类来进行实现的。
    使用优势:解耦合
    eg:tableView的数据源delegate,通过和protocol的配合,完成委托。列表path.row的个数代理,以及自定义的delegate。

    即传入对象实现对象的功能。

    二、观察者模式

    使用地方:一般为model层对controller和view进行的通知方式。只负责发送通知消息。
    使用优势:解耦合
    eg:Notification通知中心,注册通知中心,在任何位置都可以发送消息,注册观察者的对象皆可接收;kvo,键值对改变通知的观察者,平时基本没用过。

    三、MVC模式

    使用地方: MVC模式可以称为MCV模式,M(Model)和V(View)是分隔开来的,通过Controller从而使两个建立关系。定义一个应用所有需要抽象出来的数据结构(model)以及它们之间关系,还有获取它们的途径等。
    使用优势:使应用项目层次更加清晰,职责分明,易于维护。
    eg:model-数据模型,view-视图展示,controller进行UI展示和数据交互的逻辑处理。

    四、单例模式

    使用地方:确保程序运行期某个类,只有一份实例,用于资源共享控制。
    使用优势:使用简单,延时求职,易于跨模块。
    eg:[UIApplication sharedApplication]。

    五、策略模式

    使用地方:定义算法族,封装起来,使他们之间相互替换。
    使用优势;使算法的变化独立于使用算法的用户。
    eg:排序算法,NSArray的sortedArrayUsingSelector。

    六、工厂模式

    使用地方:工厂方式创建类的实例,多与proxy模式配合,创建可替换代理类。
    使用优势:易于替换,面向抽象编程,application只与抽象工厂和易变类的共性抽象类发生调用关系。

    相关文章

      网友评论

          本文标题:《iOS开发》--------常用的设计模式

          本文链接:https://www.haomeiwen.com/subject/zmjbictx.html