beeframework

BuildingSetting里面需要修改的编译参数
Direct usage of 'isa' 改成YES
Mismatched Return Type 改为YES

BeeMessage 消息,可以说是任务,有消息参数,消息输出结果,比如去某个新闻api获取最新文章通常输入参数pageIndex,perpageCounts,输出是一堆records
BeeUISingal 信号 ,比如我摸你了
BeeRoutine 是自己能处理自己消息的个体
BeeMessageExecutor 能帮别人做事的合同工
BeeMessage要send(我要买肉)
->BeeMessageQueue来更改这个消息的下一步状态(政府批准,你去买肉)
->BeeMessageQueue的runloop(排队)
->BeeMessage的runloop(我要做什么嘛)
->BeeMessage判断下一步状态变化了(我要做什么了)
->BeeMessage changeState做实质内容(我做吧)
->BeeMessage.STATE_CREATED (你有号了吗)
->BeeMessageExecutor __globalExecuters route/index (上头有任务要作嘛,有别人插队)
->BeeMessageExecutor (自己就能处理)肉自己砍
->BeeController (政府找的合同工处理)
->BeeMessage internalNotifySending (做完以后)
->BeeMessage callResponder (回调开始)
->BeeMessage forwardResponder (传递回调)
->BeeRoutine继承的类名作为回调方法,放到responder中

所以实际做的事情都再route里面
BeeHTTPRequestQueue

NSObject 每个object都可以做
NSObject(BeeActiveObject)
(BeeUISizeEstimating)
NSObject(BeeUISizeEstimating)
NSObject(BeeUISignalResponder)
NSObject(BeeUISignalResponder)
NSObject(BeeUIStyling)
NSObject(BeeUIStyling)
NSObject(BeeUIResourceLoading)
NSObject(BeeUITipsView)
NSObject(BeeDatabase)
NSObject(BeeHTTPRequestResponder)
NSObject(BeeJSON)
NSObject(BeeKeychain)
NSObject(BeeNotification)
NSObject(BeeTicker)
NSObject(BeeTimer)
NSObject(BeeTypeConversion)
NSObject(BeeTypeConversion)
NSObject(BeeUserDefaults)
NSObject(BeeUserDefaults)

Bee# + (void)load

->#Bee# [BeeAutoLoader load]

    ->#BeeHTTPMockServer# [BeeHTTPMockServer autoLoad]
    ->#BeeActiveRecord# [BeeActiveRecord autoLoad]
    ->#BeeModel# [BeeModel autoLoad]
    ->#BeeController# [BeeController autoLoad]
    ->#BeeService# [BeeService autoLoad]
    ->#BeeUITemplate# [BeeUITemplate autoLoad]
    ->#BeeUITemplate# [BeeUITemplate registerTemplateClass]->.xml/.ui/.html/.htm/.android
    ->#BeeSkeleton#  [BeeSkeleton application: didFinishLaunchingWithOptions:]
        ->#BeeSkeleton# [BeeSkeleton initWindow] 初始化 self.window
        ->#BeeSkeleton# [BeeSkeleton load]
        ->#AppDelegate# [AppDelegate load]
              ->self.window.rootViewController = [AppBoard_iPhone sharedInstance];//关键代码

              ->AppBoard_iPhone:BeeUIBoard

AppBoard_iPhone开始初始化
BeeUIBoard
->#BeeUIBoard# loadView ->#BeeUIBoardView# initWithFrame ->#BeeUIBoardView#->setFrame->sendUISignal:BeeUIBoard.LAYOUT_VIEWS
->#BeeUIBoard# viewDidLoad ->#BeeUIBoard# createViews ->#BeeUIBoard# (UIViewController类别扩展)sendUISignal: CREATE_VIEWS

                                                        ->[BeeUISignal send]->[BeeUISignal routes]
                                                            ->handleUISignal_BeeUIBoard->(ON_SIGNAL2(BeeUIBoard,signal))
                                                                ->[BeeUISignal handleUISignal]
                                                                ->#AppBoard_iPhone#ON_SIGNAL2( BeeUIBoard, signal )
                                                                -> _menu.view.backgroundColor = RGB(15, 15, 15);
                                                                    ->#MenuBoard_iPhone#ON_SIGNAL2( BeeUIBoard, signal )
                                                                -> _router.view.alpha = 0.0f;
                                                                    ->#BeeUIRouter#ON_SIGNAL2( BeeUIBoard, signal )
                                                   ->#BeeUIBoard# SUPPORT_RESOURCE_LOADING(YES)->#UIView(BeeUITemplate)# LOAD_RESOURCE
                                                                ->#BeeUITemplate# fromResource AppBoard_iPhone.xml

__templateCache

                      ->#BeeUIBoard#  loadDatas->#BeeUIBoard#  (UIViewController类别扩展)sendUISignal: LOAD_DATAS

_splash makeKeyAndVisible-> layoutSubviews->sendUISignal:BeeUIBoard.LAYOUT_VIEWS

MAX_SIGNALS中又定义 ,最多50个SINGALS
SUPPORT_RESOURCE_LOADING(YES)才会去寻找对应的xml,ui等文件

>

你可能感兴趣的:(beeframework)