前些天我正好有時間學(xué)習(xí)Rails(譯注1)。我就去了《用本主義程序員》的(譯注2)網(wǎng)站(http://www.pragmaticprogrammer.com),而且購買了beta版的《用Rails進(jìn)行敏捷web開發(fā)》。我于是就開始了閱讀。
這本書從初階開始(就像大多數(shù)好書一樣)。它指導(dǎo)你通過Ruby(譯注3)和Rails的安裝和設(shè)置,而且還提供給你一些簡單的示例和測試讓你可以確保你所運(yùn)行的是正確的。我除了在安裝MySql的時候遇到些了小問題,其他地方?jīng)]什么特別的。(與書中所說不一樣,這個問題是跟你的socket文件有關(guān),它位于/opt/local/var/mysql5/mysqld.sock)
一但設(shè)置完成,這本書就變得好像下山猛跑一樣。它用很快的速度指導(dǎo)你去創(chuàng)建一個購物車web應(yīng)用程序,還附帶了Ajax(譯注4),安全,管理,報表,單元測試和集成測試。這很恐怖!要能順利地完成我覺得怎么也要多做幾次才行。它一下子丟給你很多細(xì)節(jié)。老實(shí)說,很難理清頭緒。
完成書里的第一段落后,我覺得我還得再復(fù)習(xí)復(fù)習(xí)Ruby。所就拿出了這本鎬頭書(Ruby編程)(譯注5),然后做了一個完整而集中的語言復(fù)習(xí)。我還下載了rspec(http://rspec.rubyforge.org/),為了能再練習(xí)練習(xí)這個語言,我還練了一些Kata(譯注6)。
接下來,我就期望著能完成這本書而且寫一個Rails應(yīng)用程序,真是樂在其中啊。
從我目前看來,Rails是一個高產(chǎn)的敏捷環(huán)境,任何人都應(yīng)該認(rèn)真關(guān)注它。在我看來,因?yàn)镽ails具有比Java或是.Net快達(dá)五倍甚至更多的開發(fā)效率,一個Rails團(tuán)隊(duì)可以遠(yuǎn)遠(yuǎn)將Java和.Net團(tuán)隊(duì)拋之于后。我知道辯駁方會擔(dān)心"E"這個詞(譯注7)。我的回應(yīng)是:“如果你不及時跟進(jìn),我覺得沒什么問題,只要你不妨礙我們把事情搞定。”
譯注:
1,Rails,是用 Ruby 編寫的一款完整的、開放源代碼的 Web 框架,目的是使用更簡單而且更少的代碼編寫實(shí)際使用的應(yīng)用程序。
2,用本主義程序員,原自《The Pragmatic Programmer》一書。國內(nèi)有兩種譯法,“程序員修煉之道”和“用本主義程序員”(可參見孟巖的書評),因Pragmatic更貼近其原義,本文故采用此譯法。
3,Ruby,是一門免費(fèi)的、簡單的、直觀的、可擴(kuò)展的、可移植的、解釋的腳本語言,用于快速而簡單的面向?qū)ο缶幊?。類似?Perl,它支持處理文本文件和執(zhí)行系統(tǒng)管理任務(wù)的很多特性。
4,Ajax,亦指阿賈克斯足球俱樂部,全稱為“Asynchronous JavaScript and XML”(異步Javascript和XML),是一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。
5,鎬頭書,原文為pickaxe book,那何為鎬頭?其實(shí)是原書封面上有一柄丁字鎬,因此此書也就被昵稱為“鎬頭書”
6,Kata,是目前北美和歐洲一些領(lǐng)先的軟件咨詢公司開創(chuàng)的一種用于掌握軟件開發(fā)技能的手段,類似于國人樂談的武功招式。目的就是試圖尋找出軟件開發(fā)中的一些招式,讓學(xué)習(xí)者可以不斷演練,從而打下一個良好的基礎(chǔ)。
7,E,這里代表企業(yè)級應(yīng)用。