日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

开源社区的由来(转载)

發布時間:2024/3/7 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开源社区的由来(转载) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

開源的含義

?“開源社區”(Open Source Community)更準確的名稱應該是“開源軟件社區”(Open Source Software Community);而“開源軟件”(Open Source Software)則是“開放源代碼軟件”的簡稱。因此,要想解釋什么是“開源社區”,就必須先解釋什么是“開源軟件”;而要想解釋“開源軟件”,就必須先解釋什么是“源代碼”(Source Code)

簡稱全稱

開源社區(Open Source Community)

開源軟件社區(Open Source Software Community)

開源軟件(Open Source Software)

開放源代碼軟件
  • ?
  • ?

    ?

    ?

    前言

    • 源代碼,也稱源程序,是指人類可以讀懂的計算機語言指令。之所以被稱為“源代碼”,在于2點:
  • 源代碼是目標代碼之源。電子計算機只能讀懂以機器語言表達出來的目標代碼,它讀不懂源代碼。但人們直接通過機器語言編寫目標代碼,既不符合人的語言習慣,也十分低效。因此,人們通過近似于日常語言的高級語言來編寫源代碼,然后通過計算機系統中的編譯器,源代碼就可以轉換為電子計算機可以讀懂的目標代碼。這樣做,既符合人運用語言的習慣,也更為高效。從這一點來說,源代碼是相應的目標代碼的源。
  • 源代碼是后續相關軟件代碼的源。對于程序員來說,看到1款軟件的源代碼,就能夠讀懂軟件設計者關于這款軟件的設計構思,而如果讀懂了1款軟件的源代碼,在理論上講,就可以在其基礎上開發出一系列的后續軟件。從這一點來說,1款軟件的工作代碼是后續軟件工作代碼的源。
  • 在某種意義上講,開源軟件才是軟件產業的本源。1969年,美國電報電話公司(AT&T)貝爾實驗室的研究人員Ken Thompson編寫了UINX的第一個版本,這是一個多用戶、多任務的操作系統,整個七十年代,它都在免費傳播,從而迅速成為在大學和研究機構中很流行的系統。UINX是人類第1個用高級語言(C語言)編寫并有較高的運行效率的系統,是使用源代碼的軟件的先驅,也是開源軟件的先驅。

    雖然開源軟件是軟件產業的本源,但是,今天的軟件產業的主流卻不是開源軟件,而是“私有軟件”(Proprietary Software)。因此,研究開源軟件,就不得不談及私有軟件。

    開源社區的起源

    私有軟件

    1976年2月3日, Bill Gates發表了著名的《Open Letter to Hobbyists》(致電腦業余愛好者的一封公開信),在這封公開信中,Bill Gates明確提出軟件應該具有“CopyRight”(版權)。這封公開信奠定了軟件產品“CopyRight”的理論基礎,也促使私有軟件成為軟件產業發展的主流。Copy Right”理念的提出,必然導致源代碼被徹底被封閉起來,這是因為3點:

    • 不封閉源代碼,必然導致一些非本軟件開發企業的程序員以免費方式獲得源代碼,并以此無償使用這款軟件來獲利,而該軟件開發企業難以收回開發成本;
    • 不封閉源代碼,一旦非本軟件開發企業的程序員讀懂了這款軟件的源代碼,他就可以在此基礎上開發出一系列的延伸軟件,而這些后續軟件必然與本軟件開發企業自行開發的后續軟件產生競爭,這將嚴重損害本軟件開發企業的利益;
    • 即使本軟件開發企業并不準備自行開發后續軟件,其他程序員開發的后續軟件的“Copy Right”也存在著難以合理界定的難題。

    從這個意義上講,私有軟件就是閉源軟件。客觀地講,Bill Gates的“Copy Right”理念以及私有軟件的興起,對于推動軟件產業的興旺功不可沒。但是,Microsoft等私有軟件廠商對于軟件市場的壟斷,引發了用戶和廣大軟件開發者的強烈不滿,興起了反對私有軟件理念的運動,開源軟件就是這種運動的重要組成部分。首先興起的私有軟件運動,是自由軟件運動(Free Software Movement),它是開源軟件運動的先河,因此,在詮釋開源軟件之前,應該先介紹一下自由軟件。

    自由軟件

    1983年,MIT的Richard Stallman 開始倡導自由軟件運動。1985年,Stallman等人創建了自由軟件基金會(Free Software Foundation,簡稱FSF)。Stallman提出了與“Copy Right”理念針鋒相對的“Copy Left”(許可復制權)理念,其表現形式是GPL,即公共許可證(General Pubic License)。自由軟件應該是具有如下4大自由的軟件:

    • 出于任何目的運行該軟件的自由;
    • 有研究該軟件如何運行并加以改進使之更符合自己需要的自由;
    • 有重新發布以幫助鄰里的自由;
    • 有改善程序,公布改進方案(以及通常的修訂版)以推動整個社區利益的自由。

    1991年,Linus Torvalds開發出Linux,并接受“Copy Left”理念,使得自由軟件運動有了自己可以與MicrosoftWindows相抗衡的操作系統。自由軟件運動初戰成功。但是,自由軟件運動關于自由的追求,畢竟和現實的商業氛圍格格不入,帶有著過于理想化的色彩。這種反商業的信條,讓一些本來也反對私有軟件的人士對自由軟件敬而遠之。正是在這種背景下,一部分原有自由軟件運動人士,如Eric Raymond,開始嘗試將理想的自由軟件與現實的商業氛圍進行某種銜接,這就是本文所涉及的開源軟件運動。

    開源軟件

    1998年2月,Eric Raymond等人正式創立“Open Source Software”(開源軟件)這一名稱,并組建了開放源代碼(軟件)創始組織(Open Source Initiative Association,簡稱OSI)。OSI曾給出了開源軟件的標準定義。按照OSI的定義,開源軟件是指允許任何人使用、拷貝、修改、分發(免費/少許收費)的軟件。它必須滿足以下6個條件:

    • 允許自由地再發布軟件;
    • 要求程序的源代碼是可獲得的;
    • 可以修改和派生新的軟件,并可以重新發布;
    • 發布時保持軟件源代碼的完整性;
    • 許可證不對任何個人或群體有歧視,許可證不得歧視任何應用領域;
    • 與程序有關的權利必須適用于任何重新發布的程序,不需要得到附加的其它許可證的許可。

    用一句話概括,開源軟件就是源代碼開放且可以自由復制的軟件。開源軟件運動超越自由軟件運動的地方在于,它既抓住了私有軟件的Achilles Heel(阿基里斯之踵),即封閉源代碼,又可以實現與商業氛圍的結合。

    開源社區

    由于以Microsoft為代表的私有軟件企業占據著軟件產業的主流地位,開源軟件要想生存和發展,就必須在組織形式上進行創新。這一創新是由Eric Raymond在1998年提出的,他在被堪稱開源軟件的<The Cathedral and the Bazaar>(大教堂和市集)中正式提出了“開源社區”模式(Raymond將開源社區形象地比喻為“市集”)。開源社區是開源軟件開發最重要的組織形式,是由所有參與開發和改進可以軟件的愛好者所組成的社區。

    2002年,Seidel發表了論文<An Initial Description of the C-form Organization>(關于C型組織的最初描述),認為開源社區是一種新的組織結構,他將這種新的組織結構命名為“C?型”組織。Seidel認為“C?型”組織有6個基本特征:

    • 沒有正式的組織邊界;
    • 追求更高目標的強有力的團隊文化;
    • 所進行的工作沒有物質報酬——免費公布產品的源文件;
    • 沒有商業秘密——所有的開發工作都是在互聯網上公開進行的;
    • 聯絡方式經濟有效(通過互聯網)
    • 項目最初源自于興趣而不是基于市場調研。

    LernerTirole2001年發表論文<The Open Source Movement :Key Research Questions>,他們經過研究發現,開源社區往往由核心團隊、領導者用戶、跟隨用戶、商業企業組成。其中,核心團隊居于整個社區的中心,是非制度化的、動態的社群領導者。開源軟件的領導者往往具有如下2個特征:

    • 領導者都是項目初始代碼的開發者或早期的重要貢獻者;
    • 在軟件后期發展中,不一定是重要的貢獻者,而是項目管理者,并具有可信的管理者地位。

    從上述關于開源社區的分析可以看出,開源社區這種組織有著不同于軟件開發企業的本質特征,這種本質特征就在于,軟件開發企業內部的各個員工是基于利益關系而組織在一起的,而開源社區內部的各個成員是基于興趣而走到一起的。從這個角度來說,軟件開發企業是一種利益組織,而開源社區是一種興趣組織。

    開放社區

    對于開源社區這種軟件開發組織,西方學者進行了更加深入的研究,他們提出了更為深刻的理解,這就是“開放社區”,?(Free/Open Communities)

    Tzouris2002年發表了論文<Software Freedom, Open Software and the Participant's Motivation——A Multidisciplinary Study>(軟件自由、開源軟件和參與者動機——一項多學科的研究),在這篇論文中,Tzouris首先提出,開源社區應該是“開放社區”,他界定了開放社區的4個基本特征:

    • 共享的標準化和原則性的信念:指的是基于共同理解的為軟件作貢獻的共享的價值理念;
    • 共享的因果信念:指的是對因果和報酬結構的共同理解;
    • 對合法有效性的共同意見:指的是貢獻者對目前問題采用的解決方案的有效性具有一致意見;
    • 共同政策企業:指的是能夠通過為軟件提供源代碼實現的共同目標。

    Reagle2003年發表了論文<Socialization in Open Technical Communities>,在這篇論文中,Reagle也認為開源社區應該是“開放社區”,他認為“開放社區”應該具有如下5個特征:

    • 開放性:提供滿足開放源代碼定義的產品;
    • 透明性:可以獲得所有的程序、規則、決定和原理;
    • 完整性:確保所有的程序和參與者貢獻的完整性;
    • 不歧視:禁止對個人、團體或與社區活動不相關的特征的歧視,應客觀評價個人和建議的優缺點,領導階層應屬于精英分子或建立在民主選舉基礎上;
    • 不干涉:這是開放的關鍵,如果參與者不同意前幾條的標準,他們可以帶走自己的產品在他們自己的概念標準下著手自己的工作,不受任何干涉。

    如果僅僅憑借興趣,開源社區是難以發展壯大起來的,開源社區要想真正發展壯大到可以和巨型軟件開發企業進行有效的競爭,就必須在興趣的基礎上,形成共同的文化,也就是要將開源社區從興趣組織發展為文化組織。

    這一點,前文所提到的SeidelTzourisReagle3位學者都已經認識到這一點。Seidel認為“C?型”組織應該“追求更高目標的強有力的團隊文化(C?型’組織的第2個特征)”。Tzouris關于開放社區的4個基本特征的研究,實際上都是指開源社區的文化特征。Reagle認為開放社區應該具有的“不歧視”和“不干涉”也都是關于開源社區文化的界定。西方學者關于開源社區所應具有的文化特征的研究成果,在一定程度上已經初步揭示了本文所指的開源文化的內涵。當然,在本文看來,這些學者關于開源文化內涵的理解,無論在全面上,還是深入上,都有不足,還需要本文展開進一步的研究。

    總結

    ?

    如果僅僅憑借興趣,開源社區是難以發展壯大起來的,開源社區要想真正發展壯大到可以和巨型軟件開發企業進行有效的競爭,就必須在興趣的基礎上,形成共同的文化,也就是要將開源社區從興趣組織發展為文化組織。

    這一點,前文所提到的SeidelTzourisReagle3位學者都已經認識到這一點。Seidel認為“C?型”組織應該“追求更高目標的強有力的團隊文化(C?型’組織的第2個特征)”。Tzouris關于開放社區的4個基本特征的研究,實際上都是指開源社區的文化特征。Reagle認為開放社區應該具有的“不歧視”和“不干涉”也都是關于開源社區文化的界定。

    西方學者關于開源社區所應具有的文化特征的研究成果,在一定程度上已經初步揭示了本文所指的開源文化的內涵。當然,在本文看來,這些學者關于開源文化內涵的理解,無論在全面上,還是深入上,都有不足,還需要本文展開進一步的研究。

    轉載自:http://blog.51cto.com/zhaisj/465512

    總結

    以上是生活随笔為你收集整理的开源社区的由来(转载)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。