Nexus Weblogging
ChinaonRails
You are here ChinaonRails > Ruby on Rails > Rails > ROR学习笔记
ROR学习笔记
本频道中共有 10 条消息,返回讨论版 Rails,10 个其他相关频道

ROR学习笔记  ROR学习笔记    记录Ruby On Rails的学习心得

初学Ruby感受 
Published on 2007-12-9 20:59:57 by 棍子
初次听说Ruby那是今年3月份左右,当听到Ruby的快速编程时,我还有点不相信,总认为Java已经很强大,便捷了,很难相信Ruby比它更加强大,便捷。但是随着老师还有Todayhill的介绍,我开始对它动心了。于是快速看了Ruby的介绍,简单的语法,然后按着Programing ruby上写了几个小程序,发现Ruby两大优势:

更加面向对象;

程序编写更加快捷,工作量小。 


收藏到:Del.icio.us

DB2ONRAILS 
Published on 2007-12-7 11:36:40 by todayhill
    最近公司的一次会上得了一件DB2 Express-C的T-shirt. 我对DB2 EXP的印象还不错,总有短小精干的感觉,当然,最主要一点就是它免费----可能我对所有免费的东西印象都不错。

    DB2 team把支持动态语言作为一个未来工作的重点,当然ROR的支持就是重中之重了。在DB2的开发team中特别抽出了人专门做这个DB2OnRails的开发.这个项目在AlphaWorks上也有.在那里,它叫D...

收藏到:Del.icio.us

不能结束的ROR 
Published on 2007-12-5 10:14:02 by todayhill
    今天在GOOGLE上搜索ROR,第一页就有我们这个BLOG。转眼一看,上篇BLOG居然都是一年前了,这一年过的好快,也好忙,直到现在,感觉刚刚松了一小口气。

     ROR在这一年里也在如设想般发展,可是企业应用似乎并没有呈井喷方式出现。

     现在我继续关注ROR,正好有了一个DH的空间,有机会写点自己的小应用了。最近正在做一个RO...

收藏到:Del.icio.us

Rails 4 days中文版(第一天) 
Published on 2006-7-30 22:04:20 by foodboox

ROR的学习总是断断续续的,有一部分原因是自己英文水平不行,读起参考手册那种比较庞大的东西感觉有些吃力,最近算是有些时间,所以找来《Rails 4 days》这个小家伙希望再迅捷的学习学习ROR的一些精华。

一边看一边翻译吧,虽然不是很难,但自己翻译能力实在一般,所以这东西只是个实验品,顺便也督促一下自己的学习进度,先发个介绍和第一天的内容,以后会慢慢补上,希望对大家有用。

点此下载


收藏到:Del.icio.us

项目终于基本完成 
Published on 2006-4-22 11:27:38 by todayhill

     经过几个月的学习和努力,我这个用ROR做的进销存系统终于告一段落了。因为一直都很忙,都没时间上来把后面用到的东西写上。在这段时间我用到了ROR的login_generator 好像大概是这么个名字,就是用来自动生成系统的权限验证部分的。另外还用到了file_column,用来进行文件上传的组件。除此之外,还在几个地方用了AJAX,也摩登了一把。总体来说,ROR里面资源还是很丰富的,需要的东西基本都可以找的到。

    当然,经过这一个项目,对ROR的认识又深了一步,也发现了一些它的一些缺点。总体来说,感觉它距离大规模企业级应用还有不近的路要走。我下来会尽量找时间来好好总结一下我用到的ROR相关的技术和一些个人体会。

    我的个人邮箱是todayhill@tom.com,如果有朋友想跟我联系可以给我写信。另外,www.railscn.com  才是人才济济,我个人也在上面获得了大量的帮助.大家可以常常去看一看.


随机文章:

初学Ruby感受 2007-12-09
DB2ONRAILS 2007-12-07

收藏到:Del.icio.us

Ruby的callback实现 
Published on 2005-12-23 11:45:45 by 夜---

    初学Ruby给我留下印象最深的callback的实现,即Rubyblock。它给我的感觉是很新颖,很有想法,也很大胆。

以前我也曾接触过一些其他语言的callback的实现,但都没有真正理解其中的精髓。直到看了Rubyblock,我才突感茅塞顿开,好像积压在心头的一块大石一下子被拿开了一样。Ruby似乎就是为了block而生的(好像有些绝对了,只是为了表达一下喜悦的心情:P)。

    下面就是一个Rubyblock的小例子:

        class SayHello

                    def say_hello

                                hello = ‘hi ’

                                yield hello

                    end

        end

        SayHello.say_hello{|greeting| print greeting, ‘tracy’}

    结果如下:

        hi tracy

    它的执行过程是这样的,系统调用SayHellosay_hello方法,并带有一个block,即{}中的代码,以后简称“块”。块中的代码首先被记录下来,然后开始执行say_hello方法,先是将‘hi’赋值给变量hello,接着遇到yield关键字,这时之前被记录下来的块中的代码会将yield取代,而yield后面的变量hello赋给块里||所夹的变量,这时方法say_hello的代码就好像是下面这样:

        def say_hello

                    hello = ‘hi ’

                    print ‘hi’,’tracy

        end

    它所产生的结果会是hi tracy就不难理解了。

    我觉得这种机制的新颖之处就在于它将一段代码作为了方法的参数,这样就大大增强了方法的灵活性,而如此灵活的设计并非一定是好事,它就像一把双刃剑,程序员需要理解它更深层次的意思,明白Ruby语言设计者的良苦用心,正确的使用,这样它必将发挥巨大的作用!否则,代码将会复杂难懂,破败不堪。


收藏到:Del.icio.us

RAILS和轻量级JAVA架构的的MVC哲学 
Published on 2005-12-22 21:21:35 by todayhill

    随着这些天来对RAILS的学习,渐渐感受着ROR开发快速所带来的欣喜,可是在这惊喜过后也自然把它跟JAVA架构做了一些比较.

    这些天来最大的感觉就是,JAVA的架构比ROR要"干净"的多.而这里的"干净"与"不干净"实际上却正是我接触OO以来在一个含混不清的问题,归根结底就是面向对象里面"类的封装范围".

    记得在以前刚开始学习OO的时候就说"类可以封装一系列属性和方法".好,那时候经常以Persion来做例子,人有身高有体重,有爱好有性格,这些都是属性,人还能吃饭能睡觉,这些是方法,好了,这些都是人的特征,所以都被"人"这个类来封装.多么完美的OO,我们简直是在创造世界!可是现实通常却不像想的那么完美,我想上帝创造世界的工作也一定不是一件轻松的事情.我们的系统通常要具有分布性,对象应该可以在不同的机器上传来传去,那好,为了这样的要求,在J2EE的架构设计中,常常要把M这一层再分为静态层和动态层两个层次,这样也就有了我们的service和domain以及他们之间的dao.软件设计中,通常是通过引入一个中间层来解决一些问题,而我们这里引入的中间层把"静"和"动"分开了.我想这里不仅仅是为了解决分布的问题,通常经验还告诉我们,"动"的部分改变的几率是远远大于"静"的.所以用OO来把这"动"和"静"分别封装.可这又跟我们刚开始的类设计理论似乎有些不一样了,不过,这样的设计是为了实际而做的牺牲还是对OO的活学活用呢?恐怕说出来也会是人们一个争论的话题吧.

    而ROR似乎对OO更友好,学过OO的人很容易就能理解它,它的model封装了静和动两部分,包括一些验证的操作都放在model里面了,根本不分service和domain这两部分.这一切都符合我们刚开始所学到的OO,可是~有了对JAVA的理解和使用经验,我越来越觉得,跟JAVA相比这分明是一种"肮脏",混杂的类设计.不过,这样做也是有它的道理的,ROR里面的对象可以分布传输吗?分布传输过去的对象,里面的方法还可以调用吗?如果这个方法访问了本地资源,这一调用出错了怎么办?这一切的解决方法,可能就是"不让对象分布出去"吧,至少我现在还没有在ROR上看到有讲类似RMI和EJB级别的东西,它似乎是用WEB SERVICE来代替这些作为分布的解决方案,可是上面那些问题在WEB SERVICE中是怎么做的,我就没有研究过了.

    上面的一些话只是现阶段的一些个人感觉,也不排除随着对ROR的学习深入而有所改变的可能.


收藏到:Del.icio.us

ROR的表单validator 
Published on 2005-12-21 23:59:33 by todayhill


收藏到:Del.icio.us

rails笔记(动手前先看书) 
Published on 2005-12-21 1:04:46 by foodboox

        之所以写这篇日志是因为在开始rails时浪费了大量的时间在调试环境上,因为很久前按照一个教程搭建过ROR工程,所以理所应当的感觉很简单,但相隔很长时间很多基础的概念都没有记住,所以犯了很低级的错误,要是动手前温习一下教程或者看看英文文档就不至于浪费时间了。

        看山给我介绍了redrails这个IDE,因为我在win上做有没有装eclipse,所以只下了单独运行的文件,还好是绿色软件,只要有java环境就可以了,在第一步建立工程时问题随之出现,首先是workspace,这个指定一个公共目录就好了,比如“railsCode”,以后每个项目都放在里面,IDE建立工程其实等价于命令行workspace目录下运行rails 工程名,建好后会产生所有rails需要的基本目录结构,包括script里面的server(注:经我测试在win下用redrails直接运行项目的server会经常出错,而且严重到直接关闭IDE抛出异常,再次启动时server里找不到启动项,不过用命令行找到workspace目录下运行ruby script\server可以启动,我在这里费了大劲,起初还以为是项目部署的问题~),访问127.0.0.1:3000会出现Congratulations页面,这个页面就是项目\public\index.html页面,数据库配置文件,也就是我们平时写脚本所谓的CONN是项目\config\database.yml文件,在这里设置mysql设置密码似乎还会出现问题~改写后要重启server,切记!

        最令我难堪的问题是项目访问路径,没看书我理所应当的按照127.0.0.1:3000\项目名访问,结果总是找不到路径(竟然为了这么一个问题熬到凌晨3点多,压根就没考虑查一下资料),其实是根本没有了解清rails的url机制,虽然现在不是了解得很全面,但知道以现在这种server的启动方式根本不存在虚拟目录的问题,也就是直接用127.0.0.1:3000访问的就是server所在项目的首页,而其他页面完全靠controller类来指定(controller类文件放在项目\app\controllers目录下),比如我新建test_controller.rb(用redrails时只要命名controller叫test即可,命令行需在项目下运行ruby script\generate controller test),这是项目中会同时产生四个文件app\controllers\test_controller.rb; app\helpers\test_helper.rb; app\view\test\; test\functional\test_controller_test.rb

此时访问127.0.0.1:3000\test会出现“

Unknown action

No action responded to index


查资料后修改test_controller.rb内容为“

class TestController < ApplicationController
 def index
  render_text"这是测试页"
 end
end

”后再次访问以上路径就会出现“这是测试页”的字样了,而定义其他url同理增加新的def就可以了,不过是否所有url都要这样来定义我还没有搞清?rails里model实现比较简单,单数对复数即model里定义test.rb则DB建tests表影射,然后在controller里的test_controller.rb加scaffold:test就ok了,最基础的list、show、edit、delete操作及表单在这之后自动生成127.0.0.1:3000\test\list

可以自己定义页面模版,比如想订制list页面的,就在test_controller.rb里加入

"def list...end”然后编辑view\test\list.rhtml即可,由于...内容与模版中动态程序的书写有关,有时间还需要进一步研究,大概就是数据库对象的声明一类。

PS:太晚了,随做随学随写吧


收藏到:Del.icio.us

关于ROR+MYSQL的中文编码问题 
Published on 2005-12-20 14:06:45 by todayhill

MYSQL的中文问题确实非常麻烦,在JAVA开发中就曾经耗费我无数脑细胞来解决这个问题,想必在ROR下面也不是一个非常容易的事情,这个帖子谈论这个话题很全面了,在这里记录一下:

http://www.railscn.com/viewtopic.php?t=211


随机文章:

初学Ruby感受 2007-12-09
DB2ONRAILS 2007-12-07

收藏到:Del.icio.us

10 items

欢迎使用 RSS 阅读器订阅本页种子 http://ror.blogbus.com/index.rdf
© 2007 A Jesse Cai Production   -   About   -   京ICP备07020911号
a site powered by Project Babel