`
love~ruby+rails
  • 浏览: 849658 次
  • 性别: Icon_minigender_1
  • 来自: lanzhou
社区版块
存档分类
最新评论

Cells:将组件开发带入Ruby2.3

阅读更多

cells "将使得面向组件的开发惠及Ruby on Rails Web应用平台“,使得你能够创建独立并且可以重用的组件,这些组件是自包含的,并且能够和应用程序中的其他Cells组合在一起或者被其他Cells重用。

构建在Cells之上的Apotomo 对Cells进行了改进,使其成为一个完全状态化的组件,能够提供和广 为人知的GUI widget同级的抽象能力,即“Apotomo使用能够自升级的事件驱动的widget扩展了Rails的功能”。所以,使用Apotomo的开发者能 够利用现有的JavaScript UI库,例如YUI,而不需要编写JavaScript代码或者关心底层AJAX调用。Apotomo widget能够形成事件链,使得widget能够独立于其他并且易于重用。

InfoQ已经关注Cells达一年之久 ,与此同时,Cells 1.0已经发布,并且Apotomo的工作仍在继续。

InfoQ采访了Cells的主要开发者Nick Scutter。当问到“自从上次见面过后,这一年来你们对Cells进行了哪些改进呢?”,他回答道:

非常多!Cells和Rails从1.2.3一起成长到2.3,我也学习了Ruby!我对语言的良好理解能力,以及大量整洁和结构化的Cells代码帮助了我。

除了我们介绍的高易读性的代码,我们还介绍了一种简单的,类似于Rails视图中使用的碎片缓存的缓存技术。这个技术允许缓存Cells视图,直到一个加 载的版本更新方法决定其已经过期,而不会使得一个Cell实例失去其面向对象的特性。Michal Lomnicki提供了非常多的帮助,他在他的项目中使用了补丁以及真实的测试用例。

上次你说在Rails社区有一个“值得注意的趋势”。现在情况是怎么样了?

我不会在这里说一些统计数据。好吧,当我开始Cells的时候,很多程序员都对我谈起过Rails缺少组件这个问题。

看看GitHub中Cells的监视器就能够明白,我们现在有大约150个代码编写者,他们能够在Cells被改动的第一时间得到通知。这很酷啊,我喜欢开发者对Cells感兴趣。我们有6个成功的分支合并到主线上。
突然网上出现了一些博客文章,讨论Cells和它的变种,例如部分和presenter结合起来,了解他人的想法是一天非常激动的事情。

另外一个激动的事情是IRC的#cell频道。每次我加入的时候,总有4到8个人在潜水,他们来自于世界上各个地方。而新人不断地涌进然后寻求帮助。我想这个频道是这个项目中最重要的支持媒介,在这里遇到朋友总是非常有意思的。

自从Cells的发布开始,大量的公司告诉我他们在实际项目中使用Cells的情况。即使有IBM的资助,我仍然对等待其他人捐赠这事有点失望,真该感谢MIT license。

这个项目值得留恋的是和我兄弟Mike Pence在Florida的Orlando举办的RubyConf 2008 的谈话。我们在Sarasota度过了一段美妙的时光,准备讨论,喝啤酒和狂欢!有很多人坐在大堂中倾听我们的演讲。我们在演讲之后进行了非常深入的讨论,即便在晚会上,我们也没有停止交谈。

在我们美国之行之后,我们发布了Cells for Rails 2.3,在Apotomo博客上发布的官方信息每天的浏览数都在500左右。这是一个非常愉快的经历,也证明了David的眼光没错。

David曾经和我们联系过,但是我们从没有想过找一个如何将Cells集成到Ruby中的方案。我们更愿意它是一个插件。插件是好东西。

我曾经研究过Rails 3的代码。我也是Yehuda重构的粉丝,我真心希望一个新的内嵌API能够帮助它实现一些Cells的功能。每个人都需要组件。所以,我希望等待,直到 Rails 3的API稳定,或者我可以继续钻研Cells。现在,我主要在编写教程,文章以及改进Apotomo,我们可以期待一下在Rails 3中使用的Cells吧。

我们真的需要状态化的组件吗?

不,如果你喜欢“暴力线性控制流”,在每一个请求,你要么展现完整的页面,或者在控制器,视图甚至在你MVC栈的模型中有一些凌乱的AJAX逻辑,那么你不需要组建。同样,如果你希望对每个请求建立完整的处理环境,那么你也不需要状态化。

让我们引用Mike的话。“现在是拥有一个更好的玩具的时候了,虽然这些孩子已经有很好的玩具,但是为什么不将Rails更进一步呢”。Smalltalk开发者喜欢Seaside,GUI开发者讨厌Web。为什么不把这些东西的优点结合起来放入Rails中呢?

我的意思是,在其应用中使用多少Apotomo完全取决于程序员本身,当他体验过状态化widget的巨大威力之后,他不会再回到他的臃肿的控制器了。

不仅仅是其重用性,而且还有它良好的封装,为程序准备的强力测试器,它是事件驱动的,只需要很少的代码以及一个优秀的开发流就能够得到一个状态化的widget,它真酷。

分享到:
评论

相关推荐

    aspose-cells-8.5.2.jar

    aspose-cells-8.5.2破解免费版!aspose-cells-8.5.2破解免费版!aspose-cells-8.5.2破解免费版!aspose-cells-8.5.2破解免费版!

    aspose-cells-8.5.2.rar

    1. **安装和引用Aspose.Cells库**:根据所使用的开发环境,将Aspose.Cells库引入项目。 2. **加载Excel文件**:使用`Workbook`类加载Excel文件。 3. **配置转换设置**:根据需求设置PDF转换选项。 4. **执行转换**:...

    aspose-cells-9.0.0 - aspose-pdf-11.8.0

    标题"Aspose.Cells 9.0.0 - Aspose.Pdf 11.8.0"涉及的是两个知名软件组件,Aspose.Cells 和 Aspose.Pdf,它们都是Aspose产品系列的一部分,专门用于处理电子表格和PDF文档。这两个库在开发环境中广泛使用,允许...

    AsposeCells8.5.2

    在这个场景中,我们关注的是"AsposeCells8.5.2",这表明我们将探讨如何利用这个版本的Aspose.Cells将Excel文件转换为PDF格式。 首先,让我们深入了解Aspose.Cells的功能。它允许开发者通过编程方式与Excel工作簿...

    aspose-cells-8.5.2.zip

    aspose-cells-8.5.2.jar excel转pdf 亲测可用,方法:https://editor.csdn.net/md?not_checkout=1&articleId=117385452

    cells:查看Ruby和Rails的组件

    单元格使您可以将UI的一部分封装到视图模型的组件中。 视图模型或单元格是可以呈现模板的简单Ruby类。 但是,单元不仅仅为您提供模板渲染器。 它们允许适当的OOP,多态生成器,,视图继承,使用Rails帮助器,以捆绑...

    aspose-cells-20.4.jar

    aspose-cells-20.4.jar

    aspose-cells-8.5.2.jar excel转pdf(无水印)

    1. **添加依赖**: 在你的Java项目中,你需要将`aspose-cells-8.5.2.jar` 添加到类路径中。如果你使用Maven或Gradle,可以通过在pom.xml或build.gradle文件中指定相应的依赖。 2. **创建Workbook对象**: 使用Aspose....

    aspose-words-21.11 aspose-cells-21.11 无水印jar以及使用说明

    本资源提供的"Aspose-Words-21.11"和"Aspose-Cells-21.11"是这两个库的特定版本,无水印的jar文件,适用于Java开发环境。这两个库为开发者提供了强大的功能,可以方便地在应用程序中创建、读取、修改和转换这些文件...

    Aspose-Cells-8.5.2.jar附带文档说明

    在本文中,我们将深入探讨Aspose.Cells的核心功能,如何将Excel转换为PDF,以及如何在Java应用程序中使用Excel模块。 1. Aspose.Cells核心功能: - **创建和编辑电子表格**:Aspose.Cells允许程序员创建新的电子...

    aspose-cells-8.5.2-实现excel转pdf.zip

    在使用Aspose.Cells进行Excel到PDF的转换时,首先需要确保你已经正确地将`aspose-cells-8.5.2.jar`库添加到你的Java项目中。这通常通过构建工具(如Maven或Gradle)的依赖管理来完成,或者手动将JAR文件放入项目的类...

    AsposeCells 8.5.2破解

    AsposeCells 8.5.2破解,附带一个小demo

    Aspose.words Aspose.cells Aspose.slides 破解版jar,包含亲测的demo工程。

    aspose-slides-18.7.jar 用来将ppt文件转为pdf aspose-cells-18.9.jar 用来将excel文件转为pdf aspose-words-18.6.jar 用来将word文件转为pdf 破解版亲测没有水印。jar包和license.xml都在工程的lib目录里。

    Aspose-Cells-8.5.2.jar

    Aspose.Cell文档说明包含jar包和证书,excel转PDF,excel模块使用等Aspose.Cell文档说明包含jar包和证书,excel转PDF,excel模块使用等Aspose.Cell文档说明包含jar包和证书,excel转PDF,excel模块使用等Aspose.Cell...

    Aspose.Cells.dll组件

    Aspose.Cells是一个广受赞誉的电子表格组件,支持所有Excel格式类型的操作,用户无需依靠Microsoft Excel也可为其应用程序嵌入读写和处理Excel数据表格的功能。Aspose.Cells可以导入和导出每一个具体的数据,表格和...

    Aspose.Cells12个版本的不信没你用的

    Aspose.Cells是一款强大的电子表格处理库,由Aspose公司开发,广泛应用于.NET、Java、Python、Android等平台,用于在应用程序中创建、编辑、显示和转换Excel文件。它提供了丰富的功能,包括公式计算、图表创建、数据...

    Ruby-CellsRuby和Rails视图组件

    Ruby-Cells是一个强大的Ruby库,专门用于构建复杂的Rails视图组件。它允许开发者将视图逻辑分解成独立、可重用的部分,提高了代码的可维护性和可读性。Cells的设计理念是将视图拆分为小型、自包含的单元,每个单元都...

    aspose-cells-8.5.2.jar带license.xml

    aspose-cells-8.5.2.jar license.xml亲测可用 导出excel多一个sheet,提示如下:Evaluation Only. Created with Aspose.Cells for Java.Copyright 2003 - 2023 Aspose Pty Ltd. try { Resource resource = new ...

Global site tag (gtag.js) - Google Analytics