﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-软件绝对领域-随笔分类-Rails</title><link>http://www.blogjava.net/maninred/category/24911.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 12 Oct 2007 08:24:54 GMT</lastBuildDate><pubDate>Fri, 12 Oct 2007 08:24:54 GMT</pubDate><ttl>60</ttl><item><title>ruby-lang上Ruby与Java的对比文章</title><link>http://www.blogjava.net/maninred/archive/2007/10/07/150891.html</link><dc:creator>轩朗=maninred</dc:creator><author>轩朗=maninred</author><pubDate>Sun, 07 Oct 2007 11:55:00 GMT</pubDate><guid>http://www.blogjava.net/maninred/archive/2007/10/07/150891.html</guid><wfw:comment>http://www.blogjava.net/maninred/comments/150891.html</wfw:comment><comments>http://www.blogjava.net/maninred/archive/2007/10/07/150891.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/maninred/comments/commentRss/150891.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/maninred/services/trackbacks/150891.html</trackback:ping><description><![CDATA[
		<a href="http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-java/" target="_blank">原文地址</a>
		<br />
下午无聊翻译一下，看看ruby官方怎么和java对比<br /><br />
相同点：<br /><br />
类似于java，在ruby中：<br /><ul><br />
内存管理都是由GC（garbage collector）负责。<br />
都是强类型语言。<br />
都有public，private，protected的方法可见性之分。<br />
都有嵌入式文档工具（ruby的叫做RDoc）。rdoc生成的文档看起来非常像由javadoc生成的。<br /></ul><br /><br />
不同：<br /><br />
于java不同的是，在ruby中：<br /><br />
你不必编译代码，你只需要直接运行代码。<br />
Gui开发包不同。比如，ruby的用户会尝试WxRuby，FXRuby，Ruby-GNOME2,或者基于Ruby Tk库。<br />
你要在定义任何事物（像class）后面加上关键字end，而不是用花括号（{}）来包围代码块。<br />
使用了require代替了import。<br />
所有的成员变量（属性）都是private级的。在类外访问任何事物要通过方法调用。<br />
什么都是对象，包括2和3.14159。<br />
没有静态类型检查。<br />
变量名都只是标签，它们没有与类型相关。<br />
不用声明变量类型，你只需要赋值给新的变量名就可以了（例子，a = [1,2,3] 相当于 int[] a = {1,2,3};）。<br />
没有类型强制转换这个概念，只管调用方法就好了。<br />
用 foo = Foo.new( "hi") 取代这样新建对象的方法 Foo foo = new Foo( "hi" )。<br />
构造方法一直都叫“initialize”，不是和class同名的方法。<br />
使用“混入” 代替 “接口”。<br />
YAML 比 XML 更受欢迎。<br />
这里用nil代替null。<br />
==和equals()方法处理方法不同。当你想要测试相等性时就使用 == 操作符（就像Java的equals()方法）。当要想要知道两个对象是否是同一个时就使用equal?()方法(就像Java中的==)。<img src ="http://www.blogjava.net/maninred/aggbug/150891.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/maninred/" target="_blank">轩朗=maninred</a> 2007-10-07 19:55 <a href="http://www.blogjava.net/maninred/archive/2007/10/07/150891.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TDDbyEx书中资金例子Ruby完整重现</title><link>http://www.blogjava.net/maninred/archive/2007/10/03/150296.html</link><dc:creator>轩朗=maninred</dc:creator><author>轩朗=maninred</author><pubDate>Wed, 03 Oct 2007 13:02:00 GMT</pubDate><guid>http://www.blogjava.net/maninred/archive/2007/10/03/150296.html</guid><wfw:comment>http://www.blogjava.net/maninred/comments/150296.html</wfw:comment><comments>http://www.blogjava.net/maninred/archive/2007/10/03/150296.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/maninred/comments/commentRss/150296.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/maninred/services/trackbacks/150296.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 早上看了Ruby论坛中有人（blackanger）写的TDD by Ex这本书里的资金例子，自己也想写一写。和他不同，我是全过程详细写出来。第一次用Ruby写代码，第一次用Ruby的Unit框架，而且下午睡醒后迷迷糊糊写的，可能有很多错误，请多多指正。&nbsp;&nbsp;<a href='http://www.blogjava.net/maninred/archive/2007/10/03/150296.html'>阅读全文</a><img src ="http://www.blogjava.net/maninred/aggbug/150296.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/maninred/" target="_blank">轩朗=maninred</a> 2007-10-03 21:02 <a href="http://www.blogjava.net/maninred/archive/2007/10/03/150296.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ubuntu下一步安装ruby on rails环境的脚本</title><link>http://www.blogjava.net/maninred/archive/2007/08/31/141691.html</link><dc:creator>轩朗=maninred</dc:creator><author>轩朗=maninred</author><pubDate>Fri, 31 Aug 2007 04:28:00 GMT</pubDate><guid>http://www.blogjava.net/maninred/archive/2007/08/31/141691.html</guid><wfw:comment>http://www.blogjava.net/maninred/comments/141691.html</wfw:comment><comments>http://www.blogjava.net/maninred/archive/2007/08/31/141691.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/maninred/comments/commentRss/141691.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/maninred/services/trackbacks/141691.html</trackback:ping><description><![CDATA[在Ubuntu下通过apt包管理器安装ror环境是很方便的。我自己写了一个脚本：<br /><br /><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 0, 0);">sudo apt-get install build-essential gcc g++ libssl0.9.8 libssl0.9.8-dbg libssl-dev build-essential <br />sudo apt-get install ruby<br />sudo apt-get install libzlib-ruby rdoc ri irb ruby1.8-dev<br />sudo apt-get install libzlib-ruby<br />sudo apt-get install rubygems<br />sudo gem update --system<br />sudo gem install rails -y<br />sudo gem install rails --include-dependencies<br />sudo gem install mongrel -y<br />sudo gem install mongrel_cluster --include-dependencies<br />sudo apt-get install libopenssl-ruby<br />sudo apt-get install libgd-ruby1.8 libyaml-ruby libzlib-ruby<br />sudo apt-get install imagemagick<br />sudo apt-get install libmagick9-dev ruby1.8-dev<br />sudo gem install RMagick  -y</span><span style="color: rgb(0, 0, 0);"><br /></span></div><br />直接把上面的一串保存在一个文本文件中，然后用sh命令执行就可以一步安装完成了。<br /><br />我发现网上很多在安装gem的命令都是错的，在Ubuntu里gem包不是ruby的gem，ubuntu下gem包的解释如下：<br />Graphics Environment for Multimedia - PureData library<br />Gem is a loadable library for puredata, which adds OpenGL graphics rendering<br />and animation to Pd.  Pd is a graphical programming language and computer<br />music system.<br /><br />这个包和ruby一点关系都没有。正确的应该是rubygems包。不知道为什么到处有人都是写<span style="color: rgb(0, 0, 0);">sudo apt</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">get install gem</span>的，很多都是转载，有的连转载都不声明，直接试都不试把错的东西直接贴出来。<br /><br />另有人说源里的gem很过时，其实也不会。<br /><img src ="http://www.blogjava.net/maninred/aggbug/141691.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/maninred/" target="_blank">轩朗=maninred</a> 2007-08-31 12:28 <a href="http://www.blogjava.net/maninred/archive/2007/08/31/141691.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《Web开发敏捷之道》勘误</title><link>http://www.blogjava.net/maninred/archive/2007/08/28/140559.html</link><dc:creator>轩朗=maninred</dc:creator><author>轩朗=maninred</author><pubDate>Tue, 28 Aug 2007 08:07:00 GMT</pubDate><guid>http://www.blogjava.net/maninred/archive/2007/08/28/140559.html</guid><wfw:comment>http://www.blogjava.net/maninred/comments/140559.html</wfw:comment><comments>http://www.blogjava.net/maninred/archive/2007/08/28/140559.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/maninred/comments/commentRss/140559.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/maninred/services/trackbacks/140559.html</trackback:ping><description><![CDATA[
		<br />
		<br />转载自：http://blog.csdn.net/bvbook/archive/2007/08/20/1751786.aspx<br /><br /><br />一、148 页<br /><br />英文： We check that the name is present and unique<br />原文：我们首先检查用户名与密码都不为空  <br /><br />二、148页<br />                        <br />英文：We check that the name is present and unique<br />原文：我们首先检查用户名与密码都不为空<br />改为：我们首先检查用户名不为空<br />                <br />三、153页<br /><br />代码中 flash[:notice] 应为flash.now[:notice]<br /><br />四、310页<br />                        <br />列表中第二个“使用save方法时”应为“使用save!方法时“<br />                        <br />五、407页<br />                        <br />英文：Instead, they provide a regular (and simple) interface to a set of resources.<br />原文：它们只要为一组资源提供一个普通（并且简单）的接口就行了<br />改为：它们只要为一组资源提供一个规则（并且简单）的接口就行了<br />                <br />六、408页<br /><br />两处的 /article/1 应为/articles/1<br />                                <br />七、456页<br />                        <br />原文：默认配置下，cache 只有在产品环境下才生效<br />改为：默认配置下，cache 只有在生产环境下才生效<br />                <br />八、535页<br />                        <br />原文：这个辅助方法就是把 remote_function 一个remote_function<br />改为：这个辅助方法就是把一个remote_function<br /><br />九、554页<br />                        <br />原文：表单可以这些方法交互以提交用户输入的内容<br />改为：表单可以与这些方法交互以提交用户输入的内容<br />                <br />十、106页 代码<br />                <br />@product = Product.find(params[:id])<br />应为        <br />product = Product.find(params[:id])<br />110、117相应的代码也需要改正。<br /><br /><br />我自己还发现了：<br />P119<br />代码<br /><br />    &lt;%= form_remote_tag :url =&gt; { :action =&gt; :add_to_cart, :id =&gt; product } %&gt;  <br />     &lt;%= submit_tag "Add to Cart" %&gt;  <br />    &lt;% end %&gt;  <br />应为：<br />代码<br />   &lt;%= form_remote_tag :url =&gt; { :action =&gt; :add_to_cart, :id =&gt; product } %&gt;  <br />      &lt;%= submit_tag "Add to Cart" %&gt;  <br />   &lt;%= end_form_tag %&gt;  <br /><br /><br />106页 <br />代码<br />@product = Product.find(params[:id])<br />应该是<br />product = Product.find(params[:id]) <br />                        <br />                        <br /><br />                <br /><br /><img src ="http://www.blogjava.net/maninred/aggbug/140559.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/maninred/" target="_blank">轩朗=maninred</a> 2007-08-28 16:07 <a href="http://www.blogjava.net/maninred/archive/2007/08/28/140559.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;转载&gt;rubygems 0.9.2 升级问题解决</title><link>http://www.blogjava.net/maninred/archive/2007/08/13/136531.html</link><dc:creator>轩朗=maninred</dc:creator><author>轩朗=maninred</author><pubDate>Mon, 13 Aug 2007 15:42:00 GMT</pubDate><guid>http://www.blogjava.net/maninred/archive/2007/08/13/136531.html</guid><wfw:comment>http://www.blogjava.net/maninred/comments/136531.html</wfw:comment><comments>http://www.blogjava.net/maninred/archive/2007/08/13/136531.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/maninred/comments/commentRss/136531.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/maninred/services/trackbacks/136531.html</trackback:ping><description><![CDATA[今晚想update一下rails，结果在升级gem时出现错误。搜索了一下找到答案<br><br>升級Rubygems到0.9.2时，會產生一個Error：<br><br> ERROR:&nbsp;&nbsp;While executing gem ... (NoMethodError)<br> &nbsp;&nbsp;&nbsp;&nbsp;undefined method `refresh' for #&lt;......&gt;<br><br>解决方法：<br>删除掉source_cache文件，win是在$ruby安装目录\lib\ruby\gems\1.8，linux是在/usr/local/lib/ruby/gems/1.8/source_cache下。<br><br>运行gem update --system升级<br><br>转载自：http://www.cnzxh.net/blog/Index.php?do=readArticle&amp;articleId=145<br>  <img src ="http://www.blogjava.net/maninred/aggbug/136531.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/maninred/" target="_blank">轩朗=maninred</a> 2007-08-13 23:42 <a href="http://www.blogjava.net/maninred/archive/2007/08/13/136531.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>