常见的开源协议有哪些

2023-11-14

开源软件(Open source software)的源代码对有追求的程序员来说是一无尽的宝藏,此外正确的使用开源软件,可以提高开发软件时的效率、提升软件质量。但是在使用和借鉴开源软件的时候,我们不得不关心一下它对使用者的诸多限制,比较常见的方式即协议授权(licence),这些协议中明确说明了使用者应该遵循的原则

现在开源协议众多,大概有50多种,下面只对几种常见协议做介绍。

1 BSD开源协议

BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。

但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:

  • 如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
  • 如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
  • 不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。

BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。

2 Apache Licence 2.0

Apache Licence是著

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

常见的开源协议有哪些 的相关文章

  • C#中索引器

    C 中索引器和数组的使用类似 public class Test private readonly string name new string 10 public string this int index get return name
  • 【论文速览】根据人脑fMRI信号重建图像 Image Reconstruction from human brain activity

    文章目录 前言 文章一 研究背景 主要方法 部分实验结果 总结与思考 参考资料 文章二 研究背景 主要方法 部分实验结果 总结与思考 前言 人类的视觉神经系统对于真实世界的视觉刺激有着非凡的感知与理解能力 比如我们能够准确地识别物体距离和三

随机推荐

  • (java 基础知识) Java 安全套接字--javax.net.ssl

    有关SSL的原理和介绍在网上已经有不少 对于Java下使用keytool生成证书 配置SSL通信的教程也非常多 但如果我们不能够亲自动手做一个SSL Sever和SSL Client 可能就永远也不能深入地理解Java环境下 SSL的通信是
  • leetcode-2 Add Two Numbers(两数相加)

    题目描述 给出两个 非空 的链表用来表示两个非负的整数 其中 它们各自的位数是按照 逆序 的方式存储的 并且它们的每个节点只能存储 一位 数字 如果 我们将这两个数相加起来 则会返回一个新的链表来表示它们的和 您可以假设除了数字 0 之外
  • 下一个区块链风口必备——跨链互操作

    Moonbeam是首个原生的跨链消息开发者平台 旨在通过结合波卡生态独有的XCM技术和Moonbeam首创的预编译技术为用户带来无缝且丝滑的跨链互操作性体验 让用户在无意中享受多链部署带来特色的同时消除链与链之间的隔阂 除外 Moonbea
  • uboot启动流程分析

    FS4412 SOC的启动过程 在图中有 Cortax A9 其是芯片核心 也就是中央处理器 CPU Internal Rom 是一个只读存储器 里面存储了代码 总大小为64K 它的功能是用于读写pin脚 其作用是用来告诉系统从何处去读取u
  • #13文献学习--边缘计算的计算卸载建模综述

    文献 A survey on computation offloading modeling for edge computing 一 介绍 边缘计算 在网络边缘 代表云服务的下游数据和代表物联网服务的上游数据上执行计算 优势 计算或云计算
  • 【react】state的总结

    state是组件对象最重要的属性 值是对象 组件被称为 状态机 通过更新组件的state来更新对应的页面显示 重新渲染组件 组件中render方法中的this指向组件的实例对象 组件自定义的方法中的this指向undefined 如何解决
  • ffpmeg相对无损转换mkv到mp4,保留标签、封面等元数据

    其实这个无损是相对无损 不是绝对无损 因为mkv封装支持的格式 标签等是比mp4封装要多的 比如mkv可以封装wav音频 mp4不能封装wav音频 所以这里的无损的前提是该mkv的媒体流 标签 TAG 封面图等 都是Mp4本身支持的 才能无
  • 图(基本概念)

    本章重点 图的基本概念和基本性质 图的存储结构 邻接矩阵 邻接表 邻接多重表 十字链表 及其特性 存储结构之间的转化 基于存储结构上的遍历操作和各种应用 拓扑排序 最小生成树 最短路径 关键路径 等 算法难度大 主要掌握深度优先搜索和广度优
  • otsu算法

    otsu法 最大类间方差法 有时也称之为大津算法 使用的是聚类的思想 把图像的灰度数按灰度级分成2个部分 使得两个部分之间的灰度值差异最大 每个部分之间的灰度差异最小 通过方差的计算来寻找一个合适的灰度级别 来划分 所以 可以在二值化的时候
  • 【Redis】缓存问题

    用户数据一般都是存储在数据库中 数据库则落在磁盘上 而磁盘的I O速度是计算机中最慢的硬件 当用户的访问量在某一个时间段突然上升 数据库就很容易崩溃 为了避免用户直接访问数据库 所以会使用缓存数据库 Redis 作为缓冲层 Redis 是内
  • mysql topn_TopN语句

    TopN语句常用于计算实时数据中对某个指标的最大或者最小的前N个数据的筛选 Flink SQL可以基于 OVER窗口操作灵活地完成TopN的工作 语法 SELECT FROM SELECT ROW NUMBER OVER PARTITION
  • 基于FPAG高精度频率与电压测量系统

    基于FPAG高精度频率与电压测量系统 1 系统功能与组成 本次设计的是一个测量频率与电压的系统 其中方波频率范围 在5k 50k内可以精确到小数点后两位测量原理为计算待测频率的周期 电压采用12位双路AD 采样频率为50Mhz 测量的值通过
  • 使用 UpdatePanel

    1 概述 ASP NET UpdatePanel 控件能让你创建丰富的 以客户为中心的 Web 应用程序 使用 UpdatePanel 控件 可以刷新选择的页面部分而不是使用回发来刷新整个页面 这就像是执行了一个局部页面更新一样 包含一个
  • 删除指定文件夹内创建时间24小时之外的所有文件

    File dir new File D dir File list dir listFiles for File file list if new Date getTime file lastModified gt 24 60 60 100
  • 2013我国软件业务收入百强企业揭晓 华为夺冠 (zz)

    z 2013 07 10 10 01 59 IS2120 BG57IV3 T4270528460 K T280 L4220 R118 V3466 新华网5月14日消息 2013年 第十二届 软件前百家企业业务收入达3667亿元 华为 海尔
  • redis扣库存-秒杀活动使用

    简单利用redis的LUA脚本功能 一次性操作 实现原子性扣减库存 注释都写得明白 大家凑合着看吧 没有增加库存 直接是初始化一次库存量 后面等过期失效 特别注意一点 就是在集群模式下 需要解决依赖问题 第二个是 序列化的时候 需要把int
  • STM32学习笔记---TFT-LCD

    一 常见显示器介绍 1 显示器分类 显示器属于计算机的 I O 设备 即输入输出设备 它是一种将特定电子信息输出到屏幕上再反射到人眼的显示工具 常见显示器有三类 CRT显示器 LCD液晶显示器 LED点阵显示器 1 1 CRT显示器
  • Golang基础(指针)

    一 变量地址 变量本质就是内存中一块数据的标记 把值存储到变量中实质是把值存储到内存中 每次对变量重新赋值就是在修改变量地址中的内容 在Go语言中可以通过 变量名 获取到变量地址值 重新创建一个非引用型变量 即使是把已有变量直接赋值给新变量
  • Python爬虫实战之电影爬取过程

    俗话说 兴趣所在 方能大展拳脚 so结合兴趣的学习才能事半功倍 更加努力专心 apparently本次任务是在视频网站爬取一些好看的小电影 地址不放 狗头保命 只记录过程 实现功能 从网站上爬取采用m3u8分段方式的视频文件 对加密的 ts
  • 常见的开源协议有哪些

    开源软件 Open source software 的源代码对有追求的程序员来说是一无尽的宝藏 此外正确的使用开源软件 可以提高开发软件时的效率 提升软件质量 但是在使用和借鉴开源软件的时候 我们不得不关心一下它对使用者的诸多限制 比较常见