技术日益更替,层出不穷。此文章基于第一视角来从零开始搭建Android项目,欢迎技术交流以及分享

开发工具(Mac用户,Win用户大同小异)

  • 毫无疑问首选AndroidStudio
  • 网络工荐PostMan
  • 网络抓包Charles
  • Git和SvnSourcetree。studio自带的git管理工具也好用
  • 切换HostSwitchHosts
  • 颜色工具Sip
  • 代码编辑SublimeText

    架构的选择

    从mvc延伸到mvp直到mvvm。我的感悟就是没有最好的架构,只有最合适的架构,根据自身条件按时完成开发任务才是首要。但强烈推荐使用Google Jetpack全家桶,即选择mvvm架构,同时选择使用Kotlin为首要开发语言

    delegate思想

    假设Activity/Fragment(统称View层)业务太过繁重,代码达到1000+行。将业务分发成一个或者多个delegate,在其内部使用接口与View层交互,这是一种减轻View层负担的其中一种做法(可以不叫delegate),与mvp架构类似,层级分明,职责明确
    Android从零开始搭建项目的过程 - 图1

    SDK的选择

    有以下几点原则,仅供参考
  1. 会使apk体积增大的SDK慎重
    不能因为某个功能而导入一个体积略大的库(只使用了该库的一个功能)从而导致apk体积的增加;多想想办法曲线救国
  2. SDK质量
    SDK的质量如何,得自己查看源码进行判断
  3. **避免重复
    假设项目中已存在关于DIalog的SDK,那么大可不必再导入另外一个类似的SDK;择优选择

**

推荐使用的SDK

  1. 单一职责原则
  2. 里氏替换原则
  3. 依赖倒置原则
  4. 接口隔离原则
  5. 迪米特原则
  6. 开闭原则

编码规范是个主观的话题,上班遵循公司的编码规范即可。其余可参考官方规范也可以设计一套自己的规范(前提是让读的人舒服)

其他

  • Icon放在drawable-xhdpi目录下,logo放在mipmap目录下下
  • 模块化是必须的
  • Application保持简洁;别做过于繁重的代码