Web开发方面没有王者,PHP市场很大,但RoR,Python,Java,及至Asp.net都占据着一方市场.那么作为Java程序员,当你不想使用SSH做网站的时候,尝试一下Grails吧,这里是Java程序员使用Grails的十大优势
1.易于学习
这里并不是说Grails不易于PHP或者Python程序员学习,Grails和Groovy都很容易学习,也容易使用,但对于Java程序员来说则有
很大不同,因为它更易于学习与使用.你可以同时使用Java语法和Groovy语法,并且Groovy语法也更易于Java程序员学习.同时你不需要放弃
你对于Spring/Hibernate的积累,要知道,放弃积累推倒重来是不对的.
2.IDE支持
无论是Netbeans, IDEA还是Eclipse都对Grails有非常不错的支持,无论是语法高亮,自动部署还是重构.IDE支持对于java程序员来说应该是非常重要的,试试Netbeans的Grails插件吧,相当不错.
3.领域驱动开发
如果你不了解领域驱动开发(Domain Driven Design),可以搜索一下Evans
DDD或者类似的关键字,使用Grails,拿到你的需求,设计你的领域类,然后下面的工作就只是设置你的页面,通过领域类你可以清楚地看到模型层次关系
与业务层次关系.这样会让生活更清晰一点.
4.性能
你关心性能吗?当然在Web开发中语言的性能并不是最重要的方面,但你依然需要关心你的程序的性能.比如你的业务量扩大了或者你的站点变成了高流量网站,
你都需要面临性能的问题.而使用Grails你不需要担心这一点,只需要关注你的程序就好了,因为Java平台是足够快的:)
5.稳定的JavaEE平台
当你需要Web
Service,或者需要分布式环境,或者需要处理异步消息,设计邮件系统,Grails可以让你轻松与JavaEE平台整合,因为Grails本身就是
基于Java的框架,你知道JavaEE是稳定的,你可以将Grails部署到Glassfish,Tomcat,
Jetty,JBoss或者Weblogic.
6.社区
Grails有一个稳定活跃的社区,当你碰上任何问题的时候,加入Grails的邮件列表吧,先读一读提问的智慧,你会在邮件列表中得到你想要的;当你没碰上任何问题的时候,也请加入Grails的邮件列表吧,你可以学到更多不仅是Grails的知识.
7.插件系统
Grails的核心很小,大部分的功能都是基于插件系统的,Grails有很多非常优秀的插件,当然你也可以用自己的插件.我利用rateable插件,只用了十分钟就做出来了类似于douban.com中给书和电影打分的star rate功能,这绝对Cool.
8.约定大于配置
Java程序员肯定需要知道什么是CoC.当我们使用Struts2的时候,我们未必需要告诉action如何去找到要渲染的jsp,这就是CoC,但我
们不可能在整个JavaEE体系中使用CoC,比如你没办法从Struts中以CoC的方式获取EJB,但Grails却是完全基于CoC的,无论是
Controller到页面,还是领域类(Domain
Class)到数据库的映射,都是以CoC的形式做的,这样可以节省你大量的时间,同时Grails也提供了可选的配置文件以提高灵活性.
9.不重复工作
作为程序员,要学会的不仅是各种技能,更多的是要学会重用.因此Java程序员没必要不断学习太多很新的东西,反而应该在积累的基础上去改进,当你是优秀
的Java程序员的时候,我相信你可以在半天的时间内学会Django,但何必为此抛弃JavaEE?用Grails吧,少花点时间去研究,多用自己成熟
的东西去创造.
10.Wicket集成
可能你不太乎这一点,但这一点对我来说很重要,毕竟我们在Wicket上有很多积累.那么,既然Grails可以轻松与Wicket集成,这就说明
Grails也可以轻松复用你的其他Web框架,这样就达到了更好的利用效果,而你可以继续复用你的积累.最重要的不是学习多少东西,而是节省时间,创造
生产力.
这就是我认为Grails是非常优秀的Java的Web框架的原因,我想你也可以试一试,只需要30分钟,从http://www.infoq.com/minibooks/grails
开始,虽然这里的Grails版本老了点,但Grails的确是向前兼容的.
分享到:
相关推荐
### Java程序员开发常用的工具 #### 1. 常用开发工具 对于Java开发者来说,选择合适的集成开发环境(IDE)至关重要。一个优秀的IDE不仅能提升编程效率,还能帮助开发者更好地组织代码、进行调试和测试等工作。以下...
- **目标读者**:本书适合所有希望提高Web开发效率的Java程序员。无论你是初学者还是经验丰富的开发者,都能从本书中获得宝贵的知识和实践经验。 #### 三、Grails的特点与优势 1. **快速开发**:通过约定优于配置...
- Spring:一个广泛使用的轻量级Java开发框架,以其灵活和模块化的特点受到开发者欢迎。 5. **持久化框架**:持久化框架负责将数据持久化到数据库或其他类型的存储系统中。选择合适的持久化框架可以极大地简化数据...
《Groovy In Action》这本书是Groovy编程语言的权威指南,深入浅出地介绍了这个Java平台上的强大脚本语言。...无论你是Java开发者希望扩展技能,还是对动态语言感兴趣的程序员,这本书都是一份宝贵的参考资料。
6. **Grails框架**:Groovy与Grails框架的结合,使得Web应用开发变得简单快捷,Grails利用Groovy的简洁性和灵活性,提供了一种快速开发全功能Web应用的方式。 7. **GPars并行处理**:Groovy的GPars库提供了强大的...
书中会涵盖Grails的基本概念、控制器、服务、视图和域类的使用,帮助读者掌握Grails开发的全貌。 领域特定语言(DSL)是Groovy的另一大特色,它允许开发者创建易于理解、业务领域相关的代码。通过DSL,开发者可以...
Groovy与Java可以无缝集成,使得开发者可以在一个项目中同时使用两种语言。 2. **Groovy语法特性**:Groovy提供了许多简化编程的特性,如自动类型推断、闭包、groovy shell、GString(类似Java的字符串模板)等。...
在Java开发领域,动态语言的引入为程序员提供了更多灵活性,比如Jruby、Jython和Groovy。这三种语言都能够在Java虚拟机(JVM)上运行,为Java平台带来脚本语言的便捷性。然而,根据标题和描述,本文将重点讨论为什么...
尽管如此,Java在大型企业市场依然保持稳定,JavaFX和Groovy/Grails被视为反击手段,尤其是Groovy/Grails可以保护开发者在J2EE上的投资。 其次,【PHP】语言因其对初学者的友好性迅速普及,但也遇到了RoR的挑战。...
然而,Java社区正在通过JavaFX反击图形用户界面市场,Groovy和Grails的兴起则为Java EE提供了一定程度的保护,让Java开发人员不必全盘转向其他语言。 在PHP方面,其易学易用的特性吸引了一大批初学者,但随着RoR的...
Apache Groovy SDK 4.0.1 是一个重要的软件开发工具包,专为使用Groovy编程语言进行开发的程序员设计。Groovy是一种基于Java平台的动态、灵活的编程语言,它扩展了Java语言的功能,提供了简洁的语法和强大的元编程...
D语言快速发展,吸引了许多原本使用C++的程序员,但缺乏优秀的IDE是其一大遗憾。Lua语言因其小巧和易嵌入的特性逐渐受到重视,PowerShell随着Windows Vista的推广成为重要的系统管理语言,而Erlang在多核心环境和...
总之,《Groovy in Action》是一本全面且深入的Groovy学习资料,无论你是Java开发者想要拓宽视野,还是对动态语言感兴趣的程序员,都能从中受益匪浅。通过阅读这本书,你将掌握Groovy语言的核心特性,了解如何在各种...
10. **Grails**:如果DogRobot项目是一个Web应用,可能使用了Grails框架,它是基于Groovy构建的全栈框架,简化了Java Web开发。 通过对"DogRobot_copy"的分析,我们可以学习Groovy编程语言的核心概念,了解如何在...