国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【筆記】自己用的16種代碼規范

撞上電子 ? 2023-06-08 10:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 命名規范:

-變量和函數名應使用有意義的名詞或動詞短語,描述其用途或功能。

inttemperature;//溫度變量voidcalculateAverage();//計算平均值的函數

-使用駝峰命名法或下劃線命名法來命名變量、函數和常量。

int sensorValue; // 駝峰命名法constintMAX_VALUE=100;//下劃線命名法

-使用大寫字母命名宏定義和枚舉常量,并使用下劃線分隔單詞。

#defineBUFFER_SIZE256enumColor{RED,GREEN,BLUE};


2. 縮進和格式化:

-使用一致的縮進風格,通常是四個空格或一個制表符。-使用大括號和適當的縮進來組織代碼塊。

if(condition){ // 代碼塊}else{ // 代碼塊}

-適當地使用空格來提高可讀性,例如在運算符、逗號和分號之間加入空格。

int sum = a + b;int i, j;for (i = 0; i < n; i++){??//?代碼塊}

-使用空行來分隔邏輯上相關的代碼塊,提高代碼的可讀性。

//代碼塊1
// 代碼塊2//代碼塊3


3. 注釋:

-在代碼上方或關鍵部分添加注釋,解釋代碼的目的、功能和實現方法。-使用清晰明確的注釋,避免使用模糊或不必要的注釋。

// 計算兩個數的和int sum(int a, int b){ return a + b;}

4. 函數和模塊化:

-將代碼劃分為小而獨立的函數,每個函數負責完成一個特定的任務。-函數應具有單一責任,只做一件事情,并遵循函數的輸入輸出原則。

//讀取傳感器值int readSensor(){ // 讀取傳感器代碼 //... return sensorValue;}


5. 錯誤處理:

-對可能出現錯誤的代碼塊進行錯誤檢查,并采取適當的錯誤處理措施。-使用返回值、錯誤碼或異常處理來指示和處理錯誤情況。

int result = performOperation();if (result != SUCCESS){ // 錯誤處理代碼 // ...}

6. 常量和魔法數值:

-避免在代碼中直接使用魔法數值(未經解釋的硬編碼值),應將其定義為常量并使用常量名。

-常量的命名應具有描述性和可讀性,以便理解其含義。

const int MAX_SIZE = 100;constfloatPI=3.14159;

7. 函數參數:

-如果函數參數較多,應考慮使用結構體或對象來傳遞參數,以減少函數參數列表的長度。-函數參數的順序應該有邏輯性和一致性,便于閱讀和使用。

voidprocessData(intid,floatvalue,constchar*name)


8. 錯誤處理和異常:

-在可能引發錯誤的代碼塊中使用適當的錯誤處理機制,例如返回錯誤碼、拋出異常或執行回滾操作。-錯誤處理應該清晰明確,向調用者提供足夠的信息以便調試和修復錯誤。

int result = performOperation();if (result != SUCCESS){ logError("操作執行失敗: %d", result); return result;}


9. 可讀性和注釋:

-代碼應具有良好的可讀性,使用有意義的變量名和函數名,并避免使用過于復雜的表達式和嵌套結構。-注釋應該清晰、簡潔明了,并提供足夠的上下文信息,幫助他人理解代碼的意圖和邏輯。

// 計算數組的平均值float calculateAverage(float* data, int size){ float sum = 0; for (int i = 0; i < size; i++) { sum += data[i]; } return sum / size;}


10. 單元測試和代碼審查:

-編寫適當的單元測試用例來驗證代碼的功能和正確性,確保代碼的健壯性。-進行代碼審查,讓其他開發人員檢查代碼的質量和遵循規范的程度,以提供反饋和改進建議。
11. 模塊化和函數長度:

-將代碼分解為邏輯上獨立的模塊或函數,每個函數應該只負責一個具體的任務或功能。

-函數應保持簡潔和緊湊,避免過長的函數體和過多的嵌套層級。長函數可以考慮進行重構和拆分。

12. 錯誤處理和異常:

-在可能引發錯誤的地方進行適當的錯誤處理和異常處理。捕獲并處理錯誤,以避免程序崩潰或無法預料的行為。-在發生錯誤時,提供有意義的錯誤消息和日志,以便于調試和故障排除。

13. 持續集成和自動化測試:

-使用持續集成工具和自動化測試框架來驗證代碼的正確性和穩定性。-設置自動化測試套件,包括單元測試、集成測試和端到端測試,以捕獲潛在的問題和保證代碼質量。

14. 版本控制和代碼管理:

-使用版本控制系統(如Git)來管理代碼的版本和變更歷史。-遵循合適的分支策略,確保不同功能和修復的代碼可以獨立開發和集成。-使用合適的注釋和提交信息,清楚記錄每個版本的變更內容和目的。

15. 性能優化和資源管理:

-針對性能敏感的代碼段進行優化,包括算法改進、數據結構優化等。

-考慮資源的有效管理,包括內存分配和釋放、文件句柄的管理等。

16. 編碼標準和風格指南:

-遵循特定的編碼標準和風格指南,如Google C++ Style Guide、GNU Coding Standards等。

-在團隊中達成一致,并確保所有開發人員都遵循相同的規范。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4968

    瀏覽量

    73973
  • 變量
    +關注

    關注

    0

    文章

    616

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何規范、但不濫用局部變量(Local Variable)

    前面已產生的值(讀局部變量相對安全)。 UI刷新:把計算結果分發到多個顯示控件(尤其在事件結構里,集中計算后分發顯示)。 臨時過渡:重構舊代碼時短期使用,之后應回到線傳遞或架構化方式。 不建議
    發表于 02-04 08:42

    【社區之星】向愨——通過文檔來梳理自己的思路,讓自己思維更細致,更規范

    硬件到軟件。就差沒有學操作系統了。 我也從這些知識中,根據自己所在的行業,對部分的知識做了深挖和拓展。 工作經歷 從2013年開始工作,一直從事研發相關工作。先后從事2.4G無線射頻音頻設備開發;工業
    發表于 12-19 10:35

    小紅書獲取筆記正文和點贊數的API接口

    API訪問步驟、代碼示例和最佳實踐。 1. API接口介紹 小紅書提供開發者API,允許授權用戶訪問平臺數據。獲取筆記正文和點贊數通常涉及以下步驟: 認證 :首先,注冊為小紅書開發者,獲取API密鑰(API Key)和訪問令牌(Access Token)。這需要在小紅
    的頭像 發表于 11-18 16:27 ?1106次閱讀
    小紅書獲取<b class='flag-5'>筆記</b>正文和點贊數的API接口

    【綜述】工作總有規范——測試執行和bug

    關于測試工作的規范,上次討論了例部分。本次將繼續聊下測試執行期間的規范標準,是主要需要測試執行人員關注的部分。【測試執行】測試執行規范或標準,主要是為了確保測試人員“在正確的環境做正
    的頭像 發表于 10-24 10:04 ?437次閱讀
    【綜述】工作總有<b class='flag-5'>規范</b>——測試執行和bug

    代碼格式化工具Clang-Format提升你的CW32工程質量

    它能自動統一團隊代碼風格,讓不同開發者寫出的代碼如出一轍。就像 CW32 官方庫函數遵循統一規范一樣,Clang-Format 能讓團隊所有成員的代碼瞬間保持一致,徹底消除 "tabs
    的頭像 發表于 10-09 17:43 ?1154次閱讀
    <b class='flag-5'>代碼</b>格式化工具Clang-Format提升你的CW32工程質量

    睿遠研究院丨IO-Link規范解讀(一):技術定義與組織規范

    ? IO-Link 技術定義與組織規范 從今日起,小睿將開始長篇連載IO-Link規范解讀系列文章,幫助大家理解和熟悉IO-Link規范,并把IO-Link技術應用到自己的產品中去。這
    的頭像 發表于 09-18 18:17 ?1000次閱讀
    睿遠研究院丨IO-Link<b class='flag-5'>規范</b>解讀(一):技術定義與組織<b class='flag-5'>規范</b>

    VSCode 編寫自己的 KiCad 插件(下)

    “ ?很多小伙伴都想自己開發 KiCad 插件,但不知從何入手。本文由華秋電子的另一位 KiCad 開發者波波同學撰寫,分享了如何快速搭建環境,并開發一個簡單的插件。? ” ? ? ? 所有環境配置
    的頭像 發表于 06-19 11:44 ?2866次閱讀
    <b class='flag-5'>用</b> VSCode 編寫<b class='flag-5'>自己</b>的 KiCad 插件(下)

    在哪些情況下可以通過 EZ-PD API 和/或 HPI 接口向 EMCA 發送/接收來自 UPF /電源的消息?

    我們有一個 USB-C 擴展塢,擴展塢 USB-C 端口通常處于 UFP / Source 模式,與筆記本電腦連接。 我們正在調查一個例,當筆記本電腦通過有源 USB-C 電纜與 EMCA 連接
    發表于 05-28 07:27

    同樣的代碼在官方開發板上運行正常,在自己板子上就跑不起來,怎么辦?

    同樣的代碼在Nordic官方開發板上可以運行正常,但在自己板子上就跑不起來,如果你碰到了上述情況,建議按照如下步驟進行自檢: 首先確認用戶板元器件焊接良好,功能正常。如果你的板子有LED的話,你可以
    的頭像 發表于 05-12 15:26 ?776次閱讀
    同樣的<b class='flag-5'>代碼</b>在官方開發板上運行正常,在<b class='flag-5'>自己</b>板子上就跑不起來,怎么辦?

    為什么你拿著《規范》,卻不會“設計”?

    特別注意輸入電容的放置,如圖所示,將電容放置在芯片背面(減小了和開關管的距離),所測得噪聲大小要遠小于其他兩方式(電容放在側面和較長的引線連接電容)。 不同電容情況的輻射對比 隨著先進封裝的發展,更多
    發表于 04-28 16:21

    133條原理圖設計規范checklist

    原理圖設計是產品設計的理論基礎,設計一份規范的原理圖對設計PCB、跟機、做客戶資料具有指導性意義,是做好一款產品的基礎。原理圖設計基本要求: 規范、清晰、準確、易讀。 因此制定《原理圖設計規范
    發表于 04-11 10:50

    STM32Cube學習筆記 (十六篇全)

    資料介紹: STM32Cube學習筆記,一步一步手把手帶你進入STM32Cube的世界,包括點燈,按鍵,串口,ADC,DAC等等一共16篇。 純分享貼,有需要可以直接下載附件獲取完整資料! (如果內容有幫助可以關注、點贊、評論支持一下哦~)
    發表于 03-22 17:02

    如何為micropython添加自己的C代碼庫?

    部分代碼需要更高效的效率 如何為micropython添加自己的C代碼庫? 是否有教程? 如果可以的話是否可以提供一個實現實例?
    發表于 03-11 07:03