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

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

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

3天內不再提示

十九條垃圾代碼書寫準則

Q4MP_gh_c472c21 ? 來源:機器之心 ? 作者:Jack-Cui ? 2022-05-18 14:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在 GitHub 上有一個項目,它描述了「最佳垃圾代碼」的十九條關鍵準則。從變量命名到注釋編寫,這些準則將指導你寫出最亮眼的爛代碼。

為了保持與原 GitHub 項目一致的風格,下文沒有進行轉換。讀者們可以以相反的角度來理解所有觀點,這樣就能完美避免寫出垃圾代碼。

項目地址:
https://github.com/trekhleb/state-of-the-art-shitcode

當然,以下十九條垃圾代碼書寫準則并沒有面面俱到,如果讀者們發現有一些難以忍受的爛代碼習慣,也可以發表你的看法。

第一條:打字越少越好

如果我們鍵入的東西越少,那么就有越多的時間去思考代碼邏輯等問題。如下所示,「Good」表示遵循該規則的示例,Bad 表示沒遵循該規則的示例。

b3c40a8e-d661-11ec-bce3-dac502259ad0.png

第二條:變量/函數混合命名風格

我們需要混合命名方法與變量,這樣才能體現命名的多樣性。

b3df8ea8-d661-11ec-bce3-dac502259ad0.png

第三條:不要寫注釋

反正代碼都看得懂,為什么要寫注釋?或者說,反正沒人看我的代碼,為什么要寫注釋?

b3f6656a-d661-11ec-bce3-dac502259ad0.png

第四條:使用母語寫注釋

如果你違反了第三條規則,那么至少寫注釋需要用你的母語或者其它語言。如果你的母語是英語,那么你也算違反了這條規則。既然編程語言絕大多數都是用英文,那么為什么不用其它語言注釋一下?

b41e0d7c-d661-11ec-bce3-dac502259ad0.png

第五條:盡可能混合不同的格式

同樣,為了代碼的多樣性,我們需要盡可能混合不同的格式,例如單引號或雙引號。如果它們的語義相同,那就應該混用。

b4339a66-d661-11ec-bce3-dac502259ad0.png

第六條:盡可能把代碼寫成一行

如果一系列參數與方法都是一起實現的,那么代碼也要寫在一起。

b4508f90-d661-11ec-bce3-dac502259ad0.png

第七條:發現錯誤要保持靜默

當你發現某些錯誤時,其他人不需要了解它,因此不需要打印出日志或 Traceback。

b46f2f40-d661-11ec-bce3-dac502259ad0.png

第八條:廣泛使用全局變量

使用全局變量,是面向「全球化」不可或缺的部分。

b47ff154-d661-11ec-bce3-dac502259ad0.png

第九條:構建備用變量

以防萬一,我們需要創建一些備用變量,在需要時隨時調用它們。

b48ec166-d661-11ec-bce3-dac502259ad0.png

第十條:Type 使用需謹慎

一般不要指定變量類型或者經常做類型檢查,無類型才是最好的類型。

b4a8045a-d661-11ec-bce3-dac502259ad0.png

第十一條:準備「Plan B」

你需要準備一些運行不到的代碼(unreachable code),它們可以作為你的「Plan B」。

b4cd01b0-d661-11ec-bce3-dac502259ad0.png

第十二條:嵌套的三角法則

如果代碼有一些嵌套結構,或者說縮進空行的結構,三角法則是最漂亮的。

b4f73ade-d661-11ec-bce3-dac502259ad0.png

第十三條:混合縮進

我們需要避免采用縮進,因為縮進會使復雜代碼在編輯器中占用更多的空間。如果一定要采用縮進,那么就使用混合縮進策略。當然,這種策略在 Python 中是行不通的,因為它靠縮進來確定代碼結構。

b51160ee-d661-11ec-bce3-dac502259ad0.png

第十四條:不要鎖住依賴項

每一次要安裝新庫時,更新已有的依賴項。為什么要維持之前的版本呢,我們需要時刻保持最新的第三方代碼庫。

b52fe67c-d661-11ec-bce3-dac502259ad0.png

第十五條:長函數比短函數好

不要將程序整體邏輯分割為一些代碼塊,要是 IDE 突然不行了,它找不到必要的文件或函數怎么辦。因此把代碼寫在一個主體函數中,并且不再維護額外的函數導入或代碼文件,那么這樣的方法是最穩定的。

單個文件一萬行代碼是沒問題的,單個函數一千行代碼也是沒問題的。

第十六條:代碼不需要做特定測試

這些測試通常是重復且無意義的工作。

第十七條:盡量避免重復代碼

按你的想法寫代碼,尤其是在小團隊中,畢竟這是「自由」準則。

第十八條:構建新項目不需要 README 文檔

在項目前期,我們可以暫時保持這種狀態。

第十九條:保存不必要的代碼

在寫代碼的過程中,經常會產生很多測試代碼。這些代碼也是非常重要的資料,因此不能刪除掉,最多只能注釋掉。

END 審核編輯 :李倩

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

    關注

    30

    文章

    4968

    瀏覽量

    73970
  • GitHub
    +關注

    關注

    3

    文章

    488

    瀏覽量

    18670

原文標題:手把手教你寫出令人窒息的爛代碼

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    紅外+按鍵多模感應!納祥科技智能感應垃圾桶方案0.5秒極速響應

    傳統垃圾桶手動開蓋易沾染細菌且操作不便,尤其在廚余垃圾處理場景中,衛生隱患問題較為突出。而隨著智能家居的普及,感應式垃圾桶需求激增,其非接觸操作更衛生,已廣泛滲透到生活的方方面面。基于此,納祥科技為
    的頭像 發表于 02-26 15:29 ?90次閱讀
    紅外+按鍵多模感應!納祥科技智能感應<b class='flag-5'>垃圾</b>桶方案0.5秒極速響應

    誠邁科技攜手應急管理大學、中鐵十九局共建智慧應急科技創新研究院

    1月25日,由誠邁科技、應急管理大學、中鐵十九局共同組建的智慧應急科技創新研究院(以下簡稱“研究院”)在應急管理大學南校區正式啟動。應急管理大學黨委書記趙峰華,中鐵十九局黨委常委、副總經理趙琦,誠邁
    的頭像 發表于 01-27 11:51 ?477次閱讀
    誠邁科技攜手應急管理大學、中鐵<b class='flag-5'>十九</b>局共建智慧應急科技創新研究院

    ?智能垃圾桶紅外和TOF高精度感應方案

    ?? ? ? ? ?垃圾桶這么一個不起眼的小玩意在智能化以后其實也有大市場,智能垃圾桶的零售端價格從幾十元到幾百甚至上千元。 傳統垃圾桶和智能垃圾桶的區別 傳統的
    的頭像 發表于 01-07 09:55 ?254次閱讀
    ?智能<b class='flag-5'>垃圾</b>桶紅外和TOF高精度感應方案

    工業智能網關賦能餐廚垃圾處理設備遠程監控與智慧運維

    行業背景 餐廚垃圾若未能及時妥善處理,不僅會造成影響市容、污染水質、傳播疾病等負面影響,還易引發食品安全隱患,危害人體健康。隨著城市規模持續擴大與消費水平穩步提升,廚余垃圾產生量日益增多,對餐廚
    的頭像 發表于 12-19 10:58 ?285次閱讀
    工業智能網關賦能餐廚<b class='flag-5'>垃圾</b>處理設備遠程監控與智慧運維

    【啟揚方案】基于RK3576的智能垃圾分類站應用解決方案

    伴隨著城市化進程的加速和環境問題的日益凸顯,人們對于環境保護的關注度也在不斷提高,垃圾分類處理成為社會發展的重要議題。為有效解決垃圾分類和管理的難題,智能垃圾分類站應運而生。智能垃圾
    的頭像 發表于 12-04 17:29 ?980次閱讀
    【啟揚方案】基于RK3576的智能<b class='flag-5'>垃圾</b>分類站應用解決方案

    RFID在垃圾分類中的核心優勢

    RFID在垃圾分類中的核心優勢精準溯源每個居民或單位的垃圾桶配備唯一編碼的RFID標簽,系統可記錄每次投放的時間、地點和責任人,實現垃圾來源可追溯。自動識別分類在智能垃圾箱上安裝RFI
    的頭像 發表于 09-23 11:08 ?550次閱讀
    RFID在<b class='flag-5'>垃圾</b>分類中的核心優勢

    智慧城市物聯網解決方案:垃圾中轉站監控運維平臺

    垃圾中轉站是保障城市生活垃圾集中收納、暫存與轉運的核心基礎設施,承擔著從垃圾收集進場、壓縮處理到轉運出庫的全流程運行職能,其運行過程中的設備運行穩定性、環境污染物控制與垃圾轉運效率,直
    的頭像 發表于 09-03 15:20 ?537次閱讀
    智慧城市物聯網解決方案:<b class='flag-5'>垃圾</b>中轉站監控運維平臺

    深度解讀PCB設計布局準則

    無論您是在進行高速設計,還是正在設計一塊高速PCB,良好的電路板設計實踐都有助于確保您的設計能夠按預期工作并實現批量生產。在本指南中,我們匯總了適用于大多數現代電路板的一些基本PCB設計布局準則
    的頭像 發表于 09-01 14:24 ?7457次閱讀
    深度解讀PCB設計布局<b class='flag-5'>準則</b>

    聲智科技榮獲第十九屆北京發明創新大賽銀獎

    聲智科技自主研發的 “聲學 - AI 智能交互”項目憑借領先的技術優勢與創新應用,在第十九屆北京發明創新大賽中榮獲銀獎。
    的頭像 發表于 08-14 16:53 ?1088次閱讀

    廣州黃埔城管攜手海康威視打造垃圾分類智慧管理系統

    走進廣州黃埔社區,"無異味、無污漬、無混投"的垃圾投放點已成為新日常。四色分類垃圾桶整齊擺放,清新空氣與整潔環境讓居民倍感舒心。
    的頭像 發表于 08-06 10:28 ?913次閱讀

    RFID標簽在垃圾分類的應用

    二、RFID標簽在垃圾分類中的優勢高效率:RFID可以快速批量讀取垃圾信息,大幅縮短操作時間,提高垃圾分類效率。準確性:RFID減少了人工操作的錯誤率,提高了垃圾分類的準確性和可靠性。
    的頭像 發表于 07-31 16:48 ?780次閱讀
    RFID標簽在<b class='flag-5'>垃圾</b>分類的應用

    施耐德電氣推動AI在垃圾焚燒發電領域的應用落地

    清晨六點,上海某垃圾發電廠的中控室大屏突然彈出預警:3號爐火線位置持續走高,有脫料風險。
    的頭像 發表于 07-30 09:50 ?920次閱讀

    餐廚垃圾處理設備數據采集遠程監控系統

    餐廚垃圾處理設備通過物理破碎、脫水、油水分離等核心工藝,實現垃圾減量化和資源化處理,從而成為學校、酒店、醫院等場景的重要環保設備。
    的頭像 發表于 07-05 14:16 ?490次閱讀
    餐廚<b class='flag-5'>垃圾</b>處理設備數據采集遠程監控系統

    生活垃圾焚燒發電廠數據采集可視化管理系統

    生活垃圾焚燒發電是通過對燃燒熱值較高的垃圾進行高溫焚燒,使得在高溫焚燒中產生的熱能轉化為高溫蒸汽,進而推動汽輪機并帶動發電機發電,是一種污染較小、效益較高的污染治理方式。但同時焚燒發電也會帶來廢水
    的頭像 發表于 06-04 17:13 ?588次閱讀

    基于BLE技術 智能手寫筆解決方案:改變你的書寫體驗PTR5415

    方案說明: 我們的智能手寫筆方案基于BLE技術,利用藍牙低功耗連接手寫筆與移動設備(如智能手機、平板電腦)之間的無線通信。可以實時將書寫數據上傳到手機APP及云端,及時有效的對書寫數據進行存檔及管理
    發表于 03-11 17:50