08_29_Android软件架构

架构的本质

  1. 本质, 类似图纸, 不是建筑物;
  2. 明确范围
    1. 软件设计中, 架构不等于框架;
    2. 底层的编码,到设计模式, 到框架,再到架构(微服务,SOA)

好的架构

做好分层分解,把不确定因素变的更容易确定;

可复用:对各个模块进行分开复用

可并行:多方合作,测试,开发,发布,可以分开同时执行

可度量:

可定制:根绝团队具体情况来选择架构;

做好架构

第一步:找到问题;

第二步:怎么解决;

  1. 分层,应用层,框架层,AIDL,服务组件,Binder,点对点事件的通信;

第三步:持续演进

  1. 黄油计划:屏幕绘制三缓冲

  2. 瘦身计划:抽离google应用商店等

  3. 安全:运行时权限的增加

  4. 性能:17年大多数人用老版本老系统;

    演进过程中一定要有目的性。

最新文章

  1. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14
  2. mysql在linux下的安装
  3. linux一些常用命令
  4. NLTK中文语料库sinica_treebank
  5. POJ 1637 Sightseeing tour (混合图欧拉回路)
  6. UVA 1424 二 Salesmen
  7. JavaScript实现样式表的简单切换
  8. 项目源码--Android基于LBS地理位置信息应用的客户端
  9. mini2440触摸屏驱动分析
  10. 设置Firefox禁用js缓存
  11. vim与外部文件的粘帖复制
  12. tcpdump+wireshark抓包分析
  13. HDU 3294 Girls' research(manachar模板题)
  14. linux下用命令修改文件内容
  15. RGB图片取大于阈值部分
  16. 字符串 String 格式化 format
  17. Redmine 安装指南
  18. 【微信小程序】再次授权地理位置getLocation+openSetting使用
  19. 默认库“library”与其他库的使用冲突;使用 /NODEFAULTLIB:library
  20. php将html页面截图并保存成图片

热门文章

  1. Python散列类型和运算符
  2. Tangent element-Vs虚拟调色台安装配置
  3. AWVS破解安装
  4. jenkins添加TPS与服务器监控变化曲线图
  5. Mybatis拦截器(六)
  6. 剑指Offer-15.反转链表(C++/Java)
  7. SQL Server 删除数据库
  8. Note | Ubuntu
  9. 项目倒入maven 遇到的问题只有 main 了
  10. Java Metrics工具介绍