APP架构构思基本思路初稿
2016-01-10 23:26
316 查看
如果维护多个项目(尤其是处于一个外包公司的话),那么自然而然要避免每次都是开发新的项目,避免掉着没有必要的重复劳动力。 于是,鉴于此,我在app架构的设计上抽取出一个类库(MDLib)“妈蛋类库”。
先上图(MDLib):
由图可知,Android和iOS的类库在这里采取了相同的架构。
第三方库集成引用
虽然iOS有pods,Android有gradle,但是有时涉及源代码的时候有些人还是习惯将他们作为一个库引用。(不评价习惯的好坏)于是,如图所示,一些基本的第三方库还是会选择集成,如网络请求,如DB,LOG等
2.Utils的积累整理分类
validateUtil(输入框验证工具类),TimeUtil(时间处理工具类)...
3.自定义widget
自定义对话框,选择框,弹出提示...
4.MDBase类
基类,剥离业务层后的公共方法。
* 再上图(Project): *
其实关于这张图可以拿出来讲的并不多,而且公共方法几乎也被剥离到MDLib中去了,其中唯一可以构想深思的是MVC(MVVM)设计模式。此文为初稿,具体如何设计还在构思中。欢迎给出建议。
依赖库与项目关系设计的核心思想
MDLib继承系统的组件。—-> MDBaseActivity —-> BaseActivity (project) —-> USE IT!
其中MDBaseActivity 一定是剥离出业务层以外的公共方法,才可以放在MDLib中。
当然,此结构为4层,而一些简单的方法的话,个人认为三层也就足够了。
此篇文章作为app 架构的起初方向,还在不断完善中。期待批评指教。
相关文章推荐
- android加密方式及原理
- Ibatis学习总结5--动态 Mapped Statement
- Spring的一种拦截器SimpleUrlHandlerMapping
- Android之实现定位
- Android之实现定位
- iOS开发中 代理,block,KVO 的使用
- NSFileManager的常用操作
- android webview不能调用JS中的function?
- eatwhatApp开发实战(八)
- iOS开发中block的使用
- iOS后台播放音乐
- android 项目更改包名的方法
- 安利App介绍及下载(含二维码)
- iOS的花式进度条-五边形进度条,六边形进度条
- iOS创建线程方式(以及回到主线程, 以及延时之行代码)
- Swift学习笔记6
- KING_U3D学习之Unity播放视频解决方案
- $watch 和 $apply
- iOS广告轮播视图
- ubuntu android 环境变量的配置