自由軟件開發模型:大教堂和集市

自由軟件開發模型

自由軟件開發模型

大教堂和集市是Eric S. Raymond於1.998年開發的清單文件,試圖從他自己的觀點和經驗進行解釋(Fetchmail開發) 他對Linux及其相關程序的成功創建和發展的理解,特別是從軟件開發模型(他個人稱為:大教堂模型和集市模型)之間的差異的角度出發。

在本出版物中,我們將提供對上述宣言的分析和總結,該宣言在自由軟件運動的開發人員中如此受歡迎。 它可以免費獲得,並且可以在Web的許多部分中訪問,但是可以從以下Web鏈接下載該資源,以更快地訪問它: 大教堂和集市。

大教堂和集市介紹

簡介

所說的《大教堂和集市》向我們展示了一種願景,即在軟件工程世界中,存在“兩種完全不同的開發風格,大教堂模型適用於商業軟件領域的大多數開發,而Bazaar模型則更適用於Linux世界”。

強調這兩個模型是從軟件調試過程的本質上相反的出發點得出的,以及關於他所謂的萊納斯定律的特定理論,該理論陳述如下:“給出足夠多的眼睛,所有錯誤都是不相關的”,換句話說:“給出足夠多的眼睛,所有錯誤他們是小事”。

它強調了“黑客”一詞,在我看來,作者表示為一種能夠理解和有效利用程序的高級用戶。,並檢測,建議或實施針對整個用戶社區的有效形式和內容的更正或修改。

在其他文獻中,這個稱為“黑客”的詞或概念指的是:

«對某個特定領域(尤其是技術領域)充滿熱情的專家,其目的是為了良性目的利用這些知識。 就是那個通常是知識領域的專業人員的人,他對知識充滿熱情,發現和學習新事物並理解它們的工作原理,並通過有效的建議和提議並始終有意地改進它共享知識或避免學習對象的失敗或故障。

因為人類知識的各個領域都有“駭客”,所以這是一個更為普遍和真實的概念。

自由軟件開發的前提

DESARROLLO

在閱讀過此類材料的許多人中,肯定會有很多人同意,在那裡清楚地表達了“ Linux是顛覆性的”的想法。 但為什麼?

因為直到那一刻, 基於“從一開始就更加集中和計劃的方法”的多種標準化軟件開發方法或模型 因為創建軟件的行為被視為與導致“一定程度的關鍵複雜性”的事物相關聯。

儘管存在著由小工具,快速原型製作和演進式編程組成的Unix世界, Linux下自由軟件開發理念的出現使事情進一步發展。

在私有軟件開發的世界中,它是以“沉默和崇敬的方式”完成的,就像建造大教堂一樣, 在自由軟件開發世界(Linux)中,它是以“繁華的方式並具有多個議程(路徑)和方法(提案)”完成的,就像您在大型集市上一樣。

這份偉大的宣言為我們提供了一些前提,可以根據自由軟件開發模型來濃縮此處表達的思想,這些思想是:

前提1:大教堂和集市

前提1

該軟件中的所有好作業都開始嘗試開發者的個人問題。

這是不可否認的現實,因為 許多從事自由軟件開發工作的人通常是由於需要解決個人或集體或團體的問題而開始,或優化已經以較慢和/或重複的方式執行的流程,這對於參與該流程的人來說往往會變得精疲力盡和/或無聊,從而試圖最大程度地增加參與人員的時間和精力。

前提2:大教堂和集市

前提2

好程序員知道要寫什麼。 最偉大的知道什麼要重寫和重用。

任何程序員都知道,從頭開始對於開發程序或應用程序來說並沒有什麼不好或不必要的。 但是,對於許多剛開始的人和已經對此有所了解的其他人來說,眾所周知,有時再次“發明輪子”不是很有效,但是最好對其進行優化並使其適應您的需要。 也就是說,最好重寫並吸收本領域其他專家提出的與我們有關的所有可能代碼,以解決我們自己的軟件開發問題。

前提3:大教堂和集市

前提3

“至少要扔掉思考-您將以任何方式結束它。”

優秀的軟件開發人員必須知道如何詳細聽取開發人員的意見,建議或提議,因為一個已經可以運行的程序,儘管可以運行,但仍然會變得非常龐大,而失去了北方的優勢。功能強大的怪物,可以為所有人做所有事情,反過來又使事情變得不愉快。 因此,聆聽返回源頭,重新贏得失去的用戶,添加新功能,刪除不必要的功能,使程序更小,更具體和更通用始終是一種好習慣。

前提4:大教堂和集市

前提4

如果您有正確的態度,就會發現有趣的問題。

態度和時間的良好改變可能意味著每個程序員或軟件開發人員在當前或新的開發中都發生了根本性的變化,進而為他們的產品用戶帶來了時間,金錢或舒適度方面的新優勢。 尋求創新的方法來解決在正確的方向上以良好症狀呈現的問題。

前提5:大教堂和集市

前提5

當程序不再引起您的興趣時,您的最後職責就是將其傳遞給有能力的成功者。

對於許多程序員或軟件開發人員以及其他技術人員而言,要為新項目投入新的時間並不少見。 但是在自由軟件的世界中,前提是要通過接力棒,還有其他一些人希望繼續開發已經廢棄的產品,為此,他們必須允許任何人為自己或為他人破解(改進)程序。該計劃的社區用戶的利益。

前提6:大教堂和集市

前提6

快速改善和有效調試程序的複雜方法很少,它是使您成為協作者的用戶。

由於“自由”在自由軟件的開發中通常被解釋為“自由”,因此許多程序員傾向於通過與其他開發人員或開發的高級用戶結盟,繼續開發或讓其他人繼續使用來避免無償的損耗它們,以換取在將來的代碼創新的開發中獲得的“信用”,並確保未來的開發正式包含一些許可,以避免濫用它。

前提7:大教堂和集市

前提7

盡快發布。 經常發射。 並聆聽您的用戶。

與專有軟件開發世界不同,在自由軟件中,通常情況下,速度越快越好。 由於通常在社區中使用和開發程序並相互交互的廣大用戶和開發人員群體,可以交流他們的疑問,建議,提議,投訴和/或主張,因此可以成為有價值的信息來源。知識,以使程序迅速發展到成熟的發展階段。

前提8:大教堂和集市

前提8

考慮到測試人員和貢獻者的廣泛基礎,幾乎所有問題都將得到快速識別,並且對於某些人來說,其解決方案將是顯而易見的。

本書以使讀者得出結論為基礎,很多時候得出結論,即基於Bazaar模型的軟件開發方法非常有效。 因為軟件開發人員為用戶提供有關其程序的更多能力,自由或知識,所以他們可以出於集體利益的目的而貢獻出更多的創意或有用的更改。

以下材料摘錄令人愉快地表達了這一點:

我認為,這是大教堂風格和集市風格之間的根本區別。 根據大教堂看節目的方式,錯誤和發展問題是陰險,深刻和扭曲的現象。 少數專心的工作人員需要經過數月的審查,才能確信自己已被撤職。 因此,發布新版本所需的時間很長,而等待了這麼長時間的人所經歷的不可避免的失望並不是完美的。

但是,根據集市模型,可以假定錯誤通常是小事,或者至少一旦暴露於幾千名專業合作者的急切眼光中,他們就會變得如此之快。其他每個新版本的方法。 因此,您將不斷發布版本以獲取更多修復程序,並且作為有益的副作用,如果您不時搞砸,損失也更少。”

結論:大教堂和集市

結論

就我個人而言,我在Bazaar類型模型下的自由軟件開發領域的很少經驗為我得出以下結論:

  • 應將用戶視為寶貴的資源,在最好的情況下,應將用戶視為他們在產品開發中進行協作的寶貴盟友。
  • 每個想法都是好事或值得探索的,因為有時最少被懷疑的想法可能是發展的絕佳解決方案或改進。
  • 最初的想法可能會分裂,擴展或偏離最初的概念,這是好事或可能的事,但重要的是,在您要服務,服務或幫助的用戶市場類型方面,應如何集中註意力。
  • 為了高效並且避免由於分散而付出的努力。
  • 最好的辦法是編寫一個小型,直接,簡單但有效的代碼,並設法使社區認為它是正確的。
  • 對於一個用戶社區來說,一個程序已經很成熟,沒有什麼可消除的,因為添加始終是考慮的好機會。
  • 可以使用任何程序(部分或全部)以重用最初未想到的功能。
  • 所有軟件必須採取各自的許可和安全措施,以對用戶數據的使用保密。
  • 不必從頭開始,總有人會開發出類似於我們構想的東西。
  • 您必須從事自己喜歡的事情,必須對自己在自由軟件上的奉獻精神充滿熱情,以便在內部產生與所闡述事物的結合感,而又不至於對它形成主人翁感。
  • 開發人員和用戶(協作者)之間必須有出色且頻繁的通信方式,以便工作快速進行並有效地進行更改。

我希望您喜歡並發現此信息有用,因為對於所有編寫任何免費軟件程序的人(無論大小),都必須閱讀“大教堂和集市”。


6條評論,留下您的評論

發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   納西博伊 他說:

    很好的總結/觀點,我只會從《帶代碼的顯示器》中刪除這麼多圖像,以至於沒有想到

    1.    Linux安裝後 他說:

      對於我來說,它們似乎適合於系統開發的問題,刪除它們不再是正確的,但是感謝您的觀察!

  2.   拜倫 他說:

    出色的總結和類比。

    1.    Linux安裝後 他說:

      謝謝Bayron的正面和正面評價。

  3.   來自特立尼達的Eduardo 他說:

    很好的嘗試,祝賀這一重要通知。 我認為“在神的國度中”一切都是自由的……否則,開發商將繼續被顛覆者mar難或釘死在十字架上,那些不了解或不希望我們必須“將凱撒的財產給了我們”。凱撒……對上帝而言,屬於上帝的東西»……小費(FREE)本質上是神聖的,就像陽光或呼吸的空氣一樣……自由是必要的,但目前它已被痛苦的市場破壞,如專有軟件。

    1.    Linux安裝後 他說:

      問候,愛德華多·特立尼達。 感謝您的評論和貢獻。