1.1敏捷的 Rails

這本書(shū)的標(biāo)題是《 Agile Web Development with Rails 》,你可能很奇怪,你發(fā)現(xiàn)我們并沒(méi)有清晰地應(yīng)用敏捷的實(shí)踐 X,Y Z 在進(jìn)行 Rails 編碼。

?

這個(gè)原因很簡(jiǎn)單并且很微妙的。敏捷就是 Rails 的組成部分。

?

讓我們看看敏捷宣言所體現(xiàn)的價(jià)值。敏捷開(kāi)發(fā)提出以下觀(guān)點(diǎn)。

1.?????? 個(gè)體和交流優(yōu)于過(guò)程和工具

2.?????? 能工作的軟件優(yōu)于大部分文檔。

3.?????? 同顧客合作優(yōu)于合同的談判。

4.?????? 反饋?zhàn)兓瘍?yōu)于計(jì)劃 .

?

Rails 所有的一切都是個(gè)體和交流 . 沒(méi)有很重的工具 , 沒(méi)有復(fù)雜的配置文件 , 沒(méi)有詳細(xì)描述的開(kāi)發(fā)過(guò)程 . 有的只是一個(gè)很小的開(kāi)發(fā)小組 , 他們喜歡編輯器和很大塊的 Ruby 代碼 . 領(lǐng)導(dǎo)是透明的 ; 開(kāi)發(fā)者做什么 , 客戶(hù)看到了立刻反映回來(lái) . 這本質(zhì)是一個(gè)相互作用的過(guò)程 .

?

Rails 沒(méi)有公開(kāi)指責(zé)文檔 .Rails 能讓你很容易從完整的代碼中生成 HTML 文檔。但是 Rails 的開(kāi)發(fā)過(guò)程不是靠文檔來(lái)驅(qū)動(dòng)的。在開(kāi)始一個(gè)項(xiàng)目前你不需要 500 頁(yè)的規(guī)格說(shuō)明。相反,你將發(fā)現(xiàn)一些客戶(hù)和開(kāi)發(fā)者在一起探索他們需要的和可能回答他們需要的路徑。你將發(fā)現(xiàn)他們要解決的問(wèn)題的解決辦法將隨著客戶(hù)和開(kāi)發(fā)人員的經(jīng)驗(yàn)越來(lái)越豐富而改變。你會(huì)發(fā)現(xiàn)一個(gè)框架可以使在開(kāi)發(fā)周期內(nèi)交付可以工作的軟件變得簡(jiǎn)單。這樣的軟件可能看起來(lái)有點(diǎn)粗糙,但它讓客戶(hù)開(kāi)始看見(jiàn)你要交付的軟件。