Linux培训
达内IT学院

400-111-8989

关于代码开源的意义所在


最近,我经历了一次有意思的讨论。讨论的主题是代码开源,尤其是指那些用作商业用途的代码,比如用于创造你自己的产品或者服务的代码。以下就是这次讨论所得的,对“开源”的各个方面的思考。同时我也真心希望读者能进行讨论,分享自己的经验。

质量

不论何时,只要你决定公开地做一件事,你就会倾向于对其付出更多的努力,力求将其做好。不管是一场演讲,一次营销活动,还是一个软件项目。只要你想把这个软件项目公开,你就绝不会希望你提交的代码糟糕透顶,使你蒙羞。正因为其他人可以轻易地浏览,甚至评价你的代码,所以你会开始思考,自己到底在做什么。另一方面,你也希望写出漂亮而有效的代码,这样,其他的"程序员" 会欣赏,并在他们自己的代码中使用你的方案,或者对你的代码提出修改意见。

社区

不管你使用的是哪一种技术,也不管你做的项目有多小众,可以肯定的是,只要你付出最低限度的努力,在一些论坛或者用户小组中为你的项目做点宣传,就一定会有人对你的项目感兴趣。当你的代码出现第一个分支,你就可以为自己感到骄傲,因为有人觉得你的代码有用。这整个过程实际上与写博客非常相似。所有人都很喜欢读那些能够解答我们正在面临的问题的文章。同时,我们也很喜欢使用一些免费和开源的软件,不管它是一款应用还是只是我们使用的一个库。既然其他的开发者们用他们自己宝贵的时间,分享了他们的成果,为什么我们不分享点什么呢?不要只做一名消费者,也做一名生产者吧。

透明

在应用中处理用户数据是常常发生的事,因此,透明就显得尤为重要。部分用户对于使用我们的服务会心生疑虑,因为他们会怀疑我们用他们的私人数据做一些不太正当的事。而当你的服务对象是政府部门时,这一点更是非常关键。如果代码不是开源的,势必会产生怀疑。反之,如果你的项目是开源的,那么所有人都能看到,并确认这款应用并没有侵犯他的个人隐私,没有泄露他的个人资料,也没有后门程序等。这可能是让用户相信你的唯一方法。

效益

不管你是独自开发一个项目,还是管理着一群人,随着你的项目越来越大,代码开源都将会给你带来巨大的效益。对你个人来说,你将会更容易获得一份好的工作。因为你的目标公司,可以轻易地浏览到你写的代码和你的思路。同样的道理,如果你经营的公司是代码开源的,那么,潜在的客户们就可以轻易的看到你的代码,并判断你的服务是否是他们想要的。

管理

不便于管理可能是开源的一个劣势。当你在管理一个大项目时,好几只团队同时工作,许许多多的参与者们都会提交他们的修改。此时,你就必须要做好两件事——首先,坚持按照最初的计划,进行核心部分的开发,同时你还应该处理所有发现的bug或者需要加强的地方,给所有员工的工作排出优先级。如果你完全不考虑(或者很少考虑)参与者的建议,那么很可能会民怨四起。所以,对于开源项目来说,这个问题可能比较棘手。

禁忌

当然,我们不能让所有的项目都开源。大部分的公司都不希望将代码公开,这是完全可以理解的。比如,有些项目可能使用了某种特别的算法,公开则有可能被盗用等等。不过,如果你只是在开发自己的项目,不要害怕与世界分享你的经验和知识。实际上,不会有人真的偷你的代码,而你却为整个开发者社区提供了高质量的代码。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:Linux Kernel 更新,网络性能大幅提高
下一篇:Linux版勒索病毒来袭,智能硬件易成重灾区!

Linux发行版本有哪些?

哪些当前主流的技术与Linux相关?

云计算的概念是由什么提出的?

云计算是啥意思?

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省