打开主菜单
本書平裝本的封面

大教堂與市集》(The Cathedral and the Bazaar)是埃里克·斯蒂芬·雷蒙(Eric Steven Raymond)所撰寫的軟體工程方法論。以Linux的核心開發過程以及作者自己主持開發的開放原始碼軟體──Fetchmail為討論案例。文章在1997年5月27日發表,並在1999年出版成書。

簡介编辑

本書討論兩種不同的自由軟體開發模式:

  • 大教堂模式(The Cathedral model):源代碼在軟件發行后公開,但在軟體的每個版本開發過程中是由一個專屬的團隊所控管的。作者以GNU EmacsGCC這兩軟體為例。
  • 市集模式(The Bazaar model):源代碼在開發過程中即在網際網路上公開,供人檢視及開發。作者以Linux核心的創始者林納斯·托瓦茲帶領Linux核心的開發為例,亦引用fetchmail的開發為例。

此書的要義是「讓夠多人看到原始碼,錯誤將無所遁形」(Given enough eyeballs, all bugs are shallow)林納斯定律。作者表示大教堂模式的軟體開發讓程式除錯的時間大幅增加,因為只有少數的開發者可參與修改工作。市集模式則相反。

從開發自由軟體所學到的教訓编辑

雷蒙指出了 19 點在他開發多個軟體專案中所學到的 "教訓"。每個學到的教訓都跟開放軟體所使用的最佳實踐有關:

  1. 所有杰出的软件,都发源于开发软件的程序员对满足个人诉求的追求。
  2. 好的软件开发者知道需要在哪里写代码来搞定问题,比之更高明的,则是那些知道哪里需要重写(或者重用)的家伙。
  3. 做好丢弃当前版本软件的计划吧,无论如何,这个事情终归都是要发生的(引自 Frederick Brooks'《人月神话:軟體專案管理之道》)。
  4. 保持正確的態度,有趣的問題就會隨之而來。
  5. 當你對一個問題沒有興趣的時候,你最後的責任就是交棒給一位能勝任的人。
  6. 把你的使用者當作是你共同開發者來對待,這是你 "快速改善" 與 "效率除錯" 最不困難的方法。
  7. 早期並且經常的發佈新版本。而且傾聽你的客戶。
  8. 在一群足夠多的 beta 測試者與共同開發者的情況下,幾乎所有的問題都可以被描繪出來,並且由某個人很直覺的解決。
  9. 聰明的資料結構與平白的程式碼,比其他繞路的方法更能解決問題。.
  10. 如果你把你的 beta 測試者視為你最珍貴的資源,他們就會成為你最珍貴的資源。
  11. 在你使用者提出的許許多多主意當中,辨識出好的主意。有時候,後面提出來的主意會比較好。
  12. 常常最引人注目最創新的解決的方法來自於了解到你對問題的概念是錯誤的。
  13. 設計上的完美並不在於沒有功能還需要增加的時候達到,而是在沒有任何功能可以減少的時候達到。
  14. 任何工具應該在你期待到的方法上有用,但真正棒的工具會以你沒有想的方法來用它。
  15. 撰寫任何中介軟體的時候,除非接收端要求,當心不要更動了,尤其是破壞了當中傳遞的資料。
  16. When your language is nowhere near Turing-complete, syntactic sugar can be your friend.
  17. 所谓安全系统,只有在其不为人所知时才是安全的。Beware of pseudo-secrets.
  18. 解決一個有趣的問題,由找到一個你覺得有趣的問題開始。
  19. 如果開發工作中,負責協調的人有像網際網路這麼好的媒介,並且知道如何不要透過強迫來領導的時候,越多的領導者會比單一領導者來得要有好。

影響编辑

此文讓大部份的開放原始碼及自由軟體的開發計畫採用市集模式,甚至原來採用大教堂模式的GNU Emacs及GCC也是如此。Netscape網頁瀏覽器後來釋出原始碼,並啟動Mozilla計畫,也或多或少受到這篇文章的啟發[1][2][3]

大教堂與市集也被延伸到非電腦軟體的開發上面。例如維基百科就是市集模式,而Nupedia大英百科全書就是大教堂模式[4]

出版编辑

歐萊禮出版社於1999年發行此書的創舉是,首次商業印刷出版的書以Creative Commons授權模式出版。

本書(原文)的國際標準書號ISBN 978-1-56592-724-7(精裝本)、ISBN 978-0-596-00108-7(平裝本)。

参考资料编辑

  1. ^ Epilog: Netscape Embraces the Bazaar. 
  2. ^ Jim Hamerly and Tom Paquin with Susan Walton. Freeing the Source: The Story of Mozilla. Open Sources: Voices from the Open Source Revolution 1st. 1999-01. ISBN 1-56592-582-3. 
  3. ^ Louis Suárez-Potts, Interview: Frank Hecker, openffice.org, 2001-05-01 [永久失效連結]
  4. ^ Poe, Marshall. The Hive. The Atlantic. 2006-09 [2012-07-05]. 

外部連結编辑