Antrus – 我搞的一个Android下的MVC开源框架


(开源地址:http://code.google.com/p/antrus/)

蒋彪@南京 2011-6-20

1. 前言

做了几个Android项目,感触颇深。特别对我这种J2EE程序员,Android下的东西有点类似于swing

到处都是冗余的代码,死板的设计,层次之间的紧密耦合,大量的无用功被浪费在重头造轮子。

至此危难之际,我真的是非常怀念过去的J2EE的时代。StrutsSpring,Hiebernate,到处都是大师级的框架,清晰的分层。。。。

周末的时候,我在想,能不能在Android下应用struts的思想,做一个结构清晰,分层合理的架构呢。

做起来就不可收拾,越做越感觉到框架和分层的力量。

2. 框架的构思

Android一个大问题就是显示层和控制层没有解耦,大量的逻辑代码被写在Activity中。所以我首先想到的就是将View和控制层分开。

所以,首先,我把Activity抽象出来一个BaseController,部分的代码如下:

在这个代码中,我把画面初期化封装到BaseController中来实现,给画面增加按钮事件也封装在其中,画面的跳转也封装在其中。

接着,我按着struts的思路来,封装了一个form,实现序列化接口。这样,就能把画面上所有的参数封装到对应的form中去。

这样,android就变成:

XML ------ 传值(form------- >Controller A------ > Controller B

怎么样,是不是有点struts的雏形?

3. 框架的一个小实践

光说没用,任何一个技术框架都要经得起实践的考验。

来,让我们看看anstrus能干什么

我们就实现一个小小的登录画面,前台的XML文件还是照着原样子写,代码Activity。。。

看到了没有,基本的功能都实现了,但是代码变得无比精巧。。。

4. Anstrus的路线图

当然,这玩意现在还不足以工业化应用。

但是,有了开始,还怕没有结果吗。

我考虑在未来在这个玩意下加上更多的功能:

1. 第一步

引入XML配置文件,彻底解耦ViewController

2. 第二步

引入POJO技术,在form里用注释的方法来编写check条件。

3. 第三步

引入spring机制,封装一系列可重用的service。在此之上封装更多的业务应用。

#以上#

更多相关文章

  1. Android(安卓)TextView 丰富多彩的字体样式代码
  2. Android(安卓)编辑框 和 按钮使用
  3. android之listView之增删改查
  4. android读写文件函数代码
  5. 如何去掉Android(安卓)Studio顶部状态栏
  6. 基于Android扫描sd卡与系统文件的介绍
  7. Android窗口抖动之动画实现
  8. Android封装保存图片工具类ImageUtils
  9. Android(安卓)HelloWorld

随机推荐

  1. Android源码树添加新的APP(含第三方so、ja
  2. android自带的drawable图标ico名称对应表
  3. android Mainifest权限设置清单
  4. Android dp方式的屏幕适配工具使用(Andro
  5. android 安装和卸载程序
  6. android排版布局学习
  7. android异步图片加载三之handler+线程池+
  8. 【分享】大量android软件开发资料和实例
  9. Android媒体的一些使用总结(2)
  10. ok6410 android driver(1)