贴吧图片
0 1
谁能提供一个无人机按划定路径自主飞行的实现代码,或者原理,求高手指点。
更新时间:03/29/2017
贴吧图片
0


开发方法与基础设施

      开源软件的开发方法是一种以开放、对等、共享和全球协作为核心的新型群体协作方法。同传统软件开发方法相比,该方法在降低开发成本、提升软件质量、减少培训和维护费用等方面具有先天优势。基于该方法,分布在世界各个角落的软件开发者和用户在开源组织中少数核心人员的协调下,利用业余时间成功开发出诸如操作系统Linux、服务器软件Apache、开发环境Eclipse和浏览器Mozilla Firefox等众多商业级软件作品。Eric Raymond在其《The Cathedral and the Bazaar》一书中将开源软件的开发方法比作“集市”模式,深刻而生动的揭示了开源活动中自由松散表象下隐藏的惊人软件工程新理论,并通过自身实践验证了开源方法的基本原则。


      目前支持开源软件开发和发展的基础设施主要包括三类。(1)社区网站:开源组织为了实现旗下开源软件的快速开发、共享和发展,常常建立专门的社区网站为开发者和用户提供开发基础设施,包括项目主页、版本管理、沟通工具、缺陷跟踪系统、邮件列表、项目论坛、Wiki等。目前代表性的社区网站包括Linux Kernel、Eclipse和Mozilla等。(2)托管网站:托管网站为开源组织和自由开发者提供统一的基础设施。托管网站为大量开源项目提供上述基础设施服务。与社区网站不同,托管网站一般并不拥有开源项目。目前代表性的托管站点包括SourceForge、Google Code和GitHub等。(3)目录网站:目录网站对众多的开源软件的信息要素进行收集和分类,并将社会化标签、用户评价等社交网站的机制引入开源目录网站,极大提高了海量开源软件资源的检索、分析和选择效率。目前代表性的目录网站包括ohloh和Freecode等。


应用范围与商业模式
      目前开源软件在商业、政府、教育甚至国防等领域获得广泛应用并取得巨大成功,出现了众多基于开源软件的应用系统,其应用范围正在不断扩大。很多国家和政府甚至通过立法强制采用开源软件以实现节约开支、增强软件系统的安全性和可靠性、减少对软件厂商的依赖、发展自主软件研发能力、加强知识产权保护、改造软件产业等众多目标。

随着开源软件事业的不断发展,越来越多的公司和组织采用了新的基于开源软件的商业模式来获得商业目标。目前比较流行的开源软件的商业模式包括:增值产品、技术支持、咨询服务、广告收益、软硬件结合、双重授权、社区模式等。例如,Red Hat是基于Linux的增值产品厂商和咨询服务商,IBM为众多开源软件提供技术支持和方案咨询,Mozilla的Firefox成功利用其客户端的广告优势实现盈利,Google利用开源项目Android实现软硬件结合的盈利模式,MySQL则为用户提供GPL和商业许可证的双重授权模式(无论用户选择哪一种许可证,MySQL都会直接或间接的获益)。最后,社区模式是最能反映开源软件理想的商业模式,如Linux、Eclipse和Apache等开源组织就成功的利用社区模式发展旗下开源项目,从而为用户提供更好的软件产品和技术支持,并通过毋庸置疑的高品质软件作品获得社会的信任和资助,领导业界的发展趋势。

更新时间:11/07/2015
贴吧图片
0


开源软件概念的形成和发展大致经历了自由软件运动兴起、开源运动兴起和开源软件发展三个阶段。第一阶段是自由软件运动兴起阶段,主要时间跨度为20世纪60年代至90年代中期。自由软件运动的目标是尽可能确保软件用户对软件的使用、修改和传播的自由,反对以保护知识产权和商业利益为目标的专有软件对这些自由的限制。自由软件运动起源于20世纪60-70年代美国计算机科学实验室中的黑客文化,以1985年Richard Stallman发起的自由软件基金会(FSF)为标志。其中,1984年Richard Stallman启动GNU项目,拉开了自由软件运动的序幕,1989年FSF发布通用公共许可证第一版GPLv1,为自由软件运动制定了行为规则。1991年Linux的发布以及GNU/Linux的广泛应用使自由软件运动在软件领域产生了实质性影响。


第二阶段是开源运动兴起阶段,主要发生在20世纪90年代中后期,以1998年开源(Open Source)术语的提出和OSI对开源软件的明确定义为标志。由于自由软件对知识产权的排斥及其许可证(如GPLv1)关于自由的传染性使大多数商业公司持观望态度,人们开始探索能够平衡开放理念和商业利益的新模式。1998年Netscape公司发起的一次战略研讨会上,Christine Peterson首次使用开源一词来回避自由软件在商业领域的负面效应。随后Eric Raymond提出使用开源软件来统称所有符合OSI定义的软件,开源运动进入一个崭新的阶段,众多商业公司加入进来,各种开源软件许可证不断涌现,为开源软件的商业化发展开辟了道路。


第三阶段是开源软件发展阶段,主要从20世纪90年代末开始至今,越来越多的个人和商业公司通过开源软件建立了自身的开发方法和商业模式,开源软件在技术创新和商业运营等方面扮演着越来越重要的角色。从1999年至今,开源软件取得了商业上的令人瞩目的成就,如1999年Red Hat等开源软件公司成功上市、IBM启动对Linux的支持服务,2001年IBM直接将Eclipse项目贡献给开源社区,2005年Google收购开源软件公司Android并迅速实现了移动业务的迅猛拓展。此外,以1999年SourceForge上线为标志,基于互联网的各种开源软件开发和社交平台开始快速发展,吸引了全球数百万的开发者和用户,支撑了数十万的开源项目的开发,为开源软件的全球化协同开发和运营提供了支撑环境。

更新时间:11/07/2015
贴吧图片
1 1

开源是什么

最后回复:尹刚
11/07/2015
更新时间:11/07/2015
贴吧图片
0


开源许可证
      开源许可证是一种特殊的软件许可证,采用契约和授权方式指导和规范许可人和被许可人在处理开源软件作品时的权利、义务和责任,也是解决开源软件面临的法律和商业问题的核心机制。目前通过OSI认证的开源许可证已达数十种,其中应用最为普遍的典型许可证主要有GPL、BSD、LGPL和Apache许可证等。这些许可证满足OSI开源软件定义中关于许可证的共性要求,但在处理开放性、商业用途、知识产权、兼容性等问题方面存在差别。例如,GPL要求根据GPL发布的软件衍生出来的作品也必须遵循GPL;Apache许可证的专利许可证的授予条款能够有效避免Apache及其用户卷入知识产权诉讼;BSD则允许被许可人根据自己的需要(包括以商业软件的方式)再发布和再许可等,只要求被许可人附上BSD原文以及所有开发者的版权资料。

开源组织
      众多的开源组织是支持开源软件事业发展的主要推动者,包括开源基金会和开源社区等。其中,自由软件基金会(FSF)和开源软件促进会(OSI)属于推动自由/开源软件整体性发展的非盈利性组织,从自由和开源两个出发点在发展方向、规则制定、商业战略等方面发挥了启蒙和重大推动作用;Linux Kernel社区、Apache软件基金会(ASF)、Eclipse社区、Mozilla社区等开源组织则立足于具体的开源软件项目,为一系列开源项目提供规则制定、法律支持和财政帮助,极大推动了Linux和Apache等开源软件生态环境的形成和商业模式的繁荣。

更新时间:11/07/2015
贴吧图片
0


开源软件(open source software)简介


一种源代码可以自由获取和传播的计算机软件,其许可人在开源许可证的规定之下允许被许可人对软件进行使用、修改和传播。开源软件也称为自由/开源软件(Free/Open Source Software)。相比专有软件,开源软件发展出全新的软件分享规则、开发方法和商业模式,并在软件技术和商业领域取得巨大成就,因此业界常常将开源软件的发展过程称为开源运动和开源革命。


目前,业界公认的开源软件的定义由开源软件促进协会(OSI)给出(现为1.9版)。该定义认为符合以下10项条款的软件可称为开源软件:


(1)自由再发行;


(2)必须包含或方便取得源代码;


(3)许可证必须允许更改或派生程序;


(4)保护作者源代码的完整性;


(5)无个人或团体的歧视;


(6)无领域歧视;


(7)依据许可证发行;


(8)许可证不能特指某个产品;


(9)许可证不能约束其他软件;


(10)许可证必须独立于技术。

更新时间:11/07/2015
贴吧图像
吧主:
尹刚
回答:1 帖子:6
欢迎对开源软件、互联网软件技术、互联网创新和工作方式感兴趣的同学交流和讨论!
问题和建议
还能输入50个字符 Submit

加入QQ群

关注微信APP


×