開啟主選單

求真百科

  開放源代碼

開放源代碼(Open source code)也稱為源代碼公開,指的是一種軟件發布模式。一般的軟件僅可取得已經過編譯的二進制可執行檔,通常只有軟件的作者或著作權所有者等擁有程序的原始碼。有些軟件的作者會將原始碼公開,此稱之為「源代碼公開」,但這並不一定符合「開放源代碼」的定義及條件,因為作者可能會設定公開原始碼的條件限制,例如限制可閱讀原始碼的對象、限制衍生品等。

目錄

簡介

開放源代碼軟件源於自由軟件開源運動,簡稱開源軟件。是指那些源代碼公開,可以被自由使用、複製、修改和再發布的一系列軟件的集合。開源軟件許可證,是對開源軟件進行規範的授權合同,也可以稱為授權協議書。其類別繁多,在選擇適用上,了解彼此的權利讓渡程度是其關鍵因素。開放源代碼軟件就是在開放源代碼許可證下發布的軟件,以保障軟件用戶自由使用及接觸源代碼的權利。這同時也保障了用戶自行修改、複製以及再分發的權利。簡而言之,所有公布軟件源代碼的程序都可以稱為開放源代碼軟件。 開放源代碼有時不僅僅指開放源代碼軟件,它同時也是一種軟件開放模式的名稱。使用開放源代碼開放模式的軟件代表就有GNU/Linux操作系統。嚴格地說來,開放源代碼軟件與自由軟件是兩個不同的概念,只要符合開源軟件定義的軟件就能被稱為開放源代碼軟件(開源軟件)。自由軟件是一個比開源軟件更嚴格的概念,因此所有自由軟件都是開放源代碼的,但不是所有的開源軟件都能被稱為「自由」。但在現實上,絕大多數開源軟件也都符合自由軟件的定義。比如,遵守GPL的軟件都是開放的並且是自由的。

評價

程序散布時必須包括源代碼與其所編譯的形式。假若程序在散布時並未附加源代碼,其必須以一公開方式,在不超過合理的複製成本下,讓人得以取得源代碼,例如可以在不收取費用的情況下在網絡上供入下載。這裡所謂的「源代碼」,必須是程序設計者最易於修改程序的形式,故意混亂源代碼或是以所謂的中間形式,如預處理器、或編譯程序所處理後的結果是不被允許的符合開放源代碼定義的授權,可以禁止他人以修改的形式散布源代碼,除非此一授權允許基於修改程序的目的,而採取「附加檔案」的方式以區別此一部分非原創作者所創作。此一授權必須明確允許被授權人對於所修改的軟件有加以散布的權利。此外,授權內容得要求衍生作品必須附加不同於原軟件的名稱或版本編號符合開放源代碼定義的授權,不得對任何人或任何團體有歧視陛的規定。由於有些國家,包含美國在內,對於特定類型的軟件進行出口管制,因此此類軟件通常會有警告的標語,揭示此管制規定;但是在符合開放源代碼定義的授權本身,並不包含此種警告標語在內。[1]

參考文獻