阳光不锈

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: :: 管理 ::

2009年5月4日

摘要: 在一个基于MVC的Web应用程序中,应用程序逻辑以及数据的存取是由MVC中的C,也就是控制器来完成的。因此,深刻地理解MVC框架所提供控制器对于开发一个高效、可升级、稳定的应用程序是十分必要的。RoR也不例外。   RoR中所提供的控制器叫动作控制器(ActionController)。本文将主要讨论动作控制器所提供的几种服务,以及如何使用动作控制器。  什么是动作控制器  在RoR中,动作包(A... 阅读全文
posted @ 2009-05-04 17:34 靳小透 阅读(183) 评论(0) 推荐(0) 编辑

摘要: 代码块:可以和方法调用关联的一系列代码,就好像这些代码是方法的参数一样,这是一个令人难以置信的强大特性。你可以使用代码块实现回调(但不像Java的匿名内部类那么简单),传递一系列代码(但要比C的函数指针更加复杂),和实现迭代器。代码块是用大括号或者do...end括起来的一系列代码。{puts"Hello"}#这是一个代码块do#club.enroll(person)#这也是代码块person.s... 阅读全文
posted @ 2009-05-04 16:59 靳小透 阅读(237) 评论(0) 推荐(0) 编辑

摘要: 在Ruby的一切都是一个对象。甚至一个代码块也是一个对象!在Ruby中,代码对象被称为代码块。你可以把代码块想像成小的程序单元。它们包含Ruby代码并且能够在执行它们时转入到方法中。在Python,C和Java中与之类似的概念是函数指针,匿名函数,内部类和回调函数。  Ruby代码块的语法是,把Ruby代码放在大括号之间或放在do/end命令之间。如下所示: { #这是一个代码块... } do ... 阅读全文
posted @ 2009-05-04 16:55 靳小透 阅读(217) 评论(0) 推荐(0) 编辑

摘要: 在Ruby中,一切都是对象。更精确地说,Ruby中的一切都是一个具有完整功能的对象。因此,在Ruby中,数字4,定点数3.14和字符串"Hi"都是对象。显然,它们是有点"特殊"的,因为你不必使用new方法来创建它们。代之的是,你使用例如"literal 4"这样的形式来创建一个代表数字4的对象的实例。  然而,对于绝大多数人来说,学习一种新的编程语言时,首先理解该语言提供的"标准"类型是非常有用的... 阅读全文
posted @ 2009-05-04 15:09 靳小透 阅读(397) 评论(0) 推荐(0) 编辑

摘要: 输入输出  在所有的本系列文章中,在编写Ruby代码时都使用了大量的Ruby标准输出方法。其中,最为常用的是print和puts方法,有关其使用细节不再赘述。  所有这些和其它处理输入和输出的方法都定义于Kernel模块中。这个Kernel模块又被包含在Object类中。因此,Kernel的方法出现在每一个对象中。在输出方面,Kernel定义了print,printf,putc和IO类和两个子类(... 阅读全文
posted @ 2009-05-04 14:07 靳小透 阅读(418) 评论(0) 推荐(0) 编辑

摘要: 就象许多程序语言一样,Ruby也提供了完整的数据结构来存储和管理数据与对象。数组是使用方括号和用逗号隔开的单个对象参考列表创建的。 presidents=["John","Richard","Gerald","Ronald","George","William"];   为了更为容易地创建一个充满单词的数组,Ruby提供了一个特殊的标志来消除双引号和逗号,见下面例子: presidents= %w... 阅读全文
posted @ 2009-05-04 11:32 靳小透 阅读(925) 评论(0) 推荐(0) 编辑

摘要: 这里我就不累述 Ruby 语言的历史了。如果您还不了解 Ruby,官方网站 www.ruby-lang.org 是最好的去处。而对于已经了解 Ruby 的各位,我在此给出我爱上这门(相对比较)新的语言的理由。 Ruby 是面向对象语言。 这意味着什么呢?的确,关于“什么是 OOP”,每十位程序员当中恐怕就有十二种看法。这个问题我留待您自己判断。而就特征而言,Ruby 提供了... 阅读全文
posted @ 2009-05-04 10:00 靳小透 阅读(163) 评论(0) 推荐(0) 编辑