跳轉到內容

使用原始碼/開源不等於自由軟體

來自華夏公益教科書

讓我們先澄清一些術語並定義它們

程式 : 程式設計完成的獨立可用的單個檔案,用於特定目的。
套件 : 一組協同工作的程式,用於執行一系列任務。
產品 : 程式設計的結果,可以是單個程式、套件或整個作業系統。
原始碼 : 用於生成產品的全部人類可讀的程式碼集合。
開源 : 用於描述任何軟體,其中您至少有權檢視生成該產品的原始碼。
免費軟體 : 任何可免費獲得的產品。
開源 : OSI 批准的產品的標籤。
自由軟體 : FSF 批准的產品的標籤。

當有人說“開放”這個詞時,你會立即想到什麼?你會想到一個半開的東西嗎?一個顯而易見的東西?任何人都可以看見?暢通無阻?或者可能是可以立即使用的東西?當你身處程式設計世界時,這些可能性很接近,但還不足以表達“開放”的含義。那麼“免費”這個詞呢?你會想到你不需要付費的東西嗎?還是你想到一個不受限制的東西?同樣地,在程式設計師的世界裡,這要複雜一些。

對於外行來說,開源和自由軟體是同一件事;然而,這兩個團體之間關係緊張,有時甚至充滿敵意。這些程式設計派別相信特定的自由,並透過開發其軟體來實現這些目標的改善。

人們往往喜歡用他們對待實物財產的方式來思考這些智慧財產權。如果用這種方式看待各種開源模型,那麼公有領域就是公共財產,任何人都不能以任何理由或用途拒絕訪問該程式碼。GPL 程式碼是私有財產,授予公眾使用,條件是所有由此產生的釋出作品都保持在相同的位置。BSD 是任何人都可以出於任何理由或用途使用的財產,條件是他們保持適當的署名。

本章以類似“就像租車一樣,使用許可程式碼或軟體,你必須承擔責任”結束。這將引出下一章。

華夏公益教科書