偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

使用開源軟件的五個優(yōu)秀實踐

開源
開源軟件無處不在,可以幫助企業(yè)加速開發(fā)和提高軟件質(zhì)量,但是實現(xiàn)過程可能具有挑戰(zhàn)性。以下是嵌入式開發(fā)人員成功利用開源軟件的五個最佳實踐。

優(yōu)秀實踐 #1 – 使用抽象層移除依賴項

審查代碼庫的常見問題之一是開發(fā)人員將他們的應用程序代碼與他們使用的軟件庫緊密結(jié)合在一起。例如,如果開發(fā)人員正在使用 FreeRTOS,他們的應用程序代碼會調(diào)用特定于 FreeRTOS API 的方式,如果開發(fā)人員決定更改他們的 RTOS,他們將不得不重寫大量代碼來替換所有這些 RTOS來電。你可能會認為更改庫很少見,但你會驚訝于團隊經(jīng)常使用一個操作系統(tǒng)、庫或組件開始一條路徑,只是在他們決定需要進行更改時才不得不返回并重寫代碼。

團隊在選擇開源組件甚至商業(yè)組件時應該做的第一件事是創(chuàng)建一個抽象層來與該組件進行交互。以 RTOS 為例,團隊將使用 OS 抽象層 OSAL,這將允許他們使用獨立于 OS 的 API 編寫應用程序代碼。如果操作系統(tǒng)發(fā)生變化,應用程序并不關(guān)心,因為它正在訪問一個抽象層,而軟件更改可能需要幾分鐘而不是幾天。

優(yōu)秀實踐 #2 – 盡可能利用集成軟件

大多數(shù)開源軟件都是在自己的沙箱中編寫的,沒有過多考慮可能需要與之交互的其他組件。組件通常使用不同的編碼標準、風格、測試程度等來編寫。如果嵌入式開發(fā)人員開始將多個并非旨在相互協(xié)作的開源組件組合在一起時,可能會導致長時間的調(diào)試會話和錯過最后期限,盡可能選擇已經(jīng)集成和測試的組件。

一個很好的例子是使用 Amazon FreeRTOS 連接到 AWS。FreeRTOS 已經(jīng)與連接到云所需的其他連接庫進行了集成和測試,因此不要選擇其他庫,除非它也已經(jīng)過測試和集成。另一個例子是許多微控制器制造商生產(chǎn)的代碼生成器工具。這些工具通常已經(jīng)集成了驅(qū)動軟件組件、RTOS、文件系統(tǒng)、USB 和其他幾個組件。它們已經(jīng)被證明可以一起工作,因此如果可以利用它們,它將節(jié)省時間和金錢。

優(yōu)秀實踐#3——執(zhí)行軟件審計和質(zhì)量分析

有很多很棒的開源軟件和很多不太好的軟件,在開發(fā)人員決定在他們的項目中使用開源組件之前,他們需要確保他們花時間對軟件進行盡職調(diào)查,這涉及花時間審核組件并執(zhí)行質(zhì)量分析,質(zhì)量往往在旁觀者的眼中。

至少,在開始使用開源組件時,應審查源代碼:

  • 使用圈復雜度測量的復雜度
  • 在功能上確保它滿足業(yè)務需求和目標
  • 遵守最佳實踐和編碼標準(根據(jù)需要)
  • 處理錯誤的能力
  • 可測試性

至少,這將幫助嵌入式開發(fā)人員了解他們正在使用什么,以及潛在的問題和陷阱。

優(yōu)秀實踐#4 – 讓律師審查許可證

開源軟件許可可能難以駕馭,有十幾種不同的許可方案,它們對用戶提出了不同的要求。在某些情況下,開發(fā)人員可以按照他們認為合適的方式使用開源軟件。在其他情況下,可以使用該軟件,但任何其他軟件也必須是開源的,這意味著它可能需要發(fā)布產(chǎn)品的秘方,這可能會損害他們的競爭市場優(yōu)勢。

盡管近年來這些許可證變得更加易于理解,但產(chǎn)品開發(fā)人員正在開展業(yè)務,因此必須聘請律師來審查軟件許可證,以確保一切正常。會有額外的費用,但它是經(jīng)商成本的一部分,如果發(fā)生錯誤,從長遠來看可以節(jié)省資金。

優(yōu)秀實踐 #5 – 從活躍的社區(qū)中選擇軟件

快速進行網(wǎng)絡搜索或仔細閱讀 github 以找到解決問題的軟件組件總是很誘人。嵌入式開發(fā)人員在選擇開源組件時,確保該組件具有活躍的社區(qū)非常重要。

例如,使用 FreeRTOS 的開發(fā)人員知道他們可以上論壇、提出問題,并且通常會得到快速響應。新版本會定期發(fā)布,并且軟件始終會隨著新功能的添加而不斷改進。選擇具有不活躍社區(qū)的組件可能會導致開發(fā)人員獨自一人,被迫自己找出問題,或者更糟糕的是,不得不維護該組件。

結(jié)論

正確利用開源軟件可以極大地使開發(fā)團隊受益。然而,為了取得成功,開發(fā)人員需要確保他們明智地選擇他們的開源組件,這包括抽象出組件以確保其應用程序保持靈活和可維護。它還需要仔細審查開源軟件,假設它不是 Linux,以確保在提交組件之前滿足質(zhì)量和一般要求。

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


責任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2024-06-12 13:57:00

2023-04-20 11:59:03

開源PatternFly

2021-06-25 14:50:21

DevSecOps安全 DevOps

2022-10-10 14:53:00

云安全云計算云平臺

2023-08-10 17:40:33

人工智能

2024-07-05 13:59:26

2023-04-14 08:10:59

asyncawait

2023-07-03 12:09:38

云日志云服務

2023-10-10 10:57:12

JavaScript代碼優(yōu)化

2023-10-26 12:10:54

2023-05-16 15:27:31

2024-01-04 16:21:37

數(shù)字孿生供應鏈IT價值

2021-05-31 09:48:24

網(wǎng)絡釣魚滲透測試網(wǎng)絡安全

2022-05-13 14:28:03

云原生權(quán)限云原生

2022-01-07 08:00:00

Node.js開發(fā)Web

2024-06-14 15:18:39

2021-12-04 23:10:02

Java代碼開發(fā)

2022-03-15 13:09:21

零信任零信任網(wǎng)絡訪問

2020-09-10 10:16:09

開源代碼安全性漏洞惡意組件

2013-04-22 14:27:39

開源系統(tǒng)恢復軟件
點贊
收藏

51CTO技術(shù)棧公眾號