闲暇之余,开发了一款休闲类app,虽然用户量不多,但确实花了不少心血在这上面。然而,开发出来的结果,与之前想好的架构,还是有不少区别。
下面,记录下这款app架构的演变:
最初,只想写个app,能与机器人进行聊天。架构随意搭(或者说没有架构),快速开发出来就好:
很简单,按照代码功能,分为各种包。
然后,需要增加各种功能模块,如:新闻,小游戏,历史上的今天,社区,手电筒,找手机等。然后就想着这些模块是否作为可拆卸模块,需要的简单插入,不需要也方便移除:
本次架构修改主要包括下面几点:
1、抽出公共部分,如:OSUtil。
2、各种基类,处理了统计、webview配置等。
3、将需要增加的功能模块化,完全无依赖
随着时间的推移,还是感觉越来越乱,再加上之前的UI设计有点过时的感觉,于是重构了一版:
相对于上一次的架构,改动不大:
1、确定基础模块(机器人聊天)
2、增加app配置(因为考虑开发其他app,将所有配置文件独立有利于后续app套用现有框架)
3、其他细节更新
ps:本来想写写性能方面的东西,写到一半,临时想把自己开发的【小萌伴】原本想要的架构记录下,希望能不断改进。通过【小萌伴】学习了不少,如:手电筒,找手机(短信,保活,语音等)、游戏(原生游戏4款,部分h5游戏),社区(UI,抽象,数据同步,网络优化等)还有MD设计及开发,运行时权限等。把这些记录起来,希望在架构上也能有所进步,以更宽阔的眼界去看待移动端产品。
作者:ThinkinLiu 链接:http://www.jianshu.com/p/b9a400810b84 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
扫码关注微信公众号--IT老五
微信扫一扫关注公众号,获取更多实用app,订阅地址不定时更新