读书人

Android:从软件工程师到架构师之路Ⅴ_

发布时间: 2013-10-16 11:29:46 作者: rapoo

Android:从程序员到架构师之路Ⅴ_高焕堂

Part-4: 亲自<敏捷+架构>、并迭代出代码


一 情境范例:”手机访问TV/STB”

l 愿景:多屏互动、幸福家庭的实践

l 亮点:许多智能设备大量进入家庭,在家里的Android TV建立一朵私密云,来整合窗外多个云平台和手机移动终端,变得流行起来。

l 情境:手机远距访问TV,透过TV打开家中的壁灯开关

l 架构:基于<手机+TV>的大小机相联、大小屏幕互动的新架构

l 设计:设计TV里的框架<E&I>、撰写插件<T>

l 技术:

在外的家庭成员透过手机浏览器(Browser)上网访问家庭云,您可以在家庭云里,安装一个i-Jetty网页容器(Web Container)

此时,I-Jetty里的HttpServlet就是另一个<E>,而它的doGet()等函数就是<I>

您写的servlet代码就是I-Jetty的<T>,它接受手机的访问


二 实际开发:依循敏捷、落实为代码

<架构设计>阶段的敏捷迭代

l Step-0. 准备测试计划

订定此阶段的测试方案(Test Case)

以Android手机Browser为测试方案的执行软件

l Step-1. 设计敏捷过程的起点架构:Simple Solution

通信协议:手机与TV采HTTP通信

软件接口:TV端的EIT造形与手机端Browser对接

设计:以UML表达EIT造形

代码:赚写I-Jetty的Servlet来实践EIT造形

l Step-2. 启动TDD机制、进行迭代

从手机来实机检测TV里的EIT造形的接口代码

依循TDD的反馈,迭代Step-1和Step-2的活动

<代码开发>阶段的敏捷迭代

l Step-3. 准备测试计划

订定此阶段的测试方案:基于用户需求(Requirements)

以Android手机Browser为测试方案的执行软件

l Step-4. 以上阶段Step-2产出的EIT造形为起点架构

l Step-5. 依循测试方案,展开细节设计和代码开发

撰写Android App代码:基于Android应用框架

I-Jetty的<T>调用Android的App

App透过JNI调用Android的Zigbee驱动代码

Zigbee驱动透过Dongle发信号给壁灯开关

l Step-6. 启动TDD机制、进行迭代

从手机来实机检测TV里的有关代码

依循TDD的反馈,迭代Step-5和Step-6的活动,直到完成


三 继续敏捷迭代、开发新功能

新功能1:手机控制TV里的Camera拍照片

l TV/STB内的i-Jetty含有servlet代码,让手机可以远距来访问它

l TV/STB则内含Camera驱动,能控制摄像头硬件

l 运用EIT造形和敏捷迭代,开发软件来整合家外的手机与TV/STB上的摄像头硬件,让家庭成员随时从手机来打开TV/STB的摄像头,拍了照片送回到手机上呈现出来

l 展开敏捷过程,直到完成

新功能2:手机控制TV将照片送上云端(Cloud)

l TV/STB将Camera拍摄的照片送上云端:例如Google的GAE等

l 基于WiFi通信协议

l 展开敏捷过程,直到完成


高老师部分视频网盘分享:http://pan.baidu.com/share/link?uk=1882162285&shareid=2210518229

读书人网 >Android

热点推荐