`

JAVA与ROR

阅读更多
一、互联网领域
互联网领域第一大动态语言是PHP,第二第三分别是ASP和Java。在中小型互联网应用当中,PHP的王者地位不容动摇,但在大型应用当中,Java是目前主流的选择,特别是电子商务类型的应用,例如阿里巴巴就从早期的PHP转变到Java,从前的eachnet也是如此。造成这样局面不是没有原因的:

1、中小型互联网网站强调开发速度,维护成本,以及入门快速和部署成本,PHP是最合适的选择;用Java则显得过于笨拙,开发慢,维护成本高,入门周期长,部署麻烦;RoR开发速度最快,维护成本最低,但是RoR入门速度没有PHP快,部署成本比PHP高。因此中小型互联网网站主流还是PHP,但RoR能够占据一定的份额。

2、大中型互联网站强调稳定性,性能,大规模代码的组织能力,而开发效率则退居次要地位,有些应用如电子商务对事务有很高的要求,显然Java是最合适的选择;PHP的代码组织能力最差,RoR次之。

在互联网领域,Java从来就不是主流,并且Java的适用领域和RoR不太重合。我们甚至可以这样说,RoR现在在互联网领域取代的是那些原本不适合用Java,但是被错误的选择了Java的项目。

二、企业应用领域
目前企业应用领域第一大语言是Java,dotnet其次。企业应用采用的技术和行业有很大关系:例如金融行业,电子政务行业一般只采用Java。dotnet发展了6年尚且没有进入企业高端的应用,RoR在短期之内也很难取代Java的地位。

在企业应用领域,Java是主流,并且Java的适用领域和RoR也不太重合。我们也可以这样说,RoR将来在企业应用领域要取代的是那些原本不适合用Java,但是被错误的选择了Java的项目。

至此,我想Java程序员大可以松一口气,RoR目前有哪些不适合的场合呢:

1、对事务要求非常高的场合
RoR还是很简单的单数据库事务控制,缺乏精细的事务控制功能,当然也不支持跨数据库的分布式事务。因此对于事务要求严格的大型电子商务网站,部署复杂的分布式数据库场景显得力不从心。当然也许有些plugin可以提供这些功能,但是从目前的功能完备性和成熟度来看,还不够。

2、处理大量遗留数据库的场合
ActiveRecord的威力很大程度上来自约定,大量命名糟糕的遗留数据库会对RoR造成比较大的障碍。

3、庞大的项目团队,对开发速度要求低的场合
例如日本外包项目,团队庞大,个体开发速度要求低。但是对于代码规范要求严格的项目。

虽然RoR不会取代Java,但不意味着作为程序员的你可以固步自封。即使在工作当中用不上RoR,多看一点新的技术,对于开阔个人视野也有很大的好处。


PS:文章转载于 robbin 博客 http://robbin.iteye.com 感谢robbin!!
分享到:
评论

相关推荐

    javarebel 用JAVA和ROR一样方便测试

    破解版本的JAR包,放到本地磁盘,ECLIPUS直接用,到JVM设置直接加 -noverify -javaagent:D:\javarebel.jar

    Java敏捷持久层-ROR-ActiveRecord持久层框架的Java实现

    ROR-ActiveRecord持久层框架的Java实现

    RoR选题方向—源代码

    RoR选题方向—源代码

    ROR绿色最新环境(2013/3/10)

    ROR环境 Ruby version 1.9.3 (java) RubyGems version 1.8.24 Rack version 1.4 Rails version 3.2.12 JavaScript Runtime therubyrhino (Rhino) Active Record version 3.2.12 Action Pack version 3.2.12 ...

    play java轻量级框架

    说到网络框架,Ruby的Ruby on Rail和Python的Django都相当轻巧好用,但Java下的框架,则要...Play拥有ROR或Django那样的灵巧,又不失Java的稳定,更有JVM这一强大的运行平台。魔鬼身材,天使脸蛋。让我们来玩玩Play吧。

    Java程序员使用Grails的十大优势

    Web开发方面没有王者,PHP市场很大,但RoR,Python,Java,及至Asp.net都占据着一方市场.那么作为Java程序员,当你不想使用SSH做网站的时候,尝试一下Grails吧,这里是Java程序员使用Grails的十大优势

    My Java web ....!

    webwork exercise struts2 exercise ORM:one-to-many,many-to-many,self-relationship RoR exercise later... 博文链接:https://riss.iteye.com/blog/81513

    Pragmatic - From Java to Ruby jun 2006

    所谓的低重用性,ROR的无缝集成,几行代码把即把MVC一层统一。 上面的例子,诸多脚本语言PHP,Perl,Python,BeanShell,ASP,JSP各个都能做到,还能列出他们的优点一大堆。自己也能达到类似的目的啊。 语法都很严谨啊,...

    bookstore-已优化Servlet.zip

    bookstore-已优化Servlet.zip

    springside-3.3.3-src.zip

     它以RoR式的简约风格,将Java社区众多优秀轻量级开源项目整军为一个黏合的框架,以构件式的开发架构,配合Ant与Eclipse plugin的生成工具,作为大家开发Java企业应用的方便起点。  同时,它的示例代码充分演示了...

    Etmvc入门学习详解

    之前看过struts, spring mvc, ror, grails等框架,其中最欣赏ror了,struts的灵活性对于多数中小型项目而言显得对于多余。特别是在AJAX如此盛行的今天,现有的框架对AJAX的支持显得不足。于是,萌生了开发一套简易...

    tobacco-bootstrap:HTML5 Java Web 应用程序原型,具有最新和最好的组件

    我一直认为 Java 可以做的不亚于 RoR 或任何其他花哨的 whistle 框架,而无需模仿 Roo。 所以我决定创建这个以客户端为中心的原型,它总是包含最新的 JS 和 Java 库,使用所有最新的最佳实践,并称它为烟草,因为它...

    JSPrintManager:先进的Java客户端打印和扫描解决方案

    JSPrintManager从Javascript打印命令和文件,管理打印机和扫描文档是针对客户端打印和扫描方案的Javascript + Client App解决方案,旨在用于在任何Web平台(如ASP.NET,PHP,Django,Ruby On Rails(RoR),Express....

    jasper4rails:RoR 的 JasperReports

    Java JRE 碧玉报告 3.0.0 iReport 3.0.0(用于设计) 如何使用 1- [JasperReport] 使用 iReport 制作您的设计报告(您可以在 tooliReport-3.0.0iReport.exe 中访问 - 不需要安装)。 2- [JasperReport] 构建您...

    AMP - AJAX for Java-开源

    AMP受到RoR部分的启发。 它是独立于框架的Java API,支持以常规MVC模式处理AJAX请求。 目前,它已与Spring框架集成在一起,以便于配置。

    github的使用_动力节点Java学院整理

    最早从Rails开发社区兴起,Github本身也是用RoR框架写的。 早期的Rails多人协作开发团队,在代码提交和协作时遇到了很多的麻烦。为了解决团队之间开发协作困难的这一个问题,创始人Scott和其他3个程序员朋友,...

    JdonFramework开源框架 v6.6

    JF类似Spring和RoR的混合,不仅如此,而且克服了同时期这两类框架的缺点(Spring 1.x无容器Session状态支持;Ruby on Rails忽视了业务层服务), JF与国内其他快速开发工具相比:JF是严格坚持分层架构(表现层、业务...

    来玩Play框架

    说到网络框架,Ruby的RubyonRail和Python的...Play拥有ROR或Django那样的灵巧,又不失Java的稳定,更有JVM这一强大的运行平台。魔鬼身材,天使脸蛋。让我们来玩玩Play吧。Play的安装相当简单。在Play官网下载,我下载

Global site tag (gtag.js) - Google Analytics