阅读背景:

《从零开始学Swift》学习笔记(Day 66)——Cocoa Touch设计模式及应用之通知机制

来源:互联网 

原创文章,欢迎转述。转述请标明:关东升的博客

 

通知(Notification)机制是基于视察者(Observer)模式也叫宣布/定阅(Publish/Subscribe)模式,是 MVC 模型-视图-掌握器)模式的主要组成部份。

 

问题提出

气象一直是英国人爱好讨论的话题,而最近几年气象的变更一样成为我国人非常关注的话题。我会依据气象预报决议是坐地铁还是开车上班,我的女儿也会依据气象预报决议明天穿哪件衣服。因而我在移动公司为我的手机定制了气象预报短信通知服务,它的工作模型如图所示。

 

 

 

 

每气象候局将气象预报信息投送给移动运营商,移动运营商的短信中心负责把气象预报发送给定制过这项服务的手机。

在软件体系中,一个对象状况转变也会连带影响其他很多对象的状况产生转变。能够实现这一需求的设计计划有很多,但能够做到复用性强且对象之间匿名通讯的,视察者模式是其中最为合适的一个。

 

解决计划

通知机制可以实现“一对多”的对象之间的通讯。如图所示,在通知机制中对某个通知感兴致的所有对象都可以成为吸收者。首先,这些对象须要向通知中心(NSNotificationCenter)发出addObserver资讯进行注册通知,在投送对象通过postNotificationName资讯投送通知给通知中心,通知中心就会把通知广播给注册过的吸收者。所有的吸收者都不知道通知是谁投送的,更不关怀它的细节。投送对象与吸收者是一对多的关系。吸收者如果对通知不再关注,会给通知中心发出removeObserver资讯注销通知,以后不再吸收通知。

 

欢迎关注关东升新浪微博@tony_关东升。
关注智捷课堂微信公共平台,懂得最新技巧文章、图书、教程信息
 

更多精品iOSCocos、移动设计课程请关注智捷课堂官方网站:https://www.zhijieketang.com
智捷课堂论坛网站:https://51work6.com/forum.php

 

分享到: