Java轻量级框架选择


目前,打算做一个手机应用的程序,包括android和ios,并都打算使用原生开发。与前端应用交互的后台打算使用Java来开发(本来想用Groovy,但还是对其不熟悉,只好作罢)。用Java就涉及框架选择问题,想选择一个轻量级的,毕竟自己一个人做,所以想用一个开发效率高、很轻、又不失扩展能力的,所以如果没有太好选择的话,就还是使用SSH。后来发现了Spring boot、JFinal和Nutz,最后就把目光定位到了这三个上面。

先说一下项目背景,

技术背景:目前已有的服务端是使用C#开发的,基于Spring.net+ibats的MVC架构,使用memcache缓存,数据库是Sql Server;前后端交互采用HTTP的Post请求,数据格式是Json。

而前端呢,又分为web端和手机app:web端采用angular.js+html5;手机app使用混合模式开发的(Hybird App),选用的是 Cordova框架。

目前存在的问题是,app在涉及页面大量渲染时,效率不高,帧数在页面没有交互时,总是掉到0,在触发点击拖动时才逐渐回升至50多;app页面切换、加载也速度有待提高,所以前端打算使用原生开发(Native App)。当然这是一个任重而道远的任务,希望我能坚持下来。

业务背景:这是一款轻量拼图、查看精美图片及用户间交互的应用,可以运行在android、iphone和微信中。


我的开发流程规划起来是:

sqlserver数据库先将用户表迁移到mysql中,然后选择好框架并搭建服务端,然后开发用户登录注册逻辑,然后开发android端,然后开发ios端;

继续迭代下一个业务功能,如首页;

...


前面啰啰嗦嗦一大堆,现在才说到今天的重点——框架比较选择

由于1年多没有做过原生、java的开发,所以还得重拾旧山河。对于spring boot、JFinal和Nutz都只有耳闻,并未用过,所以在网上依据大家之言,来比较一下这三个框架的区别及效率。


spring boot:微框架,是由Pivotal提供的全新框架,其目标在于为平台带来另一种开发体验,从而简化对已有技术的使用。在追求开发体验提升方面,Spring Boot,甚至整个Spring生态系统都使用到了 Groovy编程语言。

Java轻量级框架选择_第1张图片

JFinal:是基于Java的极速web+orm框架,核心目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful等等,都是极具诱惑的词,目前最新版本为2.2。http://www.jfinal.com/

Java轻量级框架选择_第2张图片

Nutz:把Java变成敏捷语言,即在力所能及的情况下,最大限度的提高Web开发人员的生产力,即更快的开发速度,更少的代码量。http://nutzam.com

Java轻量级框架选择_第3张图片


综合比较三种,spring boot还是比较复杂,但其实jfinal更适合我,所以就选它了。

先用起来,回过头来,再补充使用结果。



你可能感兴趣的:(Java轻量级框架选择)