开源软件的选择方式

这是一个开源软件盛行的时代,开源软件的共同的特点:源代码开放免费修改免费重新发布
相信很多小伙伴在解决同样问题的时候会发现存在多种解决方案。这时候我们怎么选择呢?

License授权

这点是重点,如果我们的软件是要用于商业的,在引用的开源方案中授权是受限的,搞不好就要惹上官司。因此,我们在选择开源软件的时候首要看的就是授权方式。下图给出引导:

在这里插入图片描述

GPL v2LinuxGPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售
BSD包括Xwindows、freeBDS、apache(APL)、perl、python、ruby、zope等特点就是虽然保留版权,免费修改、免费重新发布,而且允许商业使用,允许商业修改后不公布修改的软件代码。是对商业软件友好的授权方式。
(苹果的OS X 和IOS基于FreeBSD开发的。)
GPLlinux、gcc、KDE、gnome等允许免费修改、免费重发布,但要求修改代码必须也遵守GPL。因此是对商业不友好的授权。如果开源软件的开发要借助社区的力量,那么最好是用GPL授权,因为这样可以防止商业软件抢走用户而导致的开源软件的使用者和开发者都不足。(ubuntu、redhat)
LGPL在GPL下面还有一种对商业更友好的方式就是LGPL,允许商业代码链接LGPL代码,这样商业软件在利用LGPL软件的同时能够很大程度上保留商业利益。
MPLmozilla、openoffice允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者,这样发起者和组织者具有更优越的地位。MPL也是对商业友好的。并且用一些优惠来鼓励商业软件开源。
Apache Licenceandroid和BSD类似。

开发语言的限制

以MQTT为例,在mqtt.org的网站上有所有MQTT开源版本的实现。可以根据需要选择对应语言的实现。

https://github.com/mqtt/mqtt.github.io/wiki/servers

在这里插入图片描述
在这里插入图片描述

技术限制-安全漏洞

在选择开源软件时,还应注意软件的安全性,我们可以通过安全漏洞网站查询

http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=mosquitto

在这里插入图片描述

社区热度

开源软件最怕的是后续无人维护,社区热度高的相对有保障。
在这里插入图片描述
在这里插入图片描述

开源软件成熟度评估及选型指南》内容主要来自近几年我们对开源软件评估与应用选型的研究成果,以及对优秀的开源软件的筛选整理。内容主要面向那些希望将开源软件部署在其应用环境中,或利用开源软件进行二次开发的中小企业或开源爱好者。《开源软件成熟度评估及选型指南》对于那些利用开源软件的网络社区建设者也有一定的参考价值。 全书内容共分为四部分:第一部分主要讲解开源软件的相关概念,开源运动在国际和国内发展的历史,及开源软件应用普及中遇到的问题;第二部分主要讲解开源软件选型中成熟度评估模型在国际、国内发展的情况,并依据近几年我们在相关领域的研究、探索,结合国内外经验,提出一个成熟度评估模型;第三部分着重讲解在开源软件选型中非常重要的环节——开源软件许可,通过问答的方式向大家讲解开源许可相关的知识产权问题对开源软件选型的影响,并对开源许可中最重要的GPL协议进行了分析;第四部分向大家推荐一系列互联网开发、应用相关的开源软件,也作为我们对开源软件选型方法的实践。此外,在附录中给出了一个软件评估规范的参考范本和一些开源软件相关知识点的详细介绍。 《开源软件成熟度评估及选型指南》的一些内容来自相关项目或软件的官方信息;同时,《开源软件成熟度评估及选型指南》的内容也获得了开源中国社区和中日韩东北亚开源合作项目的大力协助,在此对他们深表感谢。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

名栩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值