什么是开源,项目,开源软件的例子

Программирование

开源是根据开源标准获得许可的软件。开放性原则不仅涵盖软件开发领域。例如,设计师提供对免费模板和字体的访问。在一些国家,政府机构正在转向开源软件。在德国,慕尼黑市已决定改用 LiMux 操作系统,这是 Ubuntu 的定制版本。在汉堡,官员们决定使用 Phoenix 办公套件而不是 Microsoft Office。英国政府从 PDF 转换为 ODF。在法国,宪兵队使用 Ubuntu 操作系统和免费的 LibreOffice。
什么是开源,项目,开源软件的例子

对开源软件的要求

让我们列出在开源许可下分发的应用程序必须满足的主要要求:

  • 程序免费分发;
  • 软件自带源代码,如果不在基础套件中,可以免费下载或通过其他方式获取;
  • 代码可以更改,部分代码可以在其他项目中使用,修改后的应用程序应根据开源许可的条款重新分发;
  • 不允许歧视任何人群,例如,在美国对程序的出口有限制,但免费许可证不能建立自己的禁令;
  • 开源许可证允许应用程序的所有用途,因此开发者的个人道德信念不会干扰分发,例如:“禁止用于基因研究”等条款是不可接受的;
  • 所有与开源许可相关的规则对所有用户都是相同的,禁止附加协议,例如保密;
  • 许可证不能与程序绑定,仅使用部分代码的开发人员拥有完整产品赋予的权利;
  • 用户可以选择他将使用的,例如,禁止要求开源提供的软件是开源的。

开源项目——它们的特点是什么

大多数在开源许可下分发的应用程序具有以下差异:

  • 程序是由使用它们的人编写的,因此,开发人员监控代码,快速修复错误并发现漏洞;
  • 大部分产品兼容多种操作系统;
  • 开源开发者社区对联系可以提交建议的用户开放;
  • 通常免费软件的更新比商业软件更频繁地发布,因此可以更快地消除错误;
  • 如果需要,用户可以用金钱支持他们喜欢的应用程序;
  • 安装开源程序时感染计算机或智能手机的风险很小,因为它们带有源代码。

自由软件出现的历史

自由软件运动的创始人被认为是 Richard Stallman。在麻省理工学院人工智能实验室工作期间,他为自由软件的开发做出了贡献。例如,为 PDP 计算机编写文本编辑器 EMACS。 1984 年,斯托曼辞去了麻省理工学院的工作,创立了 GNU 项目。它的狂热者创造了“自由软件”一词​​并制定了 GNU 宣言。 [标题ID =“attachment_12331”对齐=“aligncenter”宽度=“650”]
什么是开源,项目,开源软件的例子Richard Stallman [/ caption] 1985 年,Stallman 创建了自由软件基金会 (FSF),用于通过自愿捐赠开发自由软件。 1989 年,引入了第一个通用公共许可证 (GPL),它保护用户并授予复制、修改和分发应用程序的权利。后来,有麻省理工学院和 BSD 的许可证,由加州大学开发。到 1991 年,已经开发出独立的操作系统,但缺少内核。同年,Linus Torvalds 推出了 Linux 内核,该内核于 1992 年在 GPL 下获得许可。上世纪 90 年代中期,大公司开始对开源市场产生兴趣。第一个是网景。她发布的浏览器被认为是当时最受欢迎的浏览器之一。 1998年,她开源了。在公司不复存在后,Mozilla Firefox 浏览器是根据 Navigator 代码创建的。现在成立于1998年的Open Source Initiative从事开源软件的开发和推广。开源有什么意义:https://youtu.be/8G3Dz_GyPI0

开源许可证

有几种不同的开源许可证。为了更容易理解它们,我们提供了下图,显示了它们之间的区别。

什么是开源,项目,开源软件的例子
开源许可证 [/ caption] 现在让我们谈谈最流行的。
  1. MIT 许可证是在美国领先的教育机构之一——麻省理工学院开发的。它几乎与 BSD 许可证的三条款版本完全一致,仅增加了一个条款,禁止在广告中使用作者姓名。在它之下出来了:XFree86、Expat、PuTTY等产品。
  2. BSD 许可证最早出现于上世纪 80 年代初,用于分发同名操作系统。此许可证有以下选项:
    • 原始 BSD许可证是第一个原始许可证,也称为四条款许可证。
    • 修改后的 BSD许可证是一个三条款许可证,其中排除了一个条款,它有义务在广告中表明本应用程序使用加州大学开发的软件。
    • 为受专利保护的应用程序开发的英特尔许可证。它不受开源计划的支持。[caption id = "attachment_11853" align = "aligncenter" width = "580"] 什么是开源,项目,开源软件的例子Git Hub 上使用的许可证 [/ caption]
  3. GNU 通用公共许可证是最流行的许可证。她出现在1988年。1991 年,出现了 GPL v2 的改进版本,直到今天仍然没有失去其意义。2006 年,采用了 GPL v2 许可证。
  4. GNU 宽松通用公共许可证,或简称 GNU LGPL,旨在将库与在其他许可证下分发的软件链接起来。
  5. Apache许可证允许您修改和重新分发源代码和二进制文件中的程序。除了产品的权利外,还设想了专利的转让。
  6. Guile类似于 GNU GPL,但它增加了一个条款,允许开源和非自由软件合并,因此它不能被视为严格的 copyleft,但它仍然与 GNU GPL 兼容。
  7. 通用公共许可证是由IBM为它的发展而发展。它允许您更改代码并在商业程序中使用它。Microsoft 将该许可证用于 Windows Installer XML。
  8. Mozilla 公共许可证(MPL) 是一个复杂的许可证,它不是严格的 copyleft。
  9. 许可证孙公共区域的C牌类似MPL,但也有细微的变化,例如,而不是网景上市的Sun微系统。

还有其他不太常见的许可证,例如 Guile、Common Public License、Mozilla Public License 等。https://youtu.be/oAW5Dh9q3PM

开源项目示例

Linux 内核和 GNU 应用程序的开发成为其他开源应用程序的基础。 Netscape 的到来引起了大型 IT 公司的兴趣。从那时起,已经开发了许多不同的产品。先说 Debian,它从 1994 年到 1995 年支持自由软件基金会,后来创建了 Software in the Public Interest 非营利组织,继续资助该项目。在这个项目的框架内,不仅创建了操作系统,还创建了办公套件 LibreOffice、Firefox 浏览器、Evolution 邮件客户端、K3b CD 刻录应用程序、VCL 视频播放器、GIMP 图像编辑器等产品. Apache 软件基金会是一家非营利性公司,作为开源软件支持项目出现。该组织最受欢迎的产品是同名的网络服务器。该公司现在支持在 Apache 许可下分发的大量项目。 ASF 的赞助商包括微软、亚马逊和华为。另一家开源公司是 Red Hat。其主要开发是基于Linux内核的操作系统。她不仅从事软件工作,还从事技术支持和专家培训。它于 2018 年被 IBM 收购。谷歌还开发免费软件。她开发并支持以下项目:用于开发机器学习系统的 TensorFlow 库、Go 语言、用于自动化软件部署的 Kubernetes 程序以及其他产品。在科学上,开源不仅涉及软件,还涉及作品的出版,同行评审和教育资源支持。 1991 年,Paul Ginsparg 在洛斯阿拉莫斯实验室组织了一个电子档案 arXiv,在里面不仅可以找到物理学方面的作品,还可以找到医学、数学和其他科学方面的作品。 CERN 也有一个门户网站,提供开放的科学作品。 [标题ID =“attachment_12326”对齐=“aligncenter”宽度=“1263”]
什么是开源,项目,开源软件的例子开源操作系统 – 开源操作系统

如何参与开源项目

如果您想练习编程并填写简历,那么参与开源产品的开发正是您所需要的。我们将分阶段告诉您为此需要什么。首先,您需要在 GitHub 上注册并选择您将参与的项目。你应该对它感兴趣。如果它包含许多您可以执行的任务,那就太好了。你还应该关注项目的热度,它可以通过星级的数量来确定。确定开发的活跃程度以及最后一次更改的时间也很重要。选择一个有趣的项目后,您需要找到一位策展人并与他建立互动。下一步是选择任务。首先,建议选择最简单的任务。主要是你能解决它。之后,将项目转移到您的位置并安装所有必要的工具。解决问题后,提出更改存储库中代码的建议。为此,您需要将代码上传到 GitHub 并单击“拉取请求”按钮。之后,您需要输入请求的名称和描述。之后,您需要等待策展人接受或拒绝提议的更改。如果在接受任务后出现其他紧急情况,或者您意识到自己无法应对,那么您可以拒绝接受任务。这是正常的,但您需要将您的决定传达给策展人。之后,您需要输入请求的名称和描述。之后,您需要等待策展人接受或拒绝提议的更改。如果在接受任务后出现其他紧急情况,或者您意识到自己无法应对,那么您可以拒绝接受任务。这是正常的,但您需要将您的决定传达给策展人。之后,您需要输入请求的名称和描述。之后,您需要等待策展人接受或拒绝提议的更改。如果在接受任务后出现其他紧急情况,或者您意识到自己无法应对,那么您可以拒绝接受任务。这是正常的,但您需要将您的决定传达给策展人。
什么是开源,项目,开源软件的例子

在交易机器人的开发中使用开源

交易顾问或
机器人是根据预定算法在交易所进行交易的程序。他们可以完全独立地或以半自动模式进行交易。在第二种情况下,他们只是发送有关交易的信号,然后交易者做出最终决定。让我们列出交易机器人的优势:

  1. 交易者不需要自己跟踪价格。
  2. 智能交易系统严格按照给定的算法运行,他们没有情绪。
  3. 机器人的反应比人类快得多。

但除了优点之外,自动顾问也有缺点:

  • 在非标准的情况下,例如,汇率急剧上涨,顾问可能会做出不恰当的反应,交易者会赔钱;
  • 一些专业顾问必须支付订阅费。

接下来,让我们来看看几个开源交易顾问。它们可以从 GitHub 下载、安装和用于交易。您还可以改进源代码并为自己创建一个机器人。

壁虎机器人

这是多年前出现的成熟顾问。许多交易者开始使用这个机器人进行交易。它的创建者目前不支持它,但可以从 GitHub 免费下载。它可以用于加密货币交易所,可以收集市场信息和下订单。GEKKO bot 有许多设置,您可以使用这些设置测试交易算法,以及调整和优化系统以进行交易。它有一组现成的策略,您可以自定义。也可以创建自己的交易系统。它支持 23 个交易所,包括:Bitfinex、EXMO、Bittrex、Bitstamp。

禅博

Zenbot 加密货币交易顾问使用人工智能进行交易。可以根据您的意愿对其进行自定义。它与大多数操作系统兼容。可以进行高频交易,同时交易多种资产。此外,这个机器人可以通过仲裁加密货币来赚钱。但它没有图形用户界面。能够在以下交易所进行交易:Bittrex、Quadria、GDAX、Pollniex 和 Gemini。
什么是开源,项目,开源软件的例子

操作系统

OsEngine 是一套交易所交易应用程序。这包括:

  • 数据 – 用于从各种来源加载历史数据。
  • 优化器 – 用于测试一种策略。
  • 测试器 – 用于测试多种交易算法,但不更改参数。它可以在多个时间范围和工具上同时工作。
  • 矿工 – 在图表上搜索盈利模式。找到的表格可用于实际交易。
  • Trader 是一个交易模块。

什么是开源,项目,开源软件的例子OsEngine 使用了三十多个内置交易系统,其中有趋势(例如 Bill Williams 或 Jesse Livermore 的策略)、反趋势(例如使用镇流器、
布林线)和套利。可用于一些国际交易所(LMAX、InteractivBrokers 和 ninja 交易)、
MOEX(Transac、
Quik、Most Asts、Plaza 2、SmartCom)和加密货币交易所(Bitstamp、Bitfinex、Kraken、LiveCoin、ExMo、Binance、ZB、 Bitmex、BitMax)。还与一个 Oanda 外汇交易所兼容。还有其他流行的开源交易顾问,例如 TradingBot,可通过经纪人 Atentis 或简单的 TradingBot 机器人在莫斯科交易所进行交易。

info
Rate author
Add a comment