0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用开源软件成功的五个实践

lilihe92 来源:最后一个bug 作者:最后一个bug 2022-12-01 11:59 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

开源软件无处不在,有潜力帮助企业加快开发和提高软件质量。但如果不谨慎行事,它们可能是一个挑战。

下面是五个成功利用开源软件的最佳实践。

1、使用抽象层解决依赖关系

笔者审阅代码库时发现的一个常见问题是,开发人员将应用程序代码与使用的软件库紧耦合。例如,如果一个开发人员正在使用FreeRTOS,那么应用程序代码调用特定于FreeRTOS API的方法是,如果开发人员决定更改RTOS,则必须重写大量代码来替换所有这些RTOS调用。

你可能会认为更改库是很少见的,但你会惊讶,经常是团队开始使用某个操作系统、库或组件后,而当他们决定需要进行更改时,却不得不返回并重写代码。

当团队选择一个开源组件,甚至是商业组件时,他们应该做的第一件事就是创建一个与该组件交互的抽象层。以RTOS为例,一个团队应该使用OS抽象层OSAL(它允许他们使用独立于OS的API编写应用程序代码)。

如果操作系统发生变化,应用程序不会在意,因为它正在访问一个抽象层,软件更改可能只需要几分钟而不是几天。

2、尽可能利用集成软件

大多数开源软件都是在自己的沙盒中编写的,而没有考虑到它可能需要与之交互的其他组件。组件通常使用不同的编码标准、样式、测试程度等编写。

当你开始将多个设计为不能相互协作的开源组件组合在一起时,可能会导致长时间的调试、头疼和错过最后期限。所以,尽可能选择已经集成并测试在一起的组件。

一个很好的例子是使用Amazon FreeRTOs连接AWS。FreeRTOS已经与连接到云所需的附加连接库进行了集成和测试,因此不要选择其他库,除非它也经过测试和集成。另一个例子是许多微控制器制造商生产的代码生成器工具。

这些工具通常已经集成了驱动程序软件组件、RTOS、文件系统、USB和其他一些组件。它们已经被证明可以协同工作,可以节省时间和金钱。

3、执行软件审核和质量分析

有很多优秀的开源软件,也有很多不太好的软件。在开发人员决定在项目中使用开源组件之前,他们需要确保他对软件进行尽职调查,或者雇佣别人做这件事。这包括花时间审核组件并执行质量分析。

在开始使用开源组件时,至少应检查源代码的以下方面:使用圈复杂度度量的复杂性、从功能上确保其满足业务需求和目标、遵守最佳实践和编码标准(根据需要)、处理错误的能力、可测试性。

这至少可以帮助开发人员了解他们正在使用什么,以及潜在的问题和陷阱。

4、从活跃社区中选择软件

通过快速的网络搜索或浏览github来找到解决问题的软件组件总是很诱人的。在选择一个开源组件时,确保其有一个活跃的社区是非常重要的。

这包括,在论坛上提问会得到快速的响应,新版本会定期发布,软件也会随着新功能的增加而不断改进。选择一个不活跃的社区的组件会导致开发人员被迫自己解决问题,或者更糟的是,不得不维护组件。

5、由律师审查许可证

开源软件许可可能很复杂。有十几种不同的许可方案,对用户提出了不同的要求。在某些情况下,开发人员可以使用他们认为合适的开源软件。在其他一些情况下,可以使用该软件,但任何其他软件也必须是开源的。

虽然这些许可证在最近几年变得更加容易理解,但是产品开发人员正在经营一项业务,因此有必要聘请一名律师来审查软件许可。这是一项额外的开支,但这是成本的一部分,从长远来看可以节省开支。

结论

适当地利用开源软件可以使开发团队受益匪浅。然而,为了成功,开发人员需要确保明智地选择开源组件。这包括抽象出组件,以确保其应用程序保持灵活性和可维护性。还需要仔细检查开源软件,以确保满足质量和一般要求。

遵循这些最佳实践可以帮助团队避免陷入导致产品延迟、解决方案架构不良的解决方案、质量问题以及产品开发过程中经常出现的许多其他问题的泥潭。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源软件
    +关注

    关注

    0

    文章

    213

    浏览量

    16525
  • RTOS
    +关注

    关注

    25

    文章

    862

    浏览量

    122610
  • FreeRTOS
    +关注

    关注

    14

    文章

    497

    浏览量

    66354

原文标题:嵌入式项目中使用开源项目,需要注意哪些问题?

文章出处:【微信号:最后一个bug,微信公众号:最后一个bug】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开源鸿蒙行业论坛成功举办

    11月28日,开源鸿蒙行业论坛在深圳隆重举行。此次论坛聚焦开源鸿蒙在交通、医疗、家居、建筑、工业等多个领域的落地实践,众多行业领军企业代表齐聚一堂,共绘开源鸿蒙行业创新发展新蓝图。
    的头像 发表于 12-04 16:58 580次阅读

    诚迈科技持续深耕开源鸿蒙生态,斩获“先锋单位”及“示范案例”荣誉

    11月28日,开源鸿蒙行业论坛在深圳成功举办。作为开源鸿蒙生态的核心共建者,诚迈科技在论坛上获评“开源鸿蒙跨平台框架共建先锋单位”,其工业物联领域的
    的头像 发表于 11-28 19:42 610次阅读
    诚迈科技持续深耕<b class='flag-5'>开源</b>鸿蒙生态,斩获“先锋单位”及“示范案例”荣誉

    2025开放原子开发者大会开源安全与AI供应链治理分论坛成功举办

    ”分论坛在北京成功举办。多位行业专家聚焦开源供应链标准化、AI安全新挑战、社区化漏洞运营、开源鸿蒙生态实践、企业合规落地大核心议题,从战略
    的头像 发表于 11-27 14:47 370次阅读

    人工智能AI必备的5款开源软件推荐!

    在技术浪潮汹涌的当下,越来越多的企业与开发者开始意识到:“开源”已经不只是一口号,而是创新的源泉。 从算法研究到智能应用落地,无数项目的起点,都是一个个免费的开源工具。今天,我们就来
    的头像 发表于 11-19 15:35 143次阅读
    人工智能AI必备的5款<b class='flag-5'>开源</b><b class='flag-5'>软件</b>推荐!

    见证中国开源生态成长力量:开源鸿蒙年跨越与未来展望

    数字化浪潮滚滚向前,操作系统作为数字世界的基石,其重要性不言而喻。 2020年,随着开源鸿蒙项目的正式开源,中国基础软件领域迎来了一场深刻的变革。从“0到1”的系统启动,到“1到N”的生态繁荣,
    的头像 发表于 11-19 11:03 209次阅读

    开源鸿蒙技术大会2025丨以智能化为主旋律,擘画开源鸿蒙下一年发展技术蓝图

    9月27日,在长沙国际会议中心举办的开源鸿蒙技术大会2025上,开源鸿蒙项目群技术指导委员会主席、华为Fellow、基础软件首席科学家陈海波发表了题为《开源鸿蒙:智启新
    的头像 发表于 11-10 18:13 1155次阅读
    <b class='flag-5'>开源</b>鸿蒙技术大会2025丨以智能化为主旋律,擘画<b class='flag-5'>开源</b>鸿蒙下一<b class='flag-5'>个</b><b class='flag-5'>五</b>年发展技术蓝图

    地方开源生态建设分论坛成功举办

    近日,2025开放原子开源生态大会——地方开源生态建设分论坛在北京成功举办。论坛汇聚了来自政府部门、开源项目社区、企业及科研机构代表,共同探讨地方
    的头像 发表于 08-05 10:57 1119次阅读

    开源鸿蒙持续取得显著成果

    和落地实践。会上,开源鸿蒙项目群工作委员会委员、华为终端BG软件部副总裁章晓峰发表了题为《乘风破浪,共创开源鸿蒙未来》的主题演讲,全面阐述了开源
    的头像 发表于 07-28 17:39 702次阅读

    软件物料清单分论坛成功举办

    近日,由开放原子开源基金会主办,国家工业信息安全发展研究中心(简称“中心”)、开源风险评估与治理技术实验室联合承办的“2025开放原子开源生态大会——软件物料清单(SBOM)分论坛”
    的头像 发表于 07-28 17:31 663次阅读

    开放原子开源基金会发布150余开源项目应用案例

    近日,在2025开放原子开源生态大会开幕式上,开放原子开源基金会发布了150余开源项目应用案例,涵盖中国南方电网、中国移动、京东集团、安贞医院、南京邮电大学、蚂蚁密算等100余家单位
    的头像 发表于 07-28 17:10 981次阅读

    普华基础软件荣膺优秀开源项目奖

    近日,2025上海开源创新菁英奖评选结果正式揭晓。普华基础软件开源安全车控操作系统小满EasyXMen凭借在开源技术创新与产业应用实践方面的
    的头像 发表于 07-28 16:48 727次阅读

    开源鸿蒙操作系统的生态成果与落地实践

    电网、中国科学院软件研究所、证通电子等合作单位共同支持。本次大会聚焦开源鸿蒙 5.1 Release版本,面向开发者和伙伴深度展示开源鸿蒙操作系统的生态成果与落地实践
    的头像 发表于 06-05 14:27 954次阅读

    企业开源战略培训交流会议成功举办

    此前,5月28日至29日,由开放原子开源基金会主办的“企业开源战略培训交流会议”在北京成功举行。来自政府部门、科研机构、央国企、互联网企业和初创公司等80余位代表齐聚一堂,围绕企业开源
    的头像 发表于 06-05 14:21 846次阅读

    中国成功发射实践二十六号卫星

    在5月29日12时12分,我国航天再创辉煌; 长征系列运载火箭的第579次飞行任务取得圆满成功。 29日;长征四号乙运载火箭成功实践二十六号卫星发射升空,进入预定轨道,发射任务圆满成功
    的头像 发表于 05-29 16:32 3138次阅读

    开源基础设施能力建设分论坛成功举办

    在当今科技飞速发展的时代,开源已成为推动全球创新与进步的核心动力。无论是开发实践还是数字化转型,开源以其特有的开放性、共享性和协同性,助力各行业技术革新。在构建开源生态的过程中,
    的头像 发表于 12-27 13:56 769次阅读