zoukankan      html  css  js  c++  java
  • iOS六大基本设计模式

     

    在iOS,系统框架为应用程序提供了最重要的基础设施,在大多数情况下,只能通过系统框架来调用底层的硬件。反过来,框架也使用了很多特别的设计模式,iOS开发应用程序前,必须要了解它的六大基本设计模式。
        (1)Model-View-Controller,即模型-视图-控制器模式,是iOS程序的主要构架,将您的代码分割为几个独立的部分。模型部分定义应用程序的数据引擎,负责维护数据的完整性;视图部分定义应用程序的用户界面,对显示在用户界面上的数据出处则没有清楚的认识;控制器部分则充当模型和控制器的桥梁,帮助实现数据和显示的更新。
        (2)Delegation,即委托模式,这个设计模式有助于一个对象的数据传输到另一个对象。委托模式可以对复杂对象进行修改而不需要子类化。与子类化不同的是,您可以照常使用复杂对象,而将对其行为进行修改的定制代码放在另一个对象中,这个对象就称为委托对象。复杂对象需要在预先定义好的时点上调用委托对象的方法,使其有机会运行定制代码。
        (3)Target-action,这个设计模式用按钮等控件把用户的交互变成代码,让程序可以执行。控件通过目标—动作模式将用户的交互通知给您的应用程序。当用户以预先定义好的方式(比如轻点一个按键)进行交互时,控件就会将消息(动作)发送给您指定的对象(目标)。接收到动作消息后,目标对象就会以恰当的方式进行响应。
        (4)Protocol,可以认为是java中的接口。在iOS中有两种protocol。一种是正式的,一种是非正式的。正式的protocol,是对objc语言的扩展。通过interface声明,可以强制实现或者可选实现。非正式的protocol是NSObject的一个category,category是objc语言的一个特性,可以让你为一个类增加方法而不需要实现子类。非正式protocol实现方法是可选的。
        (5)notification,即一个通知,是一个消息,是用于通知一到多个观察者对象程序当前有一个事件发生。这里,接收通知的一方叫观察者,observer。实际上是观察者模式。 这里,发送通知的对象,并不知道谁会收到这个通知。这样通知者和观察者之间松散耦合。
        (6)declared properties,字面意思是声明的属性。自动帮添加get、set方法。
  • 相关阅读:
    异常练习
    Comparator 排序 ArrayList 实操练习
    50道Java线程面试题
    Java ArrayList排序方法详解
    Map集合利用比较器Comparator根据Key和Value的排序
    Java Map 键值对排序 按key排序和按Value排序
    实现java随机数Random的几招
    如何在Java中获取键盘输入值
    力扣 ——3Sum python (三数之和)实现
    python中函数用法
  • 原文地址:https://www.cnblogs.com/wuwangchuxin/p/3821982.html
Copyright © 2011-2022 走看看