评论

收藏

[JavaScript] 开源(Open source)是什么?为什么要开源

开发技术 开发技术 发布于:2021-12-09 12:30 | 阅读数:270 | 评论:0

Open source 从字面上理解仿佛是 “开放源代码”,但是实际上“开源”其实远远超出了对于源代码本身是否可访问与否的定义,它包括授权机制(许可证),治理机制,以及一些社区运营甚至开源商业模式相关的内容。如果仅仅讨论源代码可访问的话,我们一般称其为 “Source Available”。
要理解这个问题,我们要回顾一下开源的历史。“Open Source” 的出现需要先提到 “Free Software”。在软件发展历史的早期,绝大多数的商业软件是只售卖二进制的可执行程序的,并不会让源代码对用户可见。源代码当时是被当成软件的核心价值跟秘密的。某种程度上来说,对于当时的软件开发者来说,这是一种对软件知识产权的保护。也正是由于知识产权对软件的保护,带来了早期软件行业几十年爆发式的发展,并且也出现了微软、Oracle等等一系列成功的商业软件公司。
计算机的『大脑』是CPU,CPU只能执行机器代码,但是机器代码是二进制的0-1序列,差不多是这么个样子。 DSC0000.png
而常人是无法读懂这些机器代码的,而人能读的代码,是类似这样的。 DSC0001.png
开源到开放式组织
领导力便,当我们在组织中开发一个软件应该时是以职权影响力,为核心构建的:而开源方式,则是以职权影响力构建的
社区的美国人都可以提出自己的意见,你可以sayNo,但是美国都可以提出意见,就这一点来说,对于大部分国内公司说是一种挑战,大部分的领导希望听到统一声音,论组织内多样性的重要
简单来说,大家想来就可以来,想做就可以走,所以开源的难点就在于:如何吸引人来到参与开发
尽管大部分项目都是围绕着个人,团队的中心化开放组织,如linus至于Linux,但是开源还可能变成一个中心化的组织,如Node.js 的IO.js出走事件,根据开源协议,人们可以很容易派出新的项目TG:li9047


关注下面的标签,发现更多相似文章