InfoQ

新闻

文章:Ruby/Rails──不一样的"Web"应用

作者 郑功梓 发布于 2008年9月2日 下午9时55分

社区
Ruby
主题
Ruby on Rails
标签
MVC

前些日子,Ricky Zheng以“rubynroll”的id在JavaEye上发表过两篇博客,名为“Ruby/Rails:不一样的‘web’应用”和“Ruby/Rails:不一样的‘web’应用”(续)”。他以一个农场自动化系统为示例,探讨了如何在一个传统的嵌入式领域项目中为了拥抱变化而引入web技术,研究如何定制以Rails为基础的领域特定的MVC框架。

InfoQ中文站有幸邀请到作者,对这两篇博客进行了归纳整理,作者在文后总结道:

当遇到需求变化时,运用恰当的技术手段有时候可以柳暗花明,特别是跨领域交叉应用,往往能收到意想不到的效果。Web技术的蓬勃发展带来了异彩纷呈的诸多 框架技术,开发工具,以及丰富的人才储备,这些资源对于非Web领域也有巨大的吸引力。本文所举的这个例子就是巧妙地通过基于Rails的DSF来解决实 际问题。实际上这个例子还有一个精彩的插曲值得一提,那就是客户希望可以脱离W设备和ZB网络来开发应用程序,简单地说,就是希望有一个W设备的硬件模拟 器。在传统解决方案里面,硬件模拟器是一项非常复杂的工作,但在这里,由于整个解决方案采用的是Web技术,因此实际上模拟器的核心就是一个简单的MML 到HTML的转换程序加上少许JavaScript而已,浏览器就摇身变成了一个硬件模拟器。突破传统思维的束缚,就容易找到金矿。

我不是一个Web程序员,也从未开发过用户超过十个人的传统Web程序,但这并不意味着Web技术对我无用。正相反,Web技术经常被应用到我所从事的嵌入式系统领域。基于Rails的DSF解决方案为加速Web技术在其它领域的应用开启了一道光明之门。

敬请阅读全文Ruby/Rails──不一样的'Web'应用

8 条回复

回复

非常不错,受启发了! 发表人 Yin AnPing 发表于 2008年9月3日 上午12时33分
Re: 非常不错,受启发了! 发表人 fjun sun 发表于 2008年9月9日 上午5时0分
Re: 非常不错,受启发了! 发表人 凉粉 小刀 发表于 2008年9月12日 上午9时0分
很creative呀 发表人 cao yunfei 发表于 2008年9月3日 上午1时33分
一个很好的软件重用的例子 发表人 Ming Li 发表于 2008年9月3日 上午8时35分
受用了 发表人 kai liu 发表于 2008年9月3日 下午9时8分
不错 发表人 晓昱 黄 发表于 2008年9月8日 上午3时10分
Re: 不错 发表人 功梓 郑 发表于 2008年9月9日 上午8时2分
  1. 返回顶部

    非常不错,受启发了!

    2008年9月3日 上午12时33分 发表人 Yin AnPing

    如题!

  2. 返回顶部

    很creative呀

    2008年9月3日 上午1时33分 发表人 cao yunfei

    作者的例子说明ror的架构是多么优秀,可以方便的实现基于Rails的DSF。
    Java的世界中是否有框架有类似能力,可以实现基于其上的DSF?

  3. 返回顶部

    一个很好的软件重用的例子

    2008年9月3日 上午8时35分 发表人 Ming Li

    在ROR基础上有效地利用并扩展了MVC模式。不过是用基于Java/J2EE的框架要花费多得多的开发工作量,但设计思想是相同的。看好Ruby、Python等脚本语言的发展,在商业应用程序领域,便捷的开发和灵活的适应性是最重要的特性。

  4. 返回顶部

    受用了

    2008年9月3日 下午9时8分 发表人 kai liu

    我的理解是:作者只是用了rails框架的设计以及ActiveRecord.让人开阔了思路

  5. 返回顶部

    不错

    2008年9月8日 上午3时10分 发表人 晓昱 黄

    利用既有web模式转移计算工作,为瘦客户端放弃HTML改用自定义MML,修改V部分输出MML——MML Render、改写了Parser实现了自定义的通讯协议——看来也放弃了HTTP、修改Server以便从特有接口读取数据。
    RoR不是很熟悉内部结构,Router、Controller修改了什么?
    没用RoR干过大事儿,编码量也许不大,设计还是要深思熟虑的。

  6. 返回顶部

    Re: 非常不错,受启发了!

    2008年9月9日 上午5时0分 发表人 fjun sun

    rubynroll.javaeye.com/blog/219826

    这不是和这个一样么

  7. 返回顶部

    Re: 不错

    2008年9月9日 上午8时2分 发表人 功梓 郑

    这里对Rails并不进行修改,实际上这个DSF是寄生于Rails并与Rails应用程序一起工作。你可以把DSF看作是另一个Rails实例,与其它Rails实例共享Model而Router/Controller是完全独立的。唯一交叉的是模拟器,它是通过把DSF的Server嵌入到Rails的一个Controller里面来实现的。
    由于Ruby的表达能力非常强,所以编码量很少,关键在于设计。

  8. 返回顶部

    Re: 非常不错,受启发了!

    2008年9月12日 上午9时0分 发表人 凉粉 小刀

    在这篇文章的新闻稿里面,已经标明原出处了。这是作者对博客整理后的文章

独家内容

应用JSF、Ajax和Seam开发Portlets(1/3)

本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。

AtomServer:数据分发的发布动力(第二部分)

在这篇文章里,Bryon Jacob和Chris Berry将和我们继续探讨AtomServer,它是基于Apache Abdera的完整Atom存储实现。作者还创建了几个Atompub规范扩展,其中包括自动标记、批处理和Feeds聚合。

架构师(试刊第二期)

InfoQ中文站的电子杂志《架构师》试刊第二期出版了!相比于上期,我们在内容的选择安排和版式上都根据读者的意见重新做了修正。“细节决定成败”,我们希望基于InfoQ中文站的专业内容,《架构师》能逐渐成为大家喜欢的电子刊物!

一种正规的性能调优方法:基于等待的调优

在本文中,Steven Haines探讨了Web应用性能调优问题。该领域过去更像是一门艺术而不是一门科学。他提出了一种称为基于等待调优的方法,使整个调优过程更加可度量,也因此更具科学性。

Java程序员ActionScript 3入门

通常来说,改变技术路线时最艰难的部分是辨别语言语法之间的不同。这篇文章就为Java开发者提供了一份如何转向Flex基础语言ActionScript的指南。

浅谈如何创建Rails应用

本视频主要以财帮子为例,介绍了如何创建一个PV为百万级的Rails应用。其中包括:Rails应用的服务器架构、Rails Cache的优化、负载均衡的处理、Web服务器的调试、分布式解决方案、Open API的设计等等。

Alexandru Popescu谈InfoQ.com网站架构

InfoQ首席架构师Alexandru Popescu在采访中谈论了InfoQ架构、Webwork与DWR、Hibernate与JCR、Hibernate可扩展性、最新的InfoQ视频流系统和InfoQ的未来规划。

揭示常见的重构误区

相对于Java,.NET在持续重构方面所给与的重视仍然少为人知,大多数人对于重构是否真正属于开发过程,以及如何将其应用到开发过程中持观望态度。Danijel Arsenovski试图为你揭示这些谜题。