1、使用UITabBarController构建整个系统
a.自定义TabBar以及Controller
b.构建灯光、空调、服务、设置控制器并添加
c.在主控制器中加载tabBar所需数据,以及各子控制器的属性设置
注:UIWindows创建、根控制设置、替换系统并设置可见。
2、整个系统的文件分组
分组原则:首先按控制器进行分组,然后在每个分组中依照MVC设计模式进一步分组。
注:本地数据中心以及接收网络的数据处理中心,设计时采用单例模式,接收网络数据单独开辟线程(使用系统提供的GCD方便)。
3、子控制器详细
创建原则:xib-->View-->controller
当有多个View时,不再进一步创建控制器,创建一个导航的子View,并在controller中添加事件(也可在View中添加事件,并用代理在controller中实现),控制其他子View的显示和移除。
controller中所有的数据更改都通过数据中心,有数据相应的View,必须先更改数据中心的数据,再通过数据中心数据更新View上的数据,View上的操作同样依照此类,绝对保证数据的唯一性,既数据中心数据唯一。
4、关于模型
分析每个子View,抽离出属性,并创建模型,当抽取的属性相同时,可创建同一个模型,保证每个View都有一个对象对应。
注:tabBar所使用的数据及模型不放在数据中心,由单独的管理类管理
5、udp指令的发送
添加AsyncUdpSocket的.h和.m文件,以及相关的头文件,添加CFNetwork库
依照事件中随用随创建的原则
注:也可进行进一步的封装,封装指令的转换,计时器等固定信息
6、指令的接收
接收的方法需要在单独的线程中,在程序运行期间不断执行,处理的方法需要和接收单独,每次接收到数据都交给新的线程去处理,保证接收线程永远在岗。
关于数据处理还在思考中。。。。。。
7、数据中心的初始数据
程序在启动时,从数据库中加载相关数据,并以此来初始化View,数据库使用ios轻型libsqlite3.0.tbd