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

原创文章,欢迎转载。转载请注明:关东升的博客 php

 

通知(Notification)机制是基于观察者(Observer)模式也叫发布/订阅(Publish/Subscribe)模式,是 MVC 模型-视图-控制器)模式的重要组成部分。  微信

问题提出post

天气一直是英国人喜欢讨论的话题,而最近几年天气的变化也成为中国人很是关注的话题。我会根据天气预报决定是坐地铁仍是开车上班,个人女儿也会根据天气预报决定明天穿哪件衣服。因而我在移动公司为个人手机定制了天气预报短信通知服务,它的工做模型如图所示。网站

 

      

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

在软件系统中,一个对象状态改变也会连带影响其余不少对象的状态发生改变。可以实现这一需求的设计方案有不少,但可以作到复用性强且对象之间匿名通讯的,观察者模式是其中最为适合的一个。 .net

解决方案设计

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

 

欢迎关注关东升新浪微博@tony_ 关东升。
关注智捷课堂微信公共平台,了解最新技术文章、图书、教程信息
  
 
更多精品iOSCocos、移动设计课程请关注智捷课堂官方网站:http://www.zhijieketang.com
智捷课堂论坛网站:http://51work6.com/forum.php对象

相关文章
相关标签/搜索