[toc]
框架的重要性
一、ppt
详看:框架的重要性.pptx
二、内容说明
框架是什么?
框架是解决问题的具体实现方法,能直接执行或复用。
为什么需要框架?
简单的讲是为了约束和统一。
举个例子:我们想要让所有的页面支持在无网络的时候,都有个缺省页。
如果没有一个框架,则我们每个页面都得进行很多判断和视图操作。
且后期如果需要修改,也会导致工作量巨大。
框架的好处是什么?
我们先从常见的几个工作中实际场景介绍:
网络请求:不进行框架/封装处理的话,可能遇到的问题:
①、每次进行网络请求,都得写一堆代码才能完成最基础的请求操作;
②、如果还要求对每个请求都添加一些公共参数、错误码处理,则又得每个请求添加一遍;
页面的缺省:不进行框架/封装处理的话,可能遇到的问题:
①、无网络等状态下,直接无缺省页,显示成白屏,体验极差;
②、有设置缺省页,但无进行框架化,导致每个页面都得堆一堆代码来实现缺省页功能;
③、有设置缺省页,但无进行框架化,后期需要修改时候,每个页面都修改,维护成本巨大;
视图控件(如按钮):不进行框架/封装处理的话,可能遇到的问题:
①、代码实现特长;
②、还没有点击效果,如果要添加又要一堆代码;
③、后期需要修改时候,每个页面都修改,维护成本巨大;
测试框架:
①、开发联调接口,无法设置代理抓包查看;
②、用户反馈问题,无法提供问题出现的版本等信息;
③、已发布包程序出现异常,开发无法定位;
场景问题解决要点/框架能解决的问题:
①、不用堆一堆类似代码,几行代码就实现
②、规范变化的时候,不要我关心和修改
③、增加通用功能的时候,不需要自己再去实现一遍
④、app异常时候的监测和反馈
框架化后,以上这些问题都能够得到解决。
所以,框架的好处有统一设计,
建立框架的意义:
好的框架能够保证和提升项目的可维护性,扩展性,健壮性。
能够提高工作效率
能够让风格更统一
各框架提供的功能
缺省页框架:
解决可能的初始”白屏”
无网络情况下的”空白页”
无数据情况下的”空白页”
为页面提供网络异常页并伴有刷新恢复重试
测试框架:
新增抓包设置(代理)
新增查看版本页面,方便对应反馈的问题出现的版本(防止是旧包)。
程序异常(上报+提示)
视图控件框架:
定义加载动画loading
愿望灯动画效果优化(底部下沉)
框架的使用
使用前(纯代码,未有任何封装):
1 | GestureDetector( |
框架化后:
1 | ThemeBGButton( |