軟件絕對領(lǐng)域

          2007年8月31日

          http://thekaiway.com
          posted @ 2007-11-12 16:53 _Kai_ 閱讀(275) | 評論 (0)編輯 收藏
          原文地址
          下午無聊翻譯一下,看看ruby官方怎么和java對比

          相同點:

          類似于java,在ruby中:

            內(nèi)存管理都是由GC(garbage collector)負(fù)責(zé)。
            都是強(qiáng)類型語言。
            都有public,private,protected的方法可見性之分。
            都有嵌入式文檔工具(ruby的叫做RDoc)。rdoc生成的文檔看起來非常像由javadoc生成的。


          不同:

          于java不同的是,在ruby中:

          你不必編譯代碼,你只需要直接運行代碼。
          Gui開發(fā)包不同。比如,ruby的用戶會嘗試WxRuby,F(xiàn)XRuby,Ruby-GNOME2,或者基于Ruby Tk庫。
          你要在定義任何事物(像class)后面加上關(guān)鍵字end,而不是用花括號({})來包圍代碼塊。
          使用了require代替了import。
          所有的成員變量(屬性)都是private級的。在類外訪問任何事物要通過方法調(diào)用。
          什么都是對象,包括2和3.14159。
          沒有靜態(tài)類型檢查。
          變量名都只是標(biāo)簽,它們沒有與類型相關(guān)。
          不用聲明變量類型,你只需要賦值給新的變量名就可以了(例子,a = [1,2,3] 相當(dāng)于 int[] a = {1,2,3};)。
          沒有類型強(qiáng)制轉(zhuǎn)換這個概念,只管調(diào)用方法就好了。
          用 foo = Foo.new( "hi") 取代這樣新建對象的方法 Foo foo = new Foo( "hi" )。
          構(gòu)造方法一直都叫“initialize”,不是和class同名的方法。
          使用“混入” 代替 “接口”。
          YAML 比 XML 更受歡迎。
          這里用nil代替null。
          ==和equals()方法處理方法不同。當(dāng)你想要測試相等性時就使用 == 操作符(就像Java的equals()方法)。當(dāng)要想要知道兩個對象是否是同一個時就使用equal?()方法(就像Java中的==)。
          posted @ 2007-10-07 19:55 _Kai_ 閱讀(621) | 評論 (0)編輯 收藏
               摘要: 早上看了Ruby論壇中有人(blackanger)寫的TDD by Ex這本書里的資金例子,自己也想寫一寫。和他不同,我是全過程詳細(xì)寫出來。第一次用Ruby寫代碼,第一次用Ruby的Unit框架,而且下午睡醒后迷迷糊糊寫的,可能有很多錯誤,請多多指正。  閱讀全文
          posted @ 2007-10-03 21:02 _Kai_ 閱讀(850) | 評論 (0)編輯 收藏
          在Ubuntu下通過apt包管理器安裝ror環(huán)境是很方便的。我自己寫了一個腳本:

          sudo apt-get install build-essential gcc g++ libssl0.9.8 libssl0.9.8-dbg libssl-dev build-essential
          sudo apt-get install ruby
          sudo apt-get install libzlib-ruby rdoc ri irb ruby1.8-dev
          sudo apt-get install libzlib-ruby
          sudo apt-get install rubygems
          sudo gem update --system
          sudo gem install rails -y
          sudo gem install rails --include-dependencies
          sudo gem install mongrel -y
          sudo gem install mongrel_cluster --include-dependencies
          sudo apt-get install libopenssl-ruby
          sudo apt-get install libgd-ruby1.8 libyaml-ruby libzlib-ruby
          sudo apt-get install imagemagick
          sudo apt-get install libmagick9-dev ruby1.8-dev
          sudo gem install RMagick? -y


          直接把上面的一串保存在一個文本文件中,然后用sh命令執(zhí)行就可以一步安裝完成了。

          我發(fā)現(xiàn)網(wǎng)上很多在安裝gem的命令都是錯的,在Ubuntu里gem包不是ruby的gem,ubuntu下gem包的解釋如下:
          Graphics Environment for Multimedia - PureData library
          Gem is a loadable library for puredata, which adds OpenGL graphics rendering
          and animation to Pd.? Pd is a graphical programming language and computer
          music system.

          這個包和ruby一點關(guān)系都沒有。正確的應(yīng)該是rubygems包。不知道為什么到處有人都是寫sudo?apt-get?install gem的,很多都是轉(zhuǎn)載,有的連轉(zhuǎn)載都不聲明,直接試都不試把錯的東西直接貼出來。

          另有人說源里的gem很過時,其實也不會。
          posted @ 2007-08-31 12:28 _Kai_ 閱讀(1994) | 評論 (0)編輯 收藏

          公告

          碼農(nóng)一枚

          歡迎大家發(fā)E-mail到 與我討論關(guān)于軟件開發(fā)的各種看法。

          最新Blog地址:http://thekayway.com/

          導(dǎo)航

          <2007年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          統(tǒng)計

          常用鏈接

          留言簿(2)

          隨筆分類(21)

          隨筆檔案(18)

          常去的地方

          技術(shù)站點

          朋友的Blog

          搜索

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 滕州市| 泉州市| 河北区| 尖扎县| 天全县| 英吉沙县| 自贡市| 黎城县| 花垣县| 黄浦区| 屯昌县| 都兰县| 南木林县| 汝南县| 固镇县| 七台河市| 彭泽县| 溧水县| 东至县| 吴江市| 西贡区| 若尔盖县| 尼木县| 沁阳市| 蓬莱市| 奎屯市| 双流县| 和顺县| 江门市| 汾阳市| 卢氏县| 博湖县| 浙江省| 百色市| 吐鲁番市| 奉新县| 息烽县| 仁寿县| 舟曲县| 馆陶县| 临江市|