Android开发 架构 (框架) 杂谈

    突然打开简书,提起笔来不知道写什么。做了Android一年半了,算是一个小小的总结杂谈吧。

    过了这么久,Android的发展速度真是惊人。开源不死。道出Android进步惊人的根本原因。

    好了,说正题。首先,如果服务端是你开发,那么你的服务端应该是webapi之类的REST架构,例如Asp.net WebApi。

如果服务端不是你开发,那么你请你服务端的朋友搓一顿,让他改成WebApi,WebService之类的请求可以抛弃了:慢、烦。

为什么要强调WebApi之类的服务端架构呢,那是因为Http请求比起WebService之类的请求要简单高效,可移植性高。

在Android上可以用OKHttp结合Retrofit轻松构建服务端接口。省去一大堆构建服务端接口代码。这种简洁性不是三言两语能道清的,建议读者自行体会。

好了废话少说,Mark一下接下来项目应该采用的app架构(个人观点,欢迎读者拍砖)。


Glide :Android图片展示,流式调用(Glide.with(context).into(imageView)),很爽。


Retrofit:Restful Api请求,结合RxJava、RxAndroid、OkHttp一起用,建议用2.X最新版本。传送门


OKHttp:网络交互库。建议用3.X最新版本。


RxAndroid: 流式写异步。谁用谁知道。同时请依赖 RxJava.


RxLifeCycle:避免RxJava没有及时取消订阅导致的内存泄露。


Dagger2:谷歌接手Dagger1开发了Dagger2,没用过1的也没必要去研究1了,直接从2开始。new 对象就像hard code,用Dagger可以帮你注入你需要的对象。这就是听起来高大上的IOC,控制反转,依赖注入。(听起来好厉害,其实大家每天都在用,构造函数就是最简单的依赖注入。)(ps:入门确实有点难度,博主我还在摸索中。。。https://github.com/wind0ws/Dagger2Study  这是我的dagger2 学习demo,欢迎star)


BufferKnife: 呵呵呵findViewById,setOnClickListener可以不用写了。传送门(AndroidStudio用户尝试下ButterKnife Zelezny插件,爽到爆。)


Timber :优秀Log工具。 Warton作品。个人觉得这个更好一些。当然萝卜青菜各有所爱,别在这上面纠结,他只是个帮你打日志的。

(KLog:Log的Tag可以不用写了,Json也能漂亮的打印出来了。)


GreenDAO: 数据库。ORM框架。还有一个Realm 也很流行,大家自行决定采用哪个吧。


Mosby:Model View Presenter (MVP) 解耦利器  传送门


AndFix: 阿里巴巴出品。Android Hot Fix 框架。不发版、不重启在线修复bug。(细粒度在方法级别)


    总体Android架构应采用MVVM或MVP。(博主现在采用的是MVP  ——Model View Presenter(上面Mosby那个))

    以上项目均可以在Github搜索到。读者自行去Github搜索。


    好了,先泛泛而谈这么多。希望看完对你有所帮助。

    当然,没有帮助也没耽误你太长时间哈  :)。

   Enjoy Your Coding Career!    :)       ^_^      



----------

![关注我的公众号.jpg](http://upload-images.jianshu.io/upload_images/1428538-27b8b23065ed36aa.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容