一個好的開源專案的5個特徵

開源貢獻是當今技術領域最受追捧的技能之一。人們已經意識到使用開源技術的好處以及成為這些專案的貢獻者為技術進步帶來的幫助。

開源開發是一種基於原始碼共享和協作改進的方法。

網際網路上有成千上萬的開源專案。開源專案可以是社交媒體應用程式、專案管理軟體和技術文件。

開源軟體

關於開源專案的一個誤解是你必須貢獻程式碼。雖然程式碼是必不可少的,但文件、專案管理和社群宣傳等其他領域可以算作是重要的開源貢獻。

任何從事過開源專案的人都會告訴你這些的重要性。好處包括創新,技能提升和開源社群的關係,這些都會影響個人的職業生涯。

一個好的開源專案的5個特徵

1。 有許可證嗎?

每個開源專案都有一個許可證,通常是允許性許可證或Copyleft 許可證。允許性許可證在開源專案中很常見。它不限制任何人使用、分發或銷售該軟體的修改版本。

大多數開源專案都有一個許可證,比如麻省理工學院(MIT)、BSD或Apache 2。0。MIT 許可證免費共享和分發軟體,並且無擔保:

一個好的開源專案的5個特徵

Copyleft 許可證(如通用公共許可證、Mozilla 公共許可證和 Affero 通用公共許可證)具有進一步的限制。

允許性許可證允許貢獻者更改和分發開源軟體。這意味著開發人員可以修改原始碼以生成新軟體,並不受限制地使用或分發它。修改後的版本將與原始軟體使用相同的許可證。

但是,修改後的版本將不具有與原始版本相同的名稱,以便於在兩者之間進行識別。許可證還應包括所有人。

一個好的開源專案的5個特徵

2。 原始碼是否共享?

所有開源專案都有一個允許自由共享原始碼的許可證。這些權利還延伸到從貢獻中編譯的程式碼。專案應不受限制地將其原始碼提供給各方。

當原始碼在公共平臺上不可用時,應根據要求提供。任何不共享其原始碼的專案都不是開源專案。

但是,許可證可以限制原始碼的重新分發,並且只允許重新分發其修改後的形式。修改後的程式碼可以具有不同的名稱或版本,以將其與原始專案區分開來。

一個好的開源專案的5個特徵

3。 專案是否有貢獻者指南?

每個開源專案都應該有一個貢獻者指南。我們可以在專案的根資料夾中找到它,通常稱為“CONTRIBUTORS”或“CONTRIBUTORS。md”。貢獻者指南包含有關如何為專案做出貢獻的簡單說明。

該指南向新貢獻者展示瞭如何分叉、提出問題,以及如何將他們的貢獻提交到上游儲存庫。參與者指南有助於向參與者展示專案的工作原理,以減少合併過程中分支之間的衝突。

以下是 GitHub 上非同步 API 開源專案中的貢獻者指南示例:

一個好的開源專案的5個特徵

4。它有一個活躍的社群嗎?

創新是開源專案如此受歡迎的原因之一。開源將才華橫溢、熱情洋溢的社群聚集在一起,產生促進創新的想法。

強大的社群確保了產品的清晰溝通、協作和營銷。與單個專案相比,活躍的開源社群可以更快地產生更好的結果並更快地擴充套件創新。

要確定社群是否活躍,請檢視其社交渠道。首先監控他們在社交媒體,不和諧或Slack帳戶上的活動。在資訊和資源自由流動的活躍社群中工作會更好。

開源中的活躍社群以三種方式加速創新。社群對當前的技術趨勢做出反應,具有頻繁的釋出週期,並且對軟體進行了大規模的重新分發。

一個擁有出色社群的開源專案的例子是Javascript框架React。

React在九年內已經發展到版本18,而類似的框架Vue。js仍然是版本3。這兩個框架都不到十年的歷史。React充滿活力的社群超過了其他流行的JavaScript框架。

與活躍的社群一起從事開源專案很有趣。

一個好的開源專案的5個特徵

5。 維護者是否活躍?

在開源專案中,維護者是有權修改專案儲存庫中檔案的貢獻者。維護者負責專案,並確保對專案的貢獻與其目標保持一致。

在一個好的開源專案中,維護者是最活躍的。他們將負責社群渠道,領導討論,並解決貢獻者的問題。維護者提供更新並鼓勵在社群中進行協作。

要確定專案是否有活躍的維護者,請檢視其遠端儲存庫,例如 GitHub。積極的維護者溝通良好。他們響應拉取請求、設定問題並解決貢獻者問題。

透過檢查活躍的維護者對社交渠道上釋出的查詢的回覆頻率來識別他們。任何有三個月溝通差距的開源庫都不是合適的專案。

一個好的開源專案的特徵

雖然許多其他特徵定義了一個合適的開源專案,但重要的是許可證型別、社群的性質、原始碼和活躍的維護者。具有上述特徵的開源專案激發了創新,擴充套件和營銷世界級專案。此外,優秀的開源社群緊跟技術趨勢,鼓勵協作和多樣性。