核心逻辑注入到NSObject 基类中。
不必修改现有的类继关系。
[self GET:@"http://qq.com/logo.png"
[self POST:@"http://api.qq.com/" data:[NSData data]];
self postNotification:@"SOME_NOTIFICATION"
[self sendMessage:@"SOME_MESSAGE" timeoutSeconds:10.0f]
[self sendISignal:@"SOME_SIGNAL"]
MVC模型
事件驱动
Controller, Model均与状态无关stateless 由三种Event
驱动: Message Request, Notification Delegate 老旧
UISignal 用来驱动界面交互或状态改变。
有极强的路由能力 UIView-> UIView -> UIViewController->UINavitionController _> IViewController
完成复杂且高效的UI信号路由。
[signal.BeeUIIMageView.LOAD_COMPLETED]
BeeIIMageView DribbbleCell UITabelVeiwCeellContentView BeeUITableViewCell UITbleView BeeUIBoardView DribbleBoard
[self sendUISignal:BeeUIIMageView.LOAD_COMPLETED]
哪里发送哪里接收
UISignal ,Message,Request, Notification 相关处理逻辑内莰
物理位置上相同的代码中,型成整体,方便维护及并行开发。
一个app界面即收 发网络请求,又处理控制器相关消息
同时又 处理控件发来的信号。
基于状态的新UIBoard
基于State, 重新定义了UIViewController UIBoard
UINavigationController 统一称为UIStack.
状态变化时该做什么事,子控件的UISignal 该怎么处理
Debugger
内调试工具。
网络请示,请示详情,成功失败,网速限制,开网断网
内存占用, 内存剩余,模拟分配,模拟内存警告。
事件处理 Notification Message 历史列表
界面状态 界面存活,数据,状态
沙盒浏览,
External 外部依赖库
ASI JSONKit JOSN解析引擎, Reahablity
Foundation
Cache JSON based File cache Memory cache
Log NSLog wrapper VAR_DUMP
Network
GET/POST
File upload
Black list
Performance
Runtime Object allocation
Callstack
Sandbox
Singleton
SystemInfo
UDID
system version jailbreak detection
Thread Block based
MVC Controller Message Actionmapping routing
Model
View
UIView Touchable UISignal
UIImageView
UIOrientation
UIPullLoader
UIRect
UIViewController UIBoard UIStatck UIStackGroup
UITableBoard UIFlowBoard