GitHub 開源推薦 一個輕量級、高性能的C/C++ Web SERVER框架[Oat++]

GitHub 開源推薦 一個輕量級、高性能的C/C++ Web SERVER框架[Oat++]

GitHub 開源推薦 一個輕量級、高性能的C/C++ Web SERVER框架[Oat++]


資料來源: https://mp.weixin.qq.com/s/1wmJ7TSHoMVITso-8gOMWw


One thought on “GitHub 開源推薦 一個輕量級、高性能的C/C++ Web SERVER框架[Oat++]

  1. 一文看懂開源許可證,能不能商用再也不抓瞎

    https://www.gushiciku.cn/pl/pdDB/zh-tw

    在github中閒逛,寶藏多福利好。不過心裡或許總有小忐忑,這麼多開源專案,我的產品裡能不能用呀!

    其實想知道專案能不能用看下專案的開源許可證就清楚了(即使是非軟體產品比如資料、媒體、資料等也可以通過開源許可證知道它們的可用範圍)。

    開源許可證
    先舉兩個例子,這兩位應該是最常用的許可證了:

    MIT許可證:只為作者保留版權,而無任何其他了限制。它使人們幾乎可以對您的專案進行任何操作,即時是製作和分發封閉原始碼版本。Babel,.NET Core和 Rails 使用MIT許可證。
    GNU GPLv3:讓人們可以做幾乎任何他們想要做的專案,不能分發封閉原始碼的版本。Ansible, Bash和 GIMP 使用GNU GPLv3。
    如果你的工作是在開源社群開發專案,使用社群常用的許可證就可以了。

    如果希望商用則特別要注意下,許可的範圍。以下都是常用許可證型別的概要資訊:

    Apache License 2.0 :商業軟體最愛, 主要條件是要求保留原始版權和許可宣告。同時向貢獻者明確授予專利權。使用者可以自由修改,進行商業使用,大型專案可以不同的條款分發,沒有開源要求,修改原始碼需要記錄變更。

    BSD 3-Clause “New” or “Revised” license:允許商業釋出和銷售。使用者可以自由的使用,修改原始碼,也可以將修改後的程式碼作為開源或者專有軟體再發布。主要條件是要求尊重程式碼作者的著作權,即包含原始版權和免責宣告(二進位制形式分發必須分發文件中包含版權申明及免責宣告),且未經事先特別書面許可,不可以用開原始碼的“作者/機構的名字”或“原來產品的名字”做市場推廣。

    BSD 2-Clause “Simplified” or “FreeBSD” license:比3-Clause少一個條目,去掉了“不可以用開原始碼的“作者/機構的名字”或“原來產品的名字”做市場推廣。”.

    GNU General Public License: 商業軟體繞開,GPL不允許修改後和衍生的程式碼做為閉源的商業軟體釋出和銷售。

    GNU Library or “Lesser” General Public License (LGPL):允許商業軟體程式碼動態link到LGPL類庫。注意:不可以靜態連結,否則你的程式碼也必須用LGPL協議開源。(即:商業軟體可以動態使用,但不能修改)

    Mozilla Public License 2.0:修改的版本需要保持原始版權申明。編譯版本需和可獲得MPL協議下的原始碼。修改原始碼需要記錄變更。

    Common Development and Distribution License:商業軟體可用,也可以修改。可以自行釋出許可,允許公共版權使用,提供專利保護,無專利費

    Eclipse Public License version 2.0:商業軟體可用,也可以修改,無需開源。不過將本程式包含在商業產品中的貢獻者需要承擔因程式碼而產生的侵權責任,及對所有其他貢獻者的相關損失

    一般開源許可證中會說明以下許可權、使用條件和責任限制:

    商業使用(Commercial use):該軟體及其衍生產品可用於商業目的。
    分發(Distribution):該軟體可以被分發。
    修改(Modification):該軟體可能會被修改。
    專利使用(Patent use):該許可證提供了明確的專利權授予。/該許可明確宣告它不授予貢獻者專利的任何權利。
    私人使用(Private use):該軟體可以私下使用和修改。
    開源(Disclose source):分發軟體時必須開源。
    許可及版權宣告(License and copyright notice):該軟體必須隨附許可證和版權宣告的副本。
    分散式網路使用(Network use is distribution):通過網路與軟體進行互動的使用者被授予接收原始碼副本的權利。
    相同許可證(Same license):分發軟體時,必須以相同的許可證釋出修改。在某些情況下,可以使用類似或相關的許可證
    狀態變更(State changes):對程式碼所做的更改必須記錄。
    責任限制(Liability):該許可包括責任限制。
    商標使用(Trademark use):該許可證明確宣告它不授予商標權,即使沒有此類宣告的許可證可能不授予任何隱含的商標權。
    保證(Warranty):許可證明確宣告不提供任何保證。

    此外還有一些屬於非軟體許可證:

    資料,媒體等內容:CC0-1.0,CC-BY-4.0和CC-BY-SA-4.0是開放許可證,用於從資料集到影片的非軟體內容。這裡CC-BY-4.0和CC-BY-SA-4.0 不應用於軟體產品。
    文獻資料:任何開源軟體許可證或媒體開放許可證也適用於軟體文獻資料。如果您為軟體及其文件使用不同的許可證,請確保指定文件中的原始碼示例也已獲得軟體許可證的許可。
    字型:SIL Open Font License 1.1 保持字型開放的同時,允許它們在其他專案自由使用。
    如果您的專案包含軟體和其他部分的混合,您可以通過說明明確各個許可證適用於專案的不同部分。

    總結一下:開源許可證存在的主要意義就是保護專案貢獻者和使用使用者。倘若沒有許可證保護,企業和開發人員一般就不會接觸專案,開源社群也很難繁榮起來。如果要更全面的瞭解和選擇開源許可證,可以去大本營檢視所有已批准的許可證包括:如專用許可證、被取代的許可證或失效的許可證。

jash.liao@qq.com 發表迴響 取消回覆

你的電子郵件位址並不會被公開。 必要欄位標記為 *