没有合适的资源?快使用搜索试试~ 我知道了~
开源对软件工程的作用及关键搜索技术分析
10 下载量 116 浏览量
2020-10-16
23:58:59
上传
评论 1
收藏 310KB PDF 举报
温馨提示


试读
5页
随着网络技术的迅速发展,开源软件正以前所未有的优势得以迅速发展。现在的开源软件已经成为软件发展的主要流行趋势。开源软件的成功对软件产业起到了巨大的作用。同时,由于目前开源软件数量急剧增加,迅速准确地寻找到用户所需的代码成为一个关键问题。现有的代码搜索引擎大都是基于文本的搜索,并未利用语法、语义信息,在搜索准确性方面受到极大限制。因此,有学者提出利用代码的语法和语义等信息辅助代码搜索。从多个方面对开源的作用做一个较全面的介绍,并对开源代码的关键搜索技术做一个简要综述。
资源推荐
资源详情
资源评论
























开源对软件工程的作用及关键搜索技术分析开源对软件工程的作用及关键搜索技术分析
随着网络技术的迅速发展,开源软件正以前所未有的优势得以迅速发展。现在的开源软件已经成为软件发展的
主要流行趋势。开源软件的成功对软件产业起到了巨大的作用。同时,由于目前开源软件数量急剧增加,迅速
准确地寻找到用户所需的代码成为一个关键问题。现有的代码搜索引擎大都是基于文本的搜索,并未利用语
法、语义信息,在搜索准确性方面受到极大限制。因此,有学者提出利用代码的语法和语义等信息辅助代码搜
索。从多个方面对开源的作用做一个较全面的介绍,并对开源代码的关键搜索技术做一个简要综述。
摘摘 要要: 随着网络技术的迅速发展,
关键词 关键词: 开源;
0 引言引言
随着网络时代的来临和开源运动的发展,软件的开发模式、运行环境和提供方式都发生了巨大改变。兴起于20世纪90年
代的开源软件取得了巨大成功,其开发活动具有开放分享、频繁发布等特点,能够有效汇聚软件各利益相关方的创意和贡献,
其自由松散的表象下隐藏着重要的软件工程新理论,对软件产业的发展和格局产生了深远的影响。目前,开源软件有着良好的
发展态势。开源文化是人类几千年的智慧结晶,是一种必然的历史趋势,这种发展趋势是谁也阻挡不了的。
开源软件[1]就是在开发源代码许可证的规范下发布的软件,以保障用户自由使用软件及接触源代码的权利,同时也保障
了用户自行修改、复制以及再分发的权利。开源软件的数量目前正在不断大量增长,大量开源软件的出现,对软件工程的实施
起到巨大作用,本文以开源对软件工程的作用和关键技术为研究点,主要分析开源对当前软件工程的作用和针对开源代码的关
键搜索技术。
1 开源对软件工程的作用开源对软件工程的作用
1.1 基于开源库的浏览学习基于开源库的浏览学习
数量巨大的开源库对于程序员来说是一座巨大的宝藏,源代码融合了作者数十年的方法、经验和教训,对于初学者来说不
可多得的学习资源。
对于初学者来说,开源主要有以下两个方面作用:
(1)有助于从理论到实践的平滑过渡。从理论到实践是一个痛苦的过程,正是因为这种痛苦让很多初学者望而却步。
(2)有助于初学者了解技术潮流。开源项目往往没有遗留系统的负担,比较有利于新技术和新想法的实现。初学者通过
阅读源码可以紧跟这些新技术和新想法。
1.2 开源有助于了解开源有助于了解API使用方法使用方法
在现代软件行业中,越来越多的程序员依靠API库来完成他们日常的开发任务。HOFFLNANN R[2]等人的研究指出,程序
员在软件开发的过程中经常需要调用到其他库里的API。对于一个简单的API来说,通过一个使用例子,可以更加直观地看到
使用方法,这会让用户使用API变得更加快捷方便,省下了阅读API文档的过程,提高了开发效率。
通过示例代码学习具体API的使用方法是开发人员进行软件复用的高效手段。例如,Java程序员要使用排序函数sort,通
常需要打开文档,找到sort函数,然后仔细查看文档。这里使用开源代码的搜索引擎krugle,在开源代码库里输入关键
字“sort”,通过对照着搜索结果中调用API的方法使用该API,就会省下很多时间,提高开发效率。
1.3 开源有利于代码精确复用开源有利于代码精确复用
代码复用可以说是任何一个软件企业都不能漠视的课题,因为复用已有的代码意味着开发人员可以节省许多对代码进行测
试和提升代码质量的时间。在软件开发中,软件的每个部分几乎都包括可复用的代码块。随着开源的流行,开源代码库的数量
的日益庞大,开源代码的数量可以说是不计其数。如此庞大基数的代码几乎包含了各个方面的代码。可以说很多程序员正在写
或者将要写的代码都是代码库里已有的代码,这就浪费了大量的人力、物力。因此,开源就是使得任何所需要的代码几乎可以
复用。
1.4 开源有助于软件的推广开源有助于软件的推广
十年前,开源支持者在试图推广免费软件时陷入了困战,推广实施的障碍包括软件质量、安全保障、后期支持等。然而十
年后,开源模式已经被大众接受,相当一部分公司在使用开源软件,开源甚至更加有助于软件的推广[3]。开源已经走过了从
忽视到嘲笑到打击到被大家接受的过程[4],究其原因,可以从以下三点来说明:
(1)注重安全的人更加倾向于开源软件。开源可以让大家更加清楚软件背后到底在做哪些不为人知的事,会让使用开源
软件的人更加放心。
(2)节约成本的人更加倾向于开源软件。在使用软件时一个不可避免的因素就是用户是否愿意为其付费。随着开源软件
的质量的提高,用户更愿意使用一个安全的、高质量的、便宜的开源软件。
(3)开源社区积攒了大量的人群。在开源代管平台上发布项目会发布得更快,软件发布后很快就会被各种用户使用、转
载,形成了一个无形的软件“供需超市”。开源社区内不同背景、不同专长的人汇集成一股集体的力量,对于开源项目的推广起
资源评论


weixin_38614377
- 粉丝: 2
- 资源: 945
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 小型GPT模型:用300行PyTorch代码实现的小型GPT语言模型库
- ChartGPT工具:个增强视觉语言理解的工具,基于先进的大型语言模型
- 基于Spring、SpringMVC、MyBatis的在线云音乐网站,java项目 eclipse和idea都能打开运行 推
- qt项目:简单字处理软件
- 基于Prism7+Prism Unity RestSharp字体图标 动态主题文件xaml加载,搭建的一个WPF框架
- 双语对话模型:双语对话语言模型,一个基于大型预训练语言模型 GPT 的对话生成模型,用 GPT-2 进行微调,支持中文和英文
- word下相关操作的图标
- 基于51单片机的矿用瓦斯检测报警器-硬件设计本科毕业设计论文
- 2016腾讯移动游戏质量标准
- postgresql一直使用的稳定版
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
