99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

五個(gè)成功利用開(kāi)源軟件的最佳實(shí)踐

工程師進(jìn)階筆記 ? 來(lái)源:最后一個(gè)bug ? 作者:最后一個(gè)bug ? 2022-11-02 15:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

開(kāi)源軟件無(wú)處不在,有潛力幫助企業(yè)加快開(kāi)發(fā)和提高軟件質(zhì)量。但如果不謹(jǐn)慎行事,它們可能是一個(gè)挑戰(zhàn)。

下面是五個(gè)成功利用開(kāi)源軟件的最佳實(shí)踐。

1、使用抽象層解決依賴(lài)關(guān)系

筆者審閱代碼庫(kù)時(shí)發(fā)現(xiàn)的一個(gè)常見(jiàn)問(wèn)題是,開(kāi)發(fā)人員將應(yīng)用程序代碼與使用的軟件庫(kù)緊耦合。

例如,如果一個(gè)開(kāi)發(fā)人員正在使用FreeRTOS,那么應(yīng)用程序代碼調(diào)用特定于FreeRTOS API的方法是,如果開(kāi)發(fā)人員決定更改RTOS,則必須重寫(xiě)大量代碼來(lái)替換所有這些RTOS調(diào)用。

你可能會(huì)認(rèn)為更改庫(kù)是很少見(jiàn)的,但你會(huì)驚訝,經(jīng)常是團(tuán)隊(duì)開(kāi)始使用某個(gè)操作系統(tǒng)、庫(kù)或組件后,而當(dāng)他們決定需要進(jìn)行更改時(shí),卻不得不返回并重寫(xiě)代碼。

當(dāng)團(tuán)隊(duì)選擇一個(gè)開(kāi)源組件,甚至是商業(yè)組件時(shí),他們應(yīng)該做的第一件事就是創(chuàng)建一個(gè)與該組件交互的抽象層。

以RTOS為例,一個(gè)團(tuán)隊(duì)?wèi)?yīng)該使用OS抽象層OSAL(它允許他們使用獨(dú)立于OS的API編寫(xiě)應(yīng)用程序代碼)。

如果操作系統(tǒng)發(fā)生變化,應(yīng)用程序不會(huì)在意,因?yàn)樗谠L(fǎng)問(wèn)一個(gè)抽象層,軟件更改可能只需要幾分鐘而不是幾天。

2、盡可能利用集成軟件

大多數(shù)開(kāi)源軟件都是在自己的沙盒中編寫(xiě)的,而沒(méi)有考慮到它可能需要與之交互的其他組件。組件通常使用不同的編碼標(biāo)準(zhǔn)、樣式、測(cè)試程度等編寫(xiě)。

當(dāng)你開(kāi)始將多個(gè)設(shè)計(jì)為不能相互協(xié)作的開(kāi)源組件組合在一起時(shí),可能會(huì)導(dǎo)致長(zhǎng)時(shí)間的調(diào)試、頭疼和錯(cuò)過(guò)最后期限。所以,盡可能選擇已經(jīng)集成并測(cè)試在一起的組件。

一個(gè)很好的例子是使用Amazon FreeRTOs連接AWS。

FreeRTOS已經(jīng)與連接到云所需的附加連接庫(kù)進(jìn)行了集成和測(cè)試,因此不要選擇其他庫(kù),除非它也經(jīng)過(guò)測(cè)試和集成。

另一個(gè)例子是許多微控制器制造商生產(chǎn)的代碼生成器工具。

這些工具通常已經(jīng)集成了驅(qū)動(dòng)程序軟件組件、RTOS、文件系統(tǒng)、USB和其他一些組件。它們已經(jīng)被證明可以協(xié)同工作,可以節(jié)省時(shí)間和金錢(qián)。

3、執(zhí)行軟件審核和質(zhì)量分析

有很多優(yōu)秀的開(kāi)源軟件,也有很多不太好的軟件。

在開(kāi)發(fā)人員決定在項(xiàng)目中使用開(kāi)源組件之前,他們需要確保他對(duì)軟件進(jìn)行盡職調(diào)查,或者雇傭別人做這件事。這包括花時(shí)間審核組件并執(zhí)行質(zhì)量分析。

在開(kāi)始使用開(kāi)源組件時(shí),至少應(yīng)檢查源代碼的以下方面:使用圈復(fù)雜度度量的復(fù)雜性、從功能上確保其滿(mǎn)足業(yè)務(wù)需求和目標(biāo)、遵守最佳實(shí)踐和編碼標(biāo)準(zhǔn)(根據(jù)需要)、處理錯(cuò)誤的能力、可測(cè)試性。

這至少可以幫助開(kāi)發(fā)人員了解他們正在使用什么,以及潛在的問(wèn)題和陷阱。

4、從活躍社區(qū)中選擇軟件

通過(guò)快速的網(wǎng)絡(luò)搜索或?yàn)g覽github來(lái)找到解決問(wèn)題的軟件組件總是很誘人的。在選擇一個(gè)開(kāi)源組件時(shí),確保其有一個(gè)活躍的社區(qū)是非常重要的。

這包括,在論壇上提問(wèn)會(huì)得到快速的響應(yīng),新版本會(huì)定期發(fā)布,軟件也會(huì)隨著新功能的增加而不斷改進(jìn)。

選擇一個(gè)不活躍的社區(qū)的組件會(huì)導(dǎo)致開(kāi)發(fā)人員被迫自己解決問(wèn)題,或者更糟的是,不得不維護(hù)組件。

5、由律師審查許可證

開(kāi)源軟件許可可能很復(fù)雜。有十幾種不同的許可方案,對(duì)用戶(hù)提出了不同的要求。

在某些情況下,開(kāi)發(fā)人員可以使用他們認(rèn)為合適的開(kāi)源軟件。在其他一些情況下,可以使用該軟件,但任何其他軟件也必須是開(kāi)源的。

雖然這些許可證在最近幾年變得更加容易理解,但是產(chǎn)品開(kāi)發(fā)人員正在經(jīng)營(yíng)一項(xiàng)業(yè)務(wù),因此有必要聘請(qǐng)一名律師來(lái)審查軟件許可。

這是一項(xiàng)額外的開(kāi)支,但這是成本的一部分,從長(zhǎng)遠(yuǎn)來(lái)看可以節(jié)省開(kāi)支。

結(jié)論

適當(dāng)?shù)乩瞄_(kāi)源軟件可以使開(kāi)發(fā)團(tuán)隊(duì)受益匪淺,然而,為了成功,開(kāi)發(fā)人員需要確保明智地選擇開(kāi)源組件。

這包括抽象出組件,以確保其應(yīng)用程序保持靈活性和可維護(hù)性。還需要仔細(xì)檢查開(kāi)源軟件,以確保滿(mǎn)足質(zhì)量和一般要求。

遵循這些最佳實(shí)踐可以幫助團(tuán)隊(duì)避免陷入導(dǎo)致產(chǎn)品延遲、解決方案架構(gòu)不良的解決方案、質(zhì)量問(wèn)題以及產(chǎn)品開(kāi)發(fā)過(guò)程中經(jīng)常出現(xiàn)的許多其他問(wèn)題的泥潭。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)源軟件
    +關(guān)注

    關(guān)注

    0

    文章

    212

    瀏覽量

    16268
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70678
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    38

    文章

    3334

    瀏覽量

    59011

原文標(biāo)題:使用開(kāi)源代碼,需要注意哪些問(wèn)題?

文章出處:【微信號(hào):工程師進(jìn)階筆記,微信公眾號(hào):工程師進(jìn)階筆記】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    企業(yè)開(kāi)源戰(zhàn)略培訓(xùn)交流會(huì)議成功舉辦

    此前,5月28日至29日,由開(kāi)放原子開(kāi)源基金會(huì)主辦的“企業(yè)開(kāi)源戰(zhàn)略培訓(xùn)交流會(huì)議”在北京成功舉行。來(lái)自政府部門(mén)、科研機(jī)構(gòu)、央國(guó)企、互聯(lián)網(wǎng)企業(yè)和初創(chuàng)公司等80余位代表齊聚一堂,圍繞企業(yè)開(kāi)源
    的頭像 發(fā)表于 06-05 14:21 ?461次閱讀

    天馬榮獲新財(cái)富雜志“2024 ESG最佳實(shí)踐獎(jiǎng)”

    天馬可持續(xù)發(fā)展?ESG表現(xiàn)再獲認(rèn)可,上榜2024年新財(cái)富雜志最佳上市公司評(píng)選“ESG最佳實(shí)踐榜單”。
    的頭像 發(fā)表于 05-21 14:43 ?348次閱讀

    《RISC-V能否復(fù)制Linux 的成功?》

    不是經(jīng)過(guò)社區(qū)的努力,構(gòu)建了內(nèi)核、板子、軟件和參考平 臺(tái),OpenHW集團(tuán)的內(nèi)核不會(huì)成功?!監(jiān)shana補(bǔ)充說(shuō),“OpenHW集團(tuán)正通過(guò)最好的實(shí)踐來(lái)使這一硬件技術(shù)獲得成功,關(guān)鍵在于如何
    發(fā)表于 11-26 20:20

    4G模組之UDP應(yīng)用的最佳實(shí)踐

    今天說(shuō)的是4G模組之UDP應(yīng)用,展示最佳實(shí)踐,送你參考。
    的頭像 發(fā)表于 11-08 09:24 ?1104次閱讀
    4G模組之UDP應(yīng)用的<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>!

    活動(dòng)回顧 艾體寶 開(kāi)源軟件供應(yīng)鏈安全的最佳實(shí)踐 線(xiàn)下研討會(huì)圓滿(mǎn)落幕!

    艾體寶與Mend舉辦研討會(huì),聚焦開(kāi)源軟件供應(yīng)鏈安全,邀請(qǐng)行業(yè)專(zhuān)家分享合規(guī)管理、治理之路及最佳實(shí)踐,圓桌討論加深理解,助力企業(yè)更安全穩(wěn)健發(fā)展。
    的頭像 發(fā)表于 10-30 17:52 ?819次閱讀
    活動(dòng)回顧 艾體寶 <b class='flag-5'>開(kāi)源</b><b class='flag-5'>軟件</b>供應(yīng)鏈安全的<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b> 線(xiàn)下研討會(huì)圓滿(mǎn)落幕!

    MES系統(tǒng)的最佳實(shí)踐案例

    效率、降低成本、保證產(chǎn)品質(zhì)量。 MES系統(tǒng)的最佳實(shí)踐案例 引言 在當(dāng)今競(jìng)爭(zhēng)激烈的制造業(yè)環(huán)境中,企業(yè)必須不斷尋求創(chuàng)新和改進(jìn)的方法來(lái)保持競(jìng)爭(zhēng)力。MES系統(tǒng)作為一種關(guān)鍵的信息技術(shù)工具,已經(jīng)被廣泛應(yīng)用于各種制造行業(yè),以實(shí)現(xiàn)生產(chǎn)過(guò)程的優(yōu)化和管理。本文將探討MES系統(tǒng)的
    的頭像 發(fā)表于 10-27 09:33 ?2944次閱讀

    潤(rùn)和軟件亮相德國(guó)“OCX 2024”大會(huì)

    聯(lián)網(wǎng)與邊緣計(jì)算、開(kāi)源安全、開(kāi)放技術(shù)以及開(kāi)源最佳實(shí)踐等內(nèi)容,為開(kāi)源社區(qū)打造了一個(gè)多樣化學(xué)習(xí)、分享和
    的頭像 發(fā)表于 10-25 11:24 ?806次閱讀
    潤(rùn)和<b class='flag-5'>軟件</b>亮相德國(guó)“OCX 2024”大會(huì)

    邊緣計(jì)算架構(gòu)設(shè)計(jì)最佳實(shí)踐

    邊緣計(jì)算架構(gòu)設(shè)計(jì)最佳實(shí)踐涉及多個(gè)方面,以下是一些關(guān)鍵要素和最佳實(shí)踐建議: 一、核心組件與架構(gòu)設(shè)計(jì) 邊緣設(shè)備與網(wǎng)關(guān) 邊緣設(shè)備 :包括各種嵌入式設(shè)備、傳感器、智能手機(jī)、智能攝像頭等,負(fù)責(zé)采
    的頭像 發(fā)表于 10-24 14:17 ?1101次閱讀

    云計(jì)算平臺(tái)的最佳實(shí)踐

    云計(jì)算平臺(tái)的最佳實(shí)踐涉及多個(gè)方面,以確保高效、安全、可擴(kuò)展和成本優(yōu)化的云環(huán)境。以下是一些關(guān)鍵的最佳實(shí)踐: 一、云成本優(yōu)化 詳細(xì)分析云使用情況 :通過(guò)細(xì)致的監(jiān)控和分析,識(shí)別低ROI(投資
    的頭像 發(fā)表于 10-24 09:17 ?708次閱讀

    TMCS110x 布局挑戰(zhàn)和最佳實(shí)踐

    電子發(fā)燒友網(wǎng)站提供《TMCS110x 布局挑戰(zhàn)和最佳實(shí)踐.pdf》資料免費(fèi)下載
    發(fā)表于 09-12 09:23 ?0次下載
    TMCS110x 布局挑戰(zhàn)和<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>

    衰減 AMC3301 系列輻射發(fā)射 EMI 的最佳實(shí)踐

    電子發(fā)燒友網(wǎng)站提供《衰減 AMC3301 系列輻射發(fā)射 EMI 的最佳實(shí)踐.pdf》資料免費(fèi)下載
    發(fā)表于 09-11 09:59 ?0次下載
    衰減 AMC3301 系列輻射發(fā)射 EMI 的<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>

    毫米波雷達(dá)器件的放置和角度最佳實(shí)踐應(yīng)用

    電子發(fā)燒友網(wǎng)站提供《毫米波雷達(dá)器件的放置和角度最佳實(shí)踐應(yīng)用.pdf》資料免費(fèi)下載
    發(fā)表于 09-09 09:57 ?2次下載
    毫米波雷達(dá)器件的放置和角度<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>應(yīng)用

    電機(jī)驅(qū)動(dòng)器電路板布局的最佳實(shí)踐

    電子發(fā)燒友網(wǎng)站提供《電機(jī)驅(qū)動(dòng)器電路板布局的最佳實(shí)踐.pdf》資料免費(fèi)下載
    發(fā)表于 09-05 11:33 ?18次下載
    電機(jī)驅(qū)動(dòng)器電路板布局的<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>

    MSP430 FRAM技術(shù)–使用方法和最佳實(shí)踐

    電子發(fā)燒友網(wǎng)站提供《MSP430 FRAM技術(shù)–使用方法和最佳實(shí)踐.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 09:23 ?0次下載
    MSP430 FRAM技術(shù)–使用方法和<b class='flag-5'>最佳</b><b class='flag-5'>實(shí)踐</b>

    RTOS開(kāi)發(fā)最佳實(shí)踐

    基于RTOS編寫(xiě)應(yīng)用程序時(shí),有一些要注意事項(xiàng)。在本節(jié)中,您將學(xué)習(xí)RTOS開(kāi)發(fā)最佳實(shí)踐,例如POSIX合規(guī)性、安全性和功能安全認(rèn)證。
    的頭像 發(fā)表于 08-20 11:24 ?846次閱讀