EventBus-iOS
- 授权协议: 未知
- 开发语言: Objective-C
- 操作系统: iOS
- 软件首页: https://github.com/github-xiaogang/EventBus-iOS
软件介绍
EventBus for iOS non-ARC
有两种事件: 1. SyncEvent 类似于使用NotificationCenter发出的通知,不会存储在EventBus上, 事件发生时会直接调用同步事件订阅者(id< EventSyncSubscriber >)。 2. AsyncEvent 异步事件,具有一定的生命周期(event.life),会存储在EventBus上(EventBus具有一定的容量) 异步事件需要异步订阅者(id< EventAsyncSubscriber >)主动去读取事件。
使用:
订阅者:
标记自己实现< EventAsyncSubscriber > 或 < EventSyncSubscriber >接口, 表明自己为订阅者;
在适当时刻使用宏EVENT_SUBSCRIBE(self,eventName)订阅eventName事件,一般可以在init 或 controller的 viewDidLoad方法中;
事件发生时会回调< EventSubscriber >接口中的方法- (void)eventOccurred: (NSString *)eventName event:(Event *)event, 对于异步订阅者,需要使用EVENT_CHECK(self,eventName)从EventBus中读取事件,如果有事件,eventOccurred方法会立刻得到调用。
在适当时刻使用宏EVENT_UNSUBSCRIBE(self,eventName)解订eventName事件,一般可以在dealloc中.
发布者:
标记自己实现< EventAsyncPublisher > 或 < EventSyncPublisher >接口,表明自己为发布者;
在事件发生时使用宏EVENT_PUBLISH(self,eventName)发布eventName事件,或使用EVENT_PUBLISH_WITHDATA(self,eventName,eventData) 在发布事件同时传递eventData数据.
另外: 代码中使用了 MAZeroingWeakRef 来实现弱引用, 地址: https://github.com/mikeash/MAZeroingWeakRef
谷歌时代的柏拉图
[美] 丽贝卡·戈尔茨坦 / 李鹏程 / 中信出版集团·新思文化 / 2017-12-10 / 69.00元
我愿意用我所有的科技去换取和苏格拉底相处的一个下午。 ——史蒂夫•乔布斯 谷歌时代,科技昌明,众声喧哗,哲学提出的许多问题,科学似乎都已经给出了答案。若是如此,为什么我们今天还需要哲学?这个由古希腊城邦时代的哲人苏格拉底和柏拉图开创的学科,真的过时了吗? 已经2400岁 的柏拉图对此有话要说。哲学家兼小说家、美国国家人文奖章获得者戈尔茨坦史海钩沉,从经典著作中复活了柏拉图,让他来......一起来看看 《谷歌时代的柏拉图》 这本书的介绍吧!
