如果您在科技行业工作了一段时间,您可能听说过开源或开源软件。当我们谈论开源时,您应该想到开放协作、开放交流、参与透明和面向社区的开发。
在本文中,您将了解更多关于开源软件的信息,包括开源与其他形式软件的区别、OSS 的主要特性、开源的优缺点、如何开始为开源做贡献,以及 OSS 的一些示例。
开源是任何人都可以修改和共享其源代码的任何程序,因为它是公开访问的。
源代码是由程序员使用计算机编程语言以函数、描述、方法、调用或任何其他操作语句的形式编写的一组指令。任何人都可以编辑和重新分发的源代码可以是开放的,也可以是关闭的。源代码是大多数软件或计算机用户看不到的部分。
术语开源软件是一种非专有软件,任何人都可以公开使用其中的代码来检查、评论、修改、改进和重新分发它。开源软件由一组开发人员创建和维护,因此如果您不熟悉计算机编程,您可以作为开源贡献者开始您的旅程。
我从 2017 年开始接触开源,并于 2020 年开始了我的第一个贡献。我在Apache 软件基金会Gihhub 和Mozilla 移动 Github上做出了我的第一个贡献。
不要混淆开源、免费、封闭软件和免费软件。本节重点介绍这些软件类型之间的区别。
开源软件是任何人都可以编辑、改进和重新分发的软件。任何人都可以访问源代码。开源促进源代码的协作和共享。这是组织、开发人员和个人协作的有效方式。使用该软件的自由不是绝对的或强加的,但它是允许的。每个开源软件都不是免费的。但是,一些开源许可证是有限制的。 WordPress是开源软件的一个例子
自由软件描述了源代码可以不受任何限制地免费使用、编辑和重新分发的软件。对于自由软件,自由是一种比任何其他事物都更重要的价值。所有免费软件都是开源软件。战神就是一个例子
开源软件和免费软件具有不同的特点。一些开源软件是有限制的,所有的自由软件都是开源软件,但并不是所有的开源软件都是自由软件。
免费软件是任何可以免费使用并可供公众使用的软件。如果您是,使用免费软件可能会令人沮丧,因为它的源代码不是开放的,或者更确切地说,它是封闭的,因此您可以编辑软件以满足您的需要。您只能使用它提供的功能,即使它是有限的。
谷歌浏览器是免费软件的一个例子。
使用开源软件时,您可以编辑、改进和添加不同的功能以满足您的需求。一个例子是 Chromium。
免费软件源代码是封闭的,只有创建该软件的开发人员或组织才能查看其源代码,而开源软件则可以编辑和重新分发。免费软件受版权保护,而开源软件则没有。
您不需要经过身份验证的许可证即可使用开源软件。它们使用 GNU 公共许可证运行。它们可以自由安装在任何计算机系统上。开源软件是通过开放协作开发和维护的。
专有软件是源代码受保护(封闭)的软件。没有有效许可证,它们不能安装在计算机上。因此,用户需要一个有效且经过身份验证的许可证才能使用它。它们也像免费软件一样受版权保护,但不同之处在于您无需付费即可使用免费软件。一个例子是 Windows
在本节中,我将详细阐述涵盖开源软件的各种关键特性和价值。
选择使用或贡献开源软件有很多好处。其中一些包括:
并不是每个人都接受开源理念。一些组织仍在争论开源软件更容易受到攻击的事实,因为它们的源代码对任何人都是开放的。
我已经在软件社区工作了 3 到 4 年,我注意到它们往往更安全,因为与安全相关或无关的问题很容易被社区成员识别和修复。但是,我同样注意到开源的一些缺点。
为开源软件做贡献非常简单。您可以通过识别和修复错误、添加功能、改进文档以及以博客文章、技术教程或创建视频的形式编写内容来做到这一点。您还可以创建自己的开源项目来推广开源。
要为现有的开源软件做出贡献,您应该前往GitHub :
如果您没有任何项目想法,那么可以贡献的开源项目包括
开源许可证管理除初始开发人员之外的其他人如何使用、修改和重新分发软件。它允许软件透明并由社区成员或第三方更改。根据开源倡议包括
您可能在没有意识到的情况下使用了开源软件。那里有很多。一些流行和最常用的开源软件是
大多数开源软件都是免费的,但也有一些例外。一些开源许可证是有限制的,不允许创建修改版本。一个例子是开源 Watcom
您可以在 SourceForge、OSDN、FossHub、GitHub 和 F-Droid 上查找和下载开源项目
为开源做出贡献的最重要优势是您可以找到其他开发人员并与之协作,从而改善您的开发人员网络。
开源通过与其他组织和开发人员的合作改进创新
开源竞赛是您可以学习参与开源项目、展示您的编码技能并获得反馈的竞赛。开源竞赛的示例包括开源竞赛、 Google 代码之夏 (GSoC) 、 Outreachy 、 Open Summer of Code 、自由软件基金会 (FSF) 实习计划、 GirlScript 代码之夏 (GSSoC)
封闭软件是其源代码仅供作者使用的软件。所以只有作者可以修改和复制它。
Open Source Initiative 是一个非营利组织,其主要目的是教育、形成和宣传开源的好处
开源可供任何人编辑、使用和重新分发。开源的一些关键特性包括透明度、可靠性、可用社区和灵活性。但是,从长远来看,OSS 的成本可能很高。因此,如果您计划将 OSS 整合到您的业务中,您需要在项目计划中包括额外或紧急成本,包括培训员工使用该软件的成本。一些流行的开源项目包括 Apache、WordPress 和 Mozilla Firefox。
如果您喜欢此类内容,请随时分享或订阅我们下方的时事通讯,以定期获取此类新鲜内容。
也发布 在这里。