项目设计思路

项目思路:


  1. 产品调研和竞品分析,一定要考虑以后的扩展(因为整体项目结构在未来重构的可能性非常小)。
  2. 层次划分、模块设计、隔离封装
  3. 选择架构 Flux、Mvp、Clean
  4. 根据产品业务来选择框架。采用每个框架都要自己包一层,减少以后替换第三方库的修改地方和代码量
    小型化图片数量少,非gif图片,采用picasso;
    图片展示多但不需要高清的的app,可以采用glide;
    有高清图片需求的采用Fresco,减少OOM
  5. code基本程序框架,base类

项目目标:


  1. 功能完成
  2. 用户体验流畅
  3. 节省流量

合并网络请求
网络缓存

  1. 节省电量

【在以下情况下耗电比较多:】
1、 大数据量的传输。
2、 不停的在网络间切换。
3、 解析大量的文本数据。
【控制耗电量:】
1、 在需要网络连接的程序中,首先检查网络连接是否正常,如果没有网络连接,那么就不需要执行相应的程序。
2、 使用效率高的数据格式和解析方法。(fastJson,LoganSquare-master)
3、使用GZIP压缩方式下载数据,能减少网络流量
4、 其它一些优化方法:A. 回收java对象,特别是较大的java对像; B.对定位要求不是太高的话尽量不要使用GPS定位,可能使用wifi和移动网络cell定位即可,GPS定位消耗的电量远远高于移动网络定位; C.尽量不要使用浮点运算; D.获取屏幕尺寸等信息可以使用缓存技术,不需要进行多次请求。

让你的APP如丝般顺滑

1、详述Android系统架构,包括层与层之间调用、binder、jni、底层文件读写方法2、描述自己的一个项目,要求画出结构图,UML图,详细描述项目种的技术点,技术难点以及解决方案
3、一道算法
4、谈谈自己项目管理的方法、对敏捷软件开发的理解

1.你看过XX项目的源代码么?你是怎么做项目测试的?性能调优的工具用过么,介绍下?描述一个你在开发过程中遇到的最奇怪的问题以及解决办法。

1.说一下你认为自己比其他程序员出色(厉害)的地方?为什么我们要选择你呢,你和其他程序员比有什么优势?

  • 覆盖面广,做了很多app,app的基本框架搭建
    一个app的基本框架:网络、图片加载、数据存储

想办法搞清楚整个项目的业务流程,研发背景,内部模块功能,和外部如何实现集成,底层数据库的设计,整体系统架构设计等等

1.SDK[注意事项:资源命名前缀、版本号]

你可能感兴趣的:(项目设计思路)