最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

市面上開源項目這么多,別無腦上,需謹慎行事

2022-04-28 16:05 作者:大方老師單片機課堂  | 我要投稿

市面上開源項目這么多,別無腦上,需謹慎行事

本次分享使用開源軟件的幾點注意事項。

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

下面是五個成功利用開源軟件的最佳實踐。


///插播一條:我自己在今年年初錄制了一套還比較系統(tǒng)的入門單片機教程,想要的同學(xué)找我拿就行了免費的,私信我就可以~點我頭像黑色字體加我地球呺也能領(lǐng)取哦。最近比較閑,帶做畢設(shè),帶學(xué)生參加省級或以上比///

正文開始:

一、使用抽象層刪除依賴關(guān)系

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

例如,假如一個開發(fā)人員正在使FreeRTOS,那么應(yīng)用程序代碼調(diào)用特定FreeRTOS API的方法是,假如開發(fā)人員決定更RTOS,則必需重寫大量代碼來替換所有這RTOS調(diào)用。

你可能會認為更改庫是很少見的,但你會驚訝,經(jīng)常是團隊初始使用某個操作系統(tǒng)、庫或組件后,而當他們決定須要進行更改時,卻不得不返回并重寫代碼。

當團隊選擇一個開源組件,甚至是商業(yè)組件時,他們應(yīng)該做的第一件事就是創(chuàng)建一個與該組件交互的抽象層。RTOS為例,一個團隊應(yīng)該使OS抽象OSAL(它允許他們使用獨立OSAPI編寫應(yīng)用程序代碼)。

假如操作系統(tǒng)發(fā)生變化,應(yīng)用程序不會在意,由于它正在訪問一個抽象層,軟件更改可能只須要幾分鐘而不是幾天。

二、盡可能利用集成軟件

大多數(shù)開源軟件都是在自己的沙盒中編寫的,而沒有考慮到它可能須要與之交互的其他組件。組件通常使用不同的編碼規(guī)范、款式、測試程度等鄙汆寫。

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

一個很好的例子是使Amazon FreeRTOsAWS。FreeRTOS已經(jīng)與連接到云所需的附加連接庫進行了集成和測試,因此不要選擇其他庫,除非它也經(jīng)過測試和集成。另一個例子是許多微控制器制造商出產(chǎn)的代碼生成器工具。


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

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

有很多優(yōu)秀的開源軟件,也有很多不太好的軟件。在開發(fā)人員決定在項目中使用開源組件之前,他們須要確保他對軟件進行盡職調(diào)查,或者雇傭別人做這件事。這包括花時長審核組件并執(zhí)行質(zhì)量分析。

在初始使用開源組件時,至少應(yīng)檢查源代碼的以下方面:使用圈復(fù)雜度度量的復(fù)雜性、從功能上確保其滿足業(yè)務(wù)需求和宗旨、遵守最佳實踐和編碼規(guī)范(依據(jù)須要)、處理錯誤的才能、可測試性。

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

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

通過快捷的網(wǎng)絡(luò)搜索或瀏github來找到攻克問題的軟件組件總是很誘人的。在選擇一個開源組件時,確保其有一個活躍的社區(qū)是非常重要的。

這包括,在論壇上提問會得到快捷的響應(yīng),新版本會定期發(fā)布,軟件也會隨著新功能的增加而不斷改進。選擇一個不活躍的社區(qū)的組件會導(dǎo)致開發(fā)人員被迫自己攻克問題,或者更糟的是,不得不維護組件。

五、由律審查許可證

開源軟件許可可能很復(fù)雜。有十幾種不同的許可方案,對用戶提出了不同的要求。在某些情況下,開發(fā)人員能夠使用他們認為適宜的開源軟件。在其他一些情況下,能夠使用該軟件,但任何其他軟件也必需是開源的。

雖然這些許可證在最近幾年變得愈加容易了解,但是產(chǎn)品開發(fā)人員正在經(jīng)營一項業(yè)務(wù),因此有必要聘請一名律師來審查軟件許可。這是一項額外的開支,但這是老本的一局部,從長遠來看能夠節(jié)省開支。


結(jié)論

適當?shù)乩瞄_源軟件能夠使開發(fā)團隊受益匪淺。然而,為了成功,開發(fā)人員須要確保明智地選擇開源組件。這包括抽象出組件,以確保其應(yīng)用程序保持靈敏性和可維護性。還須要仔細檢查開源軟件,以確保滿足質(zhì)量和一般要求。

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

市面上開源項目這么多,別無腦上,需謹慎行事的評論 (共 條)

分享到微博請遵守國家法律
邹城市| 盐山县| 中西区| 抚州市| 昂仁县| 永定县| 宜黄县| 富阳市| 什邡市| 京山县| 托克逊县| 固安县| 恩施市| 夏河县| 贵溪市| 武清区| 德惠市| 新巴尔虎左旗| 平定县| 秦安县| 沿河| 河间市| 伊川县| 东港市| 尚志市| 杨浦区| 包头市| 东港市| 确山县| 通榆县| 扎赉特旗| 昌宁县| 鸡东县| 西峡县| 留坝县| 喀喇| 钟山县| 千阳县| 兴隆县| 绥棱县| 姚安县|