我们日常开发中,通常一个项目如果不加以优化和性能调优,往往会造成用户体验以及开发上的囊肿,Java 面向对象三大特性 继承 封装 多态,但我们大多数都是只用到前两个,所以导致扩展性差,维护成本高,排查难度加大。
抽象:Android 或者Java中 抽取一个BaseControl、BaseActivity、BaseFragment、把一些特性相同的放入,让其子类可以直接调用、比如常见的空指针 可以抽取一个判空方法。
继承:Bean类可以抽取一个Base,一些行为相同的可以抽取成一个属性,但继承有个瓶颈就是单继承,抽象的彻底可以做成一个接口,因为接口可以多实现implements.
多态:A a = new B,表现、行为稍有差别,但编译器和运行期是不通的产物。
设计模式:Android中有65535方法限制,但可以使用一些方法规避,对于不需要的方法或者类等,可以del,
手机内存很宝贵,频繁创建对象会oom,或者复杂页面也可能造成卡顿,妙用设计模式,比如单例、观察者、装饰、工厂、抽象工厂、适配器、代理、Builder、等模式可以事半功倍。
开发模式:早期的MVC,现在的业务和场景不太适合用mvc,主流的MVP和MVVM还是比较推荐