Android基础架构(一)

其实我这样的程序员很烦讲道理,为啥要做软件的架构呢,,就跟搭房子要地基一样,一个软件的健壮程度,不能说全部取决于基础的架构设计,至少能起到一定的作用吧!(个人愚见,多年的开发经验告诉我,健壮性大概率取决于编码的猿是否秉持了基本设计原则,及有个偏执的review行者)

垃圾话不多说,总之有个好的根基始终百利无一害
So let's do it!

首先需要考虑做一个app,不包含业务导向,其应有的基本功能是什么,由此开启底层架构之路:

1. 设计模式,mvvm设计模式,结合Coroutine (业务开发基础模版)
2. 路由,不同页面的切换,数据传递(Navigation框架)
3. 网络,联网请求数据,数据回来存储(网络框架<Retrofit+Coroutine>、Json框架、SP框架、数据库框架、下载器)
4.图片获取展示压缩裁剪(文件获取压缩解压\视频获取播放压缩及显示帧图)
5.全局拓展支持(消息中心、线程调度<这里主要区分io操作及主线程操作 Coroutine实现>)

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

推荐阅读更多精彩内容

  • 前言 很多工程师做开发3年甚至5年,到现在都无法自己写出架构代码。归根原因是 1. 架构基础知识匮乏 2. 没有...
    热血沸腾阅读 608评论 0 0
  • 大纲 Java 基础 1. ==、equals 和 hashCode 的区别 == 用于基础数据类型的判断时,比较...
    Parallel_Lines阅读 1,449评论 0 2
  • OC的理解与特性 OC作为一门面向对象的语言,自然具有面向对象的语言特性:封装、继承、多态。它既具有静态语言的特性...
    蜗牛上上升阅读 899评论 0 0
  • 目录 Swift学习资料@ 完整App@ App框架@响应式框架@ UI@日历三方库@ 下拉刷新@ 模糊效果@ 富...
    Dear_80d3阅读 8,652评论 2 79
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,135评论 0 4