軟件絕對領(lǐng)域

          2007年8月22日

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

          相同點(diǎn):

          類似于java,在ruby中:

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


          不同:

          于java不同的是,在ruby中:

          你不必編譯代碼,你只需要直接運(yùn)行代碼。
          Gui開發(fā)包不同。比如,ruby的用戶會(huì)嘗試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)換這個(gè)概念,只管調(diào)用方法就好了。
          用 foo = Foo.new( "hi") 取代這樣新建對象的方法 Foo foo = new Foo( "hi" )。
          構(gòu)造方法一直都叫“initialize”,不是和class同名的方法。
          使用“混入” 代替 “接口”。
          YAML 比 XML 更受歡迎。
          這里用nil代替null。
          ==和equals()方法處理方法不同。當(dāng)你想要測試相等性時(shí)就使用 == 操作符(就像Java的equals()方法)。當(dāng)要想要知道兩個(gè)對象是否是同一個(gè)時(shí)就使用equal?()方法(就像Java中的==)。
          posted @ 2007-10-07 19:55 _Kai_ 閱讀(621) | 評論 (0)編輯 收藏
               摘要: 早上看了Ruby論壇中有人(blackanger)寫的TDD by Ex這本書里的資金例子,自己也想寫一寫。和他不同,我是全過程詳細(xì)寫出來。第一次用Ruby寫代碼,第一次用Ruby的Unit框架,而且下午睡醒后迷迷糊糊寫的,可能有很多錯(cuò)誤,請多多指正。  閱讀全文
          posted @ 2007-10-03 21:02 _Kai_ 閱讀(850) | 評論 (0)編輯 收藏
          在Ubuntu下通過apt包管理器安裝ror環(huán)境是很方便的。我自己寫了一個(gè)腳本:

          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


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

          我發(fā)現(xiàn)網(wǎng)上很多在安裝gem的命令都是錯(cuò)的,在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.

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

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


          轉(zhuǎn)載自:http://blog.csdn.net/bvbook/archive/2007/08/20/1751786.aspx


          一、148 頁

          英文: We check that the name is present and unique
          原文:我們首先檢查用戶名與密碼都不為空 ?

          二、148頁
          ?? ??? ??? ??? ??? ??? ?
          英文:We check that the name is present and unique
          原文:我們首先檢查用戶名與密碼都不為空
          改為:我們首先檢查用戶名不為空
          ?? ??? ??? ??? ?
          三、153頁

          代碼中 flash[:notice] 應(yīng)為flash.now[:notice]

          四、310頁
          ?? ??? ??? ??? ??? ??? ?
          列表中第二個(gè)“使用save方法時(shí)”應(yīng)為“使用save!方法時(shí)“
          ?? ??? ??? ??? ??? ??? ?
          五、407頁
          ?? ??? ??? ??? ??? ??? ?
          英文:Instead, they provide a regular (and simple) interface to a set of resources.
          原文:它們只要為一組資源提供一個(gè)普通(并且簡單)的接口就行了
          改為:它們只要為一組資源提供一個(gè)規(guī)則(并且簡單)的接口就行了
          ?? ??? ??? ??? ?
          六、408頁

          兩處的 /article/1 應(yīng)為/articles/1
          ?? ??? ??? ??? ??? ??? ??? ??? ?
          七、456頁
          ?? ??? ??? ??? ??? ??? ?
          原文:默認(rèn)配置下,cache 只有在產(chǎn)品環(huán)境下才生效
          改為:默認(rèn)配置下,cache 只有在生產(chǎn)環(huán)境下才生效
          ?? ??? ??? ??? ?
          八、535頁
          ?? ??? ??? ??? ??? ??? ?
          原文:這個(gè)輔助方法就是把 remote_function 一個(gè)remote_function
          改為:這個(gè)輔助方法就是把一個(gè)remote_function

          九、554頁
          ?? ??? ??? ??? ??? ??? ?
          原文:表單可以這些方法交互以提交用戶輸入的內(nèi)容
          改為:表單可以與這些方法交互以提交用戶輸入的內(nèi)容
          ?? ??? ??? ??? ?
          十、106頁 代碼
          ?? ??? ??? ??? ?
          @product = Product.find(params[:id])
          應(yīng)為?? ??? ?
          product = Product.find(params[:id])
          110、117相應(yīng)的代碼也需要改正。


          我自己還發(fā)現(xiàn)了:
          P119
          代碼

          ??? <%= form_remote_tag :url => { :action => :add_to_cart, :id => product } %> ?
          ???? <%= submit_tag "Add to Cart" %> ?
          ??? <% end %> ?
          應(yīng)為:
          代碼
          ?? <%= form_remote_tag :url => { :action => :add_to_cart, :id => product } %> ?
          ????? <%= submit_tag "Add to Cart" %> ?
          ?? <%= end_form_tag %> ?


          106頁
          代碼
          @product = Product.find(params[:id])
          應(yīng)該是
          product = Product.find(params[:id])
          ?? ??? ??? ??? ??? ??? ?
          ?? ??? ??? ??? ??? ??? ?

          ?? ??? ??? ??? ?

          posted @ 2007-08-28 16:07 _Kai_ 閱讀(476) | 評論 (2)編輯 收藏
          前天用我的X1650GT和同學(xué)換了一塊7300GT,在Ubuntu折騰了一下,終于如愿以償?shù)亻_啟了Compiz Fusion的效果,并且用gDesklets在桌面加了一些實(shí)用工具挺好玩的。

          過程也挺折騰的,先是安裝了ati的顯卡驅(qū)動(dòng)后要裝nv的驅(qū)動(dòng)碰到問題,然后再是開啟特效后窗口沒有了邊框。在安裝ati驅(qū)動(dòng)后裝nv的驅(qū)動(dòng)先要?jiǎng)h除幾個(gè)庫文件(libGL.so),看他提示哪個(gè)就刪除哪個(gè),然后nv驅(qū)動(dòng)才可以正常安裝。nv顯卡開特效的邊框的問題 只要運(yùn)行一下sudo nvidia-xconfig --add-argb-glx-visuals就OK了。

          現(xiàn)在上圖看看:









          ?




          posted @ 2007-08-28 16:03 _Kai_ 閱讀(649) | 評論 (0)編輯 收藏
          用了Ubuntu7.04一個(gè)多星期了覺得挺很不錯(cuò),很多方面比在windows下好很多。方便的硬盤安裝。一開始是在家里的電腦安裝的,之后把硬盤拿到學(xué)校的電腦一插上去就可以用了,只需在命令行界面配置顯卡和校園網(wǎng)就OK了。Ubuntu的硬件的兼容性真是沒得說,還有人還制作了一個(gè)可以放在U盤的精簡版本。Linux的整個(gè)系統(tǒng)加上所有的常用軟件比windows加上所有常用軟件的磁盤占用小很多。

          記得剛剛接觸電腦的時(shí)候就用了一段時(shí)間的RH9,覺得很神秘很帥。后來來到學(xué)校后發(fā)現(xiàn)校園網(wǎng)上不到網(wǎng),用xrgsu要么掉線要么上不到,試了sesu和fc都是這樣。因?yàn)槿f惡的銳捷又不能用虛擬機(jī)上網(wǎng)。這次是因?yàn)橛袀€(gè)師兄用ubuntu7.04成功的上到了所以我又用回了Linux,用回了久違的VI。我不知為什么學(xué)了vi和emacs兩個(gè)編輯器,但是一直都用不慣emacs,vi就用得很順手。Linux下的編輯器就好在可以雙手不離開鍵盤,不用去用到鼠標(biāo),不過太久沒有用了,時(shí)不時(shí)手還是會(huì)想去摸鼠標(biāo),然后想一想手又縮回來按快捷鍵。

          Ubuntu的中文社區(qū)很活躍,中文的資料又多得不得了,一般有什么問題搜索一下就可以查找到。

          Ubuntu下用得最爽的是FireFox,好像沒有windows下的內(nèi)存泄漏現(xiàn)象。Linux下的BT軟件就不怎樣,還是用wine+比特精靈比較好。相對于bt,linux下的電驢軟件就很厲害了,MLDonkey很快,最高能過1M/s。

          下載安裝軟件,Ubuntu繼承了Debian系的apt-get系列的方便,很大得方便了我這類懶人。只要一個(gè)命令就可以簡單地在非圖形界面安裝軟件,而且自動(dòng)安裝軟件源中最新的版本,一并安裝配置。只是把軟件安裝到哪里要自己去查找,有時(shí)是挺麻煩的,比如在安裝后要修改配置文件的時(shí)候,特別是安裝時(shí)文件分得很散,在配置radrails時(shí)要求輸入rails和rake的路徑。不過用了一段時(shí)間后熟悉了目錄的配置之后就要找程序文件就簡單多了,程序文件一般放在/usr/bin下。

          不過有時(shí)一些軟件還是自己手動(dòng)安裝好。第一有個(gè)權(quán)限問題,我的電腦還是主要用來做開發(fā)和學(xué)習(xí)的,而且又是我自己一個(gè)人用,對于Linux系統(tǒng)一向來的用戶安全機(jī)制對我來說有點(diǎn)多余。自動(dòng)安裝的一些軟件,有時(shí)要設(shè)置權(quán)限,比較麻煩。第二就是版本問題,軟件源里的軟件雖說都是穩(wěn)定版本,但是我有時(shí)想要新一點(diǎn)的版本,比如Eclilpse3.3,NetBeans6。

          在開發(fā)時(shí)最大的好處就是編碼問題在Linux下對utf-8的支持很好。還有好像一些ide在Linux下好像速度快一點(diǎn),還有ruby也是,反應(yīng)快了很多。正在試著Gvim+rails.vim的感覺。不過還是習(xí)慣eclipse。Linux下的軟件,要么是gtk的,要么是Qt,要么java的,感覺上至少比win32程序用起來覺得舒服一點(diǎn),完全是心理作用。

          最后有兩件事讓我不爽,一個(gè)是特效開不到,我的顯卡是Ati 的X1650,萬惡的ati官方驅(qū)動(dòng)不支持XGL,開源驅(qū)動(dòng)又不支持X1650。另一件事是我用eva和QQ2006上了幾天之后登錄的時(shí)候竟然說我“您的IP不能用低版本的QQ”,真是萬惡的騰訊。我最后找了飄云版的QQ2007(因?yàn)椴粠фI盤鎖)才能用wine跑QQ2007。用wine+qq的時(shí)候發(fā)現(xiàn)打字那個(gè)提示框很快會(huì)不見,我用的是fcitx,還有我不能發(fā)起語音請求,發(fā)起時(shí)qq會(huì)崩潰,別人發(fā)起我接受就正常。

          Ubuntu好好玩。

          posted @ 2007-08-22 17:22 _Kai_ 閱讀(608) | 評論 (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)計(jì)

          常用鏈接

          留言簿(2)

          隨筆分類(21)

          隨筆檔案(18)

          常去的地方

          技術(shù)站點(diǎn)

          朋友的Blog

          搜索

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 淳安县| 三河市| 宁河县| 个旧市| 商南县| 施秉县| 克山县| 平果县| 平潭县| 上饶市| 东乡族自治县| 抚宁县| 潜山县| 长丰县| 连州市| 扎赉特旗| 德清县| 海门市| 密山市| 奉贤区| 台东市| 镇坪县| 邛崃市| 木里| 井研县| 大悟县| 上林县| 漯河市| 桐城市| 甘德县| 资溪县| 云林县| 永定县| 蕲春县| 格尔木市| 闽清县| 古丈县| 克山县| 九江市| 弥勒县| 肃北|