Ruby on Rails不同的开发体验

Ruby on Rails 是一个相对较新的 Web 应用程序框架,它的目标是为应用程序开发提供一条易行道。简而言之,就是让生活,至少是 Web 开发方面的生活,变得更轻松。实际上,框架的支持者们声称 Ruby on Rails 开发人员的生产率最多是使用传统 J2EE 框架的 10 倍。虽然这句话造成了 Rails 和 J2EE 社区相当大的争议,但争论中却很少谈及如何比较 Rails 和 J2EE 架构。构建在 Ruby 语言之上。它被宣传为现有企业框架的一个替代,Rails 是一个用 Ruby 编写的全栈的(full-stack)、开源的 Web 框架,可以使用它来轻松编写实际的应用程序,所需的代码也要比大多数框架花在处理 XML 上的代码少。

Ruby是一种解释型的方便快捷的面向对象脚本语言,它是日本的Yukihiro Matsumoto于1993年2月24日首次发布的。它从Perl, Eiffel那里吸收了很多特性, 使之很适合用来文本文件处理和进行系统管理任务,并且完全面向对象。它的语法简单明快,可扩展并且可以跨平台。Ruby是完全自由开放的,意思是我们不仅可以免费得到,且可以自由地使用、复制、修改和分发它。

一直以来Ruby on Rails在中国及至世界开始火爆起来,无论在Java的站点里、搜索引擎中,还是火热的论坛里,你都会看到Ruby和Java叠对出现,而且它们两个好像一对水火不相容的冤家被人们相互地比来比去。Rails 是令人难以置信的!它的功能极其强大,已经明显地改变了 Web 开发的面貌和步调。Ruby 要比 Rails 功能丰富,尤其是从 Java 开发人员的视角来看。但是Ruby取代不了Java,并不意味着Ruby就不值得去使用。

甚至Oreilly这位多年来一直支持Java的大师级人物,也开始出版Ruby方面的书籍,带领人们从Java这儿离开。这场讨论的范围越来越大,参与者越来越多,甚至Java之父Gosling也卷入了争论当中。Java将会继续处于顶峰,并在企业应用上保持良好的表现,但是时间不会停滞不前。在某种意味上它终将会给替代。我们将需要一个更高级别的抽象。我认为我们最好的希望就是在JVM上做充足的投入,更好地支持动态语言, 拥抱新的事物,对于旧有的java代码,则最好是保留保守的态度。

这些都是好语言,但是都有一些缺点。对大型应用,PHP和Perl不能连续地产生可读的代码。Lisp,Python和Smalltalk这些就缺少了伟大语言好像应该拥有的催化剂。不过共同的认识是Ruby在开发中的高效性超越Java和C#,这个结果让许多开发者惊讶。甚至令他们提出这样的疑问:是否真的存在比Java和C#更好的语言?但是在众多的讨论中,国人的关注度似乎少很多。由于历史关系,很多国人都不想去讨论这个问题,也不相信Rudy会在中国成为第二个Java,那么Ruby on Rails在中国的发展如何呢?

业界对Java 和脚本语言的争论一直持续着从来没有消失。其实这种争论的本身已经背离了话题的初衷。早在半年以前,Java之父就强烈呼吁“停止无谓的Scripting Flamewar”,称“其实将Java ‘对立’PHP、Ruby或其他语言的讨论,都是毫无意义的。”

Ruby是一种好语言,和催化剂(Rails)提供了引人注目得新价值(以效率的角度)以及还在飞速地增长。Ruby不一定是最好的语言,但是它将是我所见过最有可能的。Ruby不大可能超过Java.它很有可能首先在一个更小但是却重要的环境中取得好成绩。这个环境也就是一个有web UI大的胖关系数据库。

Ruby on Rails (RoR) 的设计使您能够非常快速地开发 Web 应用程序。 它是通过遵守惯例而不是强制您预先做出所有配置决定来做到这一点的。 因此,RoR 使您可以在非常短的时间内开发出可以运行的应用程序。 安装了 Ruby 和各种所需的程序包之后,您只需运行不到六个命令和编辑一个文件 (database.yml) 就可以创建一个最小的 Web 应用程序。

Rails 的专长是 Web 站点开发,大多数 Web 站点已经 使用 Struts、Tapestry 或其他技术构建起来了。利用 Ruby 时,基本上是将它作为一种与 Java 平台衔接的开发实践。

有了 Ruby on Rails,开发体验就显著不同了,这是由于两个原因。首先,Ruby on Rails 有一个核心的 Web 开发平台:Ruby on Rails.其次,到目前为止,大多数在 Rails 上的 Ajax 开发体验都围绕着两个核心框架:Scriptaculous 和 Prototype.Rails 方法使用运行时代码生成和定制标记,这使您不必理会复杂的 JavaScript.现在Ruby已经成为一门用途很广的语言。

时间: 2024-10-30 05:26:14

Ruby on Rails不同的开发体验的相关文章

使用Ruby on Rails和Eclipse开发iPhone应用程序,第2部分

向客户机显示iPhone内容 使用 iUI 和 iPhone 列表结构 iPhone 和 iPod touch 使 Mobile Safari 成为风靡美国的手机浏览器.虽然使用 Mobile Safari 呈 现普通 Web 页面绰绰有余,但是许多 Web 开发人员都创建了针对 iPhone 的应用程序版本.本文是 " 使用 Ruby on Rails 和 Eclipse 开发 iPhone 应用程序" 系列的第 2 部分,介绍了将下钻(drill- down)列表作为导航方法的常见

使用Ruby on Rails和Eclipse开发iPhone应用程序,第3部分

开发iPhone的高级视图 构建视图和表单 iPhone 和 iPod touch 使 Mobile Safari 成为风靡美国的手机浏览器.虽然使用 Mobile Safari 呈 现普通 Web 页面绰绰有余,但是许多 Web 开发人员都创建了针对 iPhone 的应用程序版本.本文是 " 使用 Ruby on Rails 和 Eclipse 开发 iPhone 应用程序" 系列的第 3 部分,介绍当用户浏览到列表结 构末尾而应用程序实际上还需要显示一些内容时,应当如何执行操作.

使用Ruby on Rails和Eclipse开发iPhone应用程序,第1部分

为iPhone提供内容 通过 Ruby on Rails 应用程序检测 Mobile Safari iPhone 和 iPod touch 使 Mobile Safari 成为风靡美国的手机浏览器.虽然使用 Mobile Safari 呈 现普通 Web 页面绰绰有余,但是许多 Web 开发人员都创建了针对 iPhone 的应用程序版本."使用 Ruby on Rails 和 Eclipse 开发 iPhone 应用程序" 系列文章将说明如何在服务器端使用 Ruby On Rails

为Web开发提供的10个Ruby on Rails Gems

在这里,值得推荐的 Ruby on Rails 的 web 开发的插件包括 Capistrano 和 Foreigner. 我用 Ruby on Rails 开发已经有很多年了,用这个优秀的框架我完成了很多任务,其中有些可以算是非常复杂的项目.基于我的经验,我来推荐一些我觉得非常有用的 gem.本文就会分享这个推荐列表,还会告诉你如何找到 RoR 有用的 gem. 不幸的是,gem 的格式描述不支持分类和标签.所以我们不得不期望 gem 的作者在描述里列出我们需要的关键字,这样在搜索的时候才能更

Ruby on Rails需要知道的12点知识

为什么Ruby on Rails之于应用开发,就好比苹果之于桌面OS? 1.Ruby on Rails的优化首先是为人,其次才是编辑器和框架: 2.Ruby on Rails为Web开发提供了一个相当吸引人的新的选择: 3.Ruby on Rails虽然来源于标准的方法和模式,但它开辟了软件开发的新方法: 4.Ruby on Rails只需要较少的软件,却提供了完整的开源框架和丰富的社区支持: 5.Ruby on Rails是提供full-stack framework的一种尝试,通过model

Python vs Ruby: 谁是最好的 web 开发语言?

Python 和 Ruby 都是目前用来开发 websites.web-based apps 和 web services 的流行编程语言之一. 这两种语言在许多方面有相似之处.它们都是高级的面向对象的编程语言,都是交互式脚本语言.都提供标准库且支持持久化.但是,Python 和 Ruby 的解决方法却千差万别,因为它们的发展历程导致它们的语法和原理都大不相同. 那么要采用哪种语言来进行编程就需要好好考虑了,因为每种语言都是自己的优点和缺点.而且这些优缺点都会影响我们的决定. 基础知识 Pyth

Ruby on rails开发从头来(五十七)- ActiveRecord基础(多对多关联关系)

在Rails中多对多关联通过在关联表对应的类中声明has_and_belongs_to_many来实现. 在数据库中,多对多关联使用中间表来实现,表中包括关联表的主键,Active Record假定这个中间表的名字是由关联表的名字根据字母的顺序串联起来得到的.例如,关联表为categories和products,中间表的名字就是categories_products. 开发从头来(五十七)- ActiveRecord基础(多对多关联关系)-rails activerecord"> 注意我们

Ruby on rails开发从头来(五十六)- ActiveRecord基础(一对多关联关系)

一对多关联可以使我们表示一组对象,例如,一个order可以包含有任意多个line item,在数据库中,所有的line item记录都通过外键关联到特定的order. 在Active Record中,通过在父对象中的has_many来定义到子对象的关联,在子对象中使用belongs_to来指定父对象.我们已经在上一篇中了解了belongs_to声明,实际上,在一对多的情况下,和一对一是相同的,所以我们来了解has_many声明. 开发从头来(五十六)- ActiveRecord基础(一对多关联关

Ruby on rails开发从头来(五十一)- ActiveRecord基础(并发处理)

在学习Rails中的并发处理的处理前,我们先简单了解下并发处理的概念. 在有多个处理同时访问同一个数据库的应用程序中,可能会出现这样的情况,因为一个处理更新了数据库中的行,而使得另一个处理中持有的数据变得陈旧了.例如,A和B先后从数据库中提取了相同的数据,并都做了修改,这时B先将自己的修改更新会数据库,稍后,A将自己的修改更新回数据库,这时将会覆盖B所作的修改,当B再次提取数据库后,看到的是A修改的结果,而不是自己的. 一个解决办法就是将更新的表或者行进行锁定,防止其他程序进行更新或者访问,锁定