聊一聊Android代码走向

做过Android项目的的人都知道,刚开始的时候,我们都是直接用mvc的模式来编写我们的程序的,

毕竟这样说,mvc都是比较成熟的编程模式. 不过, 现在有很多技术出现了,例如mvp,mvvm,dagger2等技术,

这就让我们感到有些迷惑,同样是模式,都能做到同样的效果,为什么非得弄mvp等模式呢?


通常这个时候有人给出答案,是为了程序的可扩展性和可维护性. 感觉这答案是万金油,有点敷衍了事的感觉,

虽然事实如此.可扩展性和可维护性可以说是任何程序的最终目的,在程序员的角度. 目标是一致的,不过路是怎样的呢?


为了达到程序的可扩展性和可维护性,所有程序都必须要走逻辑优化以及内存优化这条路.


举一个简单的例子,javascript这门语言,我相信很多编过程序的人或多或少接触过这门语言,其实这门语言我感觉还是挺

尴尬的,一开始的时候,直接可以开箱使用,而很多网站为了节约成本,也不会说系统地去用这门语言.所以,出现一种情况:

系统来用,它可以用到非常系统,让你感到这跟基础的javascript页面脚本语言差别很大,简单使用一下,你感到这又太简单.

其实这就是逻辑优化做到与否的问题(当然,javascript不谈内存优化这个先,这个跟浏览器有关)


先解析一下什么是逻辑优化,例如:你要吃饭,如果开箱直接使用,不就是拿起碗来,把饭扒进口里,不过逻辑优化之后呢?

任何一个吃饭的过程都规范好,首先你要一个位置,不过你是坐着还是站着,做完到位的动作之后,要有一个盛饭的容器,

以及操作食物的器具,最后用器具与食物发生操作,最后到口里.


是不是很麻烦?文字上多了,不过逻辑简单了.同样逻辑优化代码的后果就是代码多了,不过逻辑优化了.

因为你每一个动作都规范好,逻辑清晰了,这对复杂的业务进行了解耦,解耦的原因是在这里的.

这对你修改,或者扩展程序变得非常简单.


javascript就是使用了jquery,backbone等框架达到逻辑优化的目的,让这门语言在程序员的眼里变得可维护,可扩展.


其实任何一门程序的面向对象语言都应该走这条路的,当然使用dagger2来实现内存优化这个对Android来说比较突出而已.

因为建立java架构之上的Android,用代码来实现内存优化也是一个新的思路.


所以,任何有助于代码的逻辑优化以及内存优化,肯定是以后Android代码的走向,

当然这个走向也适用于任何的面向对象语言





你可能感兴趣的:(聊一聊Android代码走向)