zoukankan      html  css  js  c++  java
  • 软件(代码)开源,协议声明

    注意:对于协议有个大概的了解就行了,本文叙述不是很标准,如果要做具体了解,请戳文中给出的链接。

    关于开源协议网上有很多说明,不过写的都十分晦涩,让人木有读下去的欲望,下面给大家简单的科普一下。

    一般很少人关注代码开源的协议说明,我们平时看到的 MIT Apache BSD 等,一堆英文的缩写,也懒得去看具体的内容,这说明你的维权意识还不是很强。辛辛苦苦写了一堆代码,贴到某个分享区,啪一下被人家复制走了,然后别人改个名字,捎带加个协议,说是自己写的,一般情况下这种事情的发生我们可以忽视之,当如果这串代码被人家作为商用,成为挣钱利器,那个时候你后悔也来不及了。

    目前市面上看到的协议种类还是挺繁多的,同一种协议可能还有几个版本,每个版本之间存在细微的差异,如何给自己的代码添加合适的协议?太宽松了,自己劳动成果容易被人家窃取;太苛刻了,人家也不想用你的东西。

    1. 如果你想使用一个简单不那么麻烦的协议,可以选择 MIT

    别人需要注意什么呢?署上你的大名,就可以带走你的代码了。你不用为他项目中因使用你的代码出现的问题承担任何责任。

    2. 如果你顾及到专利,可以选择 Apache

    可能代码中的某个技术或者创新点,你申请了专利,使用这个协议可以保护你专利的一些权力,简单点说就是让别人免费使用你这专利中的东西。

    3. 如果你很在意别人对你代码的修改,希望分享并得到促进,可以选择 GPL

    GPL 分为两个版本一个是 V2,一个是 V3,作品带上这个协议之后,别人想分享的话也得加上这个协议,对代码作出比较大的更改也是需要附带说明的。

    上面提到的几个是比较常见的,也提一下其他几个。

    • LGPL 在GPL前面多了个 L,内容和 GPL 差不多,适合一些代码库或者框架使用。
    • BSD 也有两个版本,类似 MIT
    • No License 注意,这可不是没有版权声明,只是作者保留版权(包括分发,复制或者创造衍生物),只是你分享的时候允许分享平台附带的一些操作。如代码扔到 gitlab 上,就表示你允许别人查看并且 fork 你的代码。
    • Public domain dedication 这玩意儿才是不保留版权,也就是版权自由(Copy Left),跟保留版权(Copy Right)是相对的。基本就是放弃对这段代码的任何权利,可以自由使用。他和不声明版权的区别就是,告诉别人,兄弟,我这代码是没版权的,你随便使用~

    如果还想具体了解其他相关的知识,请直接去http://choosealicense.com/,这里有最权威最全面的的说明。

    汉化版地址:http://choosealicense.gitcafe.com/

  • 相关阅读:
    Working with WordprocessingML documents (Open XML SDK)
    How to Choose the Best Way to Pass Multiple Models in ASP.NET MVC
    Azure:Manage anonymous read access to containers and blobs
    Convert HTML to PDF with New Plugin
    location.replace() keeps the history under control
    On the nightmare that is JSON Dates. Plus, JSON.NET and ASP.NET Web API
    HTTP Modules versus ASP.NET MVC Action Filters
    解读ASP.NET 5 & MVC6系列(6):Middleware详解
    Content Negotiation in ASP.NET Web API
    Action Results in Web API 2
  • 原文地址:https://www.cnblogs.com/hustskyking/p/open-source.html
Copyright © 2011-2022 走看看