<b>JRuby:集Java和RoR之所长</b>[Java编程]
本文“<b>JRuby:集Java和RoR之所长</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
Rails正疾速成为轻量级Web利用开辟方面的领头羊.有了JRuby, Rails就有望得到Java库和JVM具有的功效、效率及业界承认度.
JRuby是面向Ruby、基于Java虚拟机(JVM)的一种注释程序,它结合了Ruby语言的简易性和功效强盛的JVM的履行机制,包含与Java库全面集成.Rails完好加快及简化了Web利用的开辟,不过它让人认为不够成熟,分外是在高端企业级功效方面.另一方面,Java平台及其虚拟机、库和利用服务器的速度、安定性和功效方面却一向在晋升,目前已被公认为是开辟高端服务器利用的抢先平台.不过假如Java平台不与Ruby等新兴语言接洽在一同,就有大概落后于风行趋向.
JRuby结合了全部这些技术互为增补的长处,有望提高Ruby和Rails的出名度,同时为Java平台在运行非Java语言方面赋予新角色.
Rails: Java框架的发展方向
对Java开辟人员而言,Rails就像是自然代表了诸多Java Web框架的发展趋向:削减不必要的代码、采更多的抽象和动态机制,以及更全面的即开即勤奋效.
● 约定优于配置
早期版本的Java平台企业版(Java EE)每个组件需求有大量的配置和代码.比方说,Enterprise JavaBeans的每个bean要有多个源代码和XML配置文件.这种复杂性使得EJB成了重量级开辟的代名词,终究招致EJB 3呈现了180度大改变: 力求普通Java对象(POJO)bean的冗余和配置最小.即便如此,重型Java EE利用程序仍需求开辟人员开辟代码来表示多个软件层(包含GUI、业务逻辑和长期层)上的同一业务对象.然后,固然层与层之间存在冗余性和类似性,开辟人员仍必须用配置文件把这些层粘合起来.相比之下,像Seam和Spring这些对比新的Java Web框架利用极少的配置和代码,便可以公布业务对象.
Java框架也一向在向跨Web利用程序的多个层对仓库举行尺度化和集成迈进.在早期,Java Web利用开辟人员手工编写代码,从服务器小程序得到HTML输出;成立自己的模子-视图-掌握器(MCV)架构,并利用SQL而不是Java数据库衔接(JDBC)来拜候数据库.后来,他们堆积了履行大部份通勤奋效的组件,比方标志库、Struts和Hibernate.近来,Spring将大部份功效集成到了单1、自上而下的轻型仓库.
从一开始,Rails就表现了这些简便性原则,这些原则在Rails社区中称为“不要反复自己”和“约定优于配置”(避免冗余和有意义的默许值是软件工程范畴中的两条陈腐原则).该框架可以按照简明的约定,猜出差别层的衔接关系.Rails乃至可以显式、动态增添属性从而反射数据库列: last_name列会自动使last_name属性呈现.
在约定不能满意要求的特别情形下,仍可以利用纯Ruby代码大概近似Ruby的轻型YAML格局来增添配置,这两种格局都删去了XML的冗余方括号和完毕标志.
● 动态和反射机制
Java框架也一向在向反射和元编程机制利用更遍及而迈进.比方说,Spring利用反射机制,操纵依靠注入把各部份衔接起来;尺度的Java EE服务器系列则普通采取静态办法.Hibernate这种风行的对象关系映射框架操纵动态元编程举行映射,在运行时更新字节码,而不像早期的数据拜候框架需求在开辟时生成大量的源代码大概字节码.
Hibernate的开辟人员之前只好采取一些高级技术来实现这项功效.而在Ruby中,元编程倒是这种语言的一个有机部份,后果Rails在运行时不但能动态生成映射,还能生成拜候及显示底层数据库所需的业务层类定义,从而尽大概削减了这种需求.
以上是“<b>JRuby:集Java和RoR之所长</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |