谈谈我是怎么利用开源软件的

原创 2012年03月28日 11:20:15
最近看见.net版的许多人对开源软件不怎么了解,甚至对它有些误解,我想谈谈我对开源软件的看法。

开源软件的详细定义比较复杂,简单点说,就是一种源代码可以任意获取的计算机软件,这种软件的版权持有人在软件协议的规定之下保留一部分权利并允许用户学习、修改、增进提高这款软件的质量。
开源软件的许可证比较繁多和复杂,对于我们来说,经常遇到的开源许可证大多是GPL和BSD两种,此外还有Adobe经常使用的MPL许可证。简单来说,GPL许可证具有相当强的传染性,如果你想要把一份采用GPL许可证的代码经过修改后再次发布二进制版本,那么你同时也必须再次开放其源代码。而BSD许可证则相对宽松许多,它允许对源代码的修改后再次发布时仅包含许可证而不必再次开放源代码,且可以将修改后的版本专为商业用途(如微软的产品中引入了BSD网络部分的源码,修改后则作为专有软件出售)。 

由于java是最早拥抱开源的语言之一,它的开源项目数不甚数。最常见的就是web框架了,比如struts。以前没有struts的时候,做一个网站是一项非常复杂的任务,开发人员要懂得web运作的原理,订制各种网页模板,一个页面交互也够忙活个半天,如果客户要求加个文件上传之类的功能,这在当时就是个考验人技术的难点。现在呢,使用了开源框架,程序员的工作简化了许多,struts很容易上手,有java 基础的话,1到2天就学会了,它内置各种功能丰富的插件,比如文件上传,ajax交互表单,实用的HTML textarea,用这些插件的只要在页面上增加一个相应的标签就行了,无需关心后台怎么实现。这些东西都是免费使用的,有了它一个菜鸟花几天时间,也能拥有不输给老鸟的开发能力。

你用这些现成的东西为自己创造财富的同时一定会有疑问?这些开源软件作者,吃饱了撑,送钱给你?开源软件并不是一个人开发的,他是开源团队共同开发的,任何人都可以创建一个开源项目,比如apache,如果你有一个很好的idea,你也可以上去创建一个项目,提交一些代码,会有人提出他的看法,甚至会有人帮你完善你的代码。这帮人为什么这么高尚,乐于无私奉献?我也没法理解,也许这些程序员希望自己的idea发扬光大,希望自己的技术传承给更多的人,也许这就是他们的初衷,这只是我的猜测。你创建的这个小项目就是一个孵化器项目,至于它能否成功孵化,就靠你了。

开源软件并不是免费的午餐,它是你赚钱的工具,但是赚钱还是靠你自己的辛勤劳动。它能做的只是提高你的工作效率,加快你赚钱的速度,增强你的信心。不用担心其他软件公司有技术积累,而你没有,众多的开源软件就是技术宝库,任你使用。

开源的另一个好处就是你可以随意修改和扩展它,还用struts举例,如果你发现它的插件满足不了你的需求,你可以自己做一个插件帮他扩展功能,这时就可以参考它的源代码了,如果你认为你的插件是个杰作,你也可以把它的源代码贡献给struts社区,这样你就为他做了件好事,也算报答它作为赚钱工具了。就算你去开源社区里面提提意见,帮他们做做测试,帮他们做个logo,也算一件可以报答他们的好事,你把它推荐给更多的人使用也算一件报答它的好事。

开源软件还能帮助我学习,比如我想学图像处理编程,就会有ImageJ这个开源组件供我研究其中的算法。我想学嵌入式开发,就会有许多嵌入式数据库项目供我学习。等赚够了钱,有时间我可以更深入的学习其中的算法,实现更远大的理想。

开源已经成为一种趋势,IBM贡献了eclipse,在众多开源爱好者的努力下,如今它已经成为功能强大的平台,会有越来越多的人使用它。我想今后也会有越来越多的人使用开源软件。毕竟使用开源软件,比使用盗版软件更有安全感,不用担心哪天会过期,不用担心使用盗版软件做出的产品将来会有版权问题。你想帮家人修个照片,你也不用去购买庞大的Photoshop,开源的GIMP完全可以满足你的要求,如果你把它用于专业的印刷行业,GIMP达不到你的要求了,这时再考虑购买Photoshop。

你了解开源软件了吗?你开始利用它们为你创造财富了吗?

开源SDK实现Android视频直播

最近一段时间,视频直播可谓大火。在视频直播领域,有不同的商家提供各种的商业解决方案,包括软硬件设备,摄像机,编码器,流媒体服务器等。本文要讲解的是如何使用一系列免费工具,打造一套视频直播方案。视频直播...
  • soonfly
  • soonfly
  • 2017年06月02日 12:03
  • 1571

开源软件及国内发展现状

1 开源是大势所趋 随着计算机技术的发展,尤其是互联网技术和相关企业的兴起,开源软件在操作系统、编译工具链、数据库、WEB服务器、移动操作系统等各个方面已经成 为主流。而且许多企业利用开源软件形...
  • dolphin98629
  • dolphin98629
  • 2016年12月01日 14:08
  • 1623

开源软件七大盈利模式

开源软件在发展历程中,已经不仅仅是开放源代码的免费软件。开源软件与商业并不冲突,它是一种新兴的商业模式。与传统的商业软件相比,开源软件采用了开放源代码、免费分发等形式,减少了营销与销售成本,更易于广泛...
  • dolphin98629
  • dolphin98629
  • 2016年12月01日 13:59
  • 2103

自由软件、开源软件、免费软件之间的区别

一。好汉一问:什么是开源软件?什么是自由软件?他们就是免费软件?      很多人经常把开源软件和自由软件混为一谈,也常常会有人把开源软件和免费软件这两个概念混淆在一起,其实当我第一此站在HUS...
  • xxssyyyyssxx
  • xxssyyyyssxx
  • 2015年11月25日 14:50
  • 1893

开源软件测评方法及工具

一、开源史上最成功的八个开源软件 就开源本身而言,它就是个成功案例。它不仅受个人喜欢,而且众多知名企业也青睐于它。虽然开源计划和开源产品数不胜数,但哪一个才是最成功的呢?这里所说的“成功”的定义是:...
  • wtyvhreal
  • wtyvhreal
  • 2014年12月31日 16:30
  • 1118

开源软件,自由软件,免费软件三者的区别

一。好汉一问:什么是开源软件?什么是自由软件?他们就是免费软件?     很多人经常把开源软件和自由软件混为一谈,也常常会有人把开源软件和免费软件这两个概念混淆在一起,其实当我第一此站在HUSA的讲台...
  • testcs_dn
  • testcs_dn
  • 2014年07月12日 09:28
  • 6263

开源软件新时代:55个经典开源Wind…

开源软件新时代:55个经典开源Windows工具 开放源代码软件已经成为一个时髦的名词,这里有两个有力的证据:Firefox浏览器的下载人次超过了2500万;同时,基于Linux的Web服务器也占据...
  • currying
  • currying
  • 2016年03月21日 10:11
  • 1501

关于开源软件的几个看法

个人最近接触和使用了几个开源软件,有几个想法和看法。做一下记录。      开源软件的好处和优势:       1、开放源码,降低了学习者的准入门槛,如果我们要做一个东西,商业软件的实现思路往往是...
  • aofengdaxia
  • aofengdaxia
  • 2014年12月17日 11:28
  • 3528

谈谈自己对做软件开发这一行业的想法

快进入社会了,作为一名将来将长期从事于软件开发行业的iOS工程师(暂且这样说,现在依然还处于学习阶段),也深刻了解到,若想将来在这一行业发展的更好,那么从一开始就得养成良好的编程习惯及思想。当然也翻看...
  • qq_17800221
  • qq_17800221
  • 2016年01月11日 21:56
  • 854

2016年度最受欢迎中国开源软件

2016 年度最受欢迎中国开源软件评选结果已出炉。​每年的年底我们都会准备今年的一些软件榜单,我们把这个榜单定义为 “热门” 榜单,或者说是最受欢迎的榜单。我们根据软件在社区里的用户关注度、活跃度、访...
  • moonpure
  • moonpure
  • 2017年07月14日 17:50
  • 1331
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:谈谈我是怎么利用开源软件的
举报原因:
原因补充:

(最多只允许输入30个字)