浅谈ios设计的几种常见模式

现在,很多的企业都发现ios app开发的优势,因此纷纷的投入到ios开发之中,正式因为企业需求的不断增加,以至于促使更多的人加入到ios开发之中,然而据天津app开发-文率科技小编了解所知,很多新加入到ios开发的新手站长们,在学习的过程中,经常弄不清楚ios的开发模式,这无疑降低了ios的开发质量,降低用户体验,想要摆脱这个问题,较好的办法就是了解ios常见的几种设计模式,具体如下:




一、中介者模式(Mediator):

定义: 所谓的中介模式,就是用一个中介对象封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

优点:(1)解耦:通过中介者模式,可以将复杂的网状结构变成简单的星形结构,每个对象都是独立的,不在和他关联的对象直接发生相互作用,而是通过中介者对象来和另一个对象发生相互作用。

(2)在一定的程度上降低了类的复杂程度,将一对多的形式转换为一对一。

缺点:中介模式会在某种情况下膨胀的很大,并且逻辑看非常的复杂,维护起来有一定的难度。

二、责任链模式

定义:为请求创建了一个接收者对象的链,使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之前的耦合关系。

优点:

(1)低耦合:请求和处理各自单独存在,请求者可以不用知道是谁处理的。

(2)不管是增加,还是修改新的处理都非常的容易。

缺点:每个请求都是从链头遍历到链尾,如果链比较长,会产生一定的性能问题,调试起来会很麻烦。

三、命令模式

定义: 将请求封装成对象,用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销和恢复的操作。

优点:

(1)类间解耦:调用者与接收者之间没有任何依赖关系。

(2)扩展性良好:新的命令可以很容易添加到系统中去。

缺点:使用命令模式可能会导致系统有过多的具体命令类。

四、备忘录模式

定义: 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就开奖对象恢复到原先保存的状态了。

优点:

(1)给用户提供了一种可以恢复状态的机制,可以使用户能够比较方便地回到某个历史的状态。

(2)实现了信息的封装,使得用户不需要关心状态的保存细节。

缺点: 在一些场景下比较消耗资源。

五、策略模式(Strategy):

定义: 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。

优点:

(1)算法可以自由切换。

(2)避免使用多重条件判断。

(3)扩展性良好。

缺点:策略类不但会增多,并且所有策略类都需要对外暴露。

六、访问者模式(Visitor)

定义: 访问者模式封装了一些作用于某种数据结构中的各元素操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。

优点:

(1)符合单一职责原则。

(2)优秀的扩展性。

(3)灵活性高

缺点:具体元素变更比较困难;违反了依赖倒置原则,依赖了具体类,没有依赖抽象。

天津app开发-文率科技的小编相信,只有您认真看上述的分享,一定能够给您后期ios开发带去很多的帮助,若您想了解更多的内容,欢迎来我们的官网:http://www.wenshuai.cc/

声明:文章"浅谈ios设计的几种常见模式"为文率科技APP开发公司原创文章,转载请注明出处,谢谢合作!

iOS APP开发资讯文章推荐阅读