在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

    文章

    4888

    瀏覽量

    70274
  • GitHub
    +關注

    關注

    3

    文章

    481

    瀏覽量

    17464

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

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

收藏 人收藏

    評論

    相關推薦
    熱點推薦

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

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

    嵌入式工業級顯示器在環保垃圾柜設備中的作用

    嵌入式工業級顯示器在環保垃圾柜設備中發揮著至關重要的作用。以下是其具體作用的分析: 一、提供交互界面 嵌入式工業級顯示器為環保垃圾柜設備提供了一個直觀、易用的交互界面。用戶可以通過觸摸屏幕進行操作
    的頭像 發表于 02-21 11:18 ?286次閱讀
    嵌入式工業級顯示器在環保<b class='flag-5'>垃圾</b>柜設備中的作用

    智能垃圾投放站遠程監控智慧運維系統方案

    隨著環保意識的提高和政策的推動,垃圾分類已成為全球發展的重要主題。我國持續推進垃圾分類和回收等相關產業的發展,鼓勵居民和企業進行垃圾分類和回收,以減少資源浪費和環境污染。 智能垃圾投放
    的頭像 發表于 12-31 15:47 ?323次閱讀

    垃圾短信?手機自動識別垃圾短信邏輯的分析

    作者:京東科技 賈玉龍 1 背景 隨著智能手機的普及和移動互聯網的發展,短信作為一種傳統的通訊方式,仍然保持著其獨特的地位。然而,隨著垃圾短信的泛濫,手機自動識別垃圾短信的技術也在不斷進步。對于提供
    的頭像 發表于 12-16 10:19 ?829次閱讀

    神舟十九號載人飛船成功發射

    2024年10月30日,這是一個注定要被載入中國航天史冊的日子。神舟十九號載人飛船成功飛天,中國“神箭”再探蒼穹。一覺醒來,“90后”真的上天了!祝賀浩瀚太空首次迎來中國“90后”訪客。執行神舟
    的頭像 發表于 10-31 08:00 ?807次閱讀
    神舟<b class='flag-5'>十九</b>號載人飛船成功發射

    發射中心又見大紅屏 神十九發射任務圓滿成功

    發射中心又見大紅屏!據央視新聞報道,在2024年10月30日,神舟十九號載人飛船與火箭成功分離,進入預定軌道,航天員乘組狀態良好,神十九發射任務圓滿成功!神舟十九號航天員乘組順利入駐“天宮”;發射
    的頭像 發表于 10-30 11:09 ?1127次閱讀

    施耐德電氣推出垃圾焚燒電廠燃燒參數優化解決方案

    學會了如何科學的扔垃圾,你知道被當作“廢物”的它們,后來都去哪了?其實接下來,一些垃圾們就踏上了變廢為寶之旅——垃圾焚燒發電。
    的頭像 發表于 09-25 17:25 ?962次閱讀

    亮鉆科技智能垃圾分類箱方案介紹

    據研究報告顯示,2020年智能垃圾分類市場規模約92億元。預計未來五年,隨著城市生活垃圾增多和政策推進,該行業將快速發展,到2025年市場規模預計達190億元。 在這種情況下,集成新一代信息技術的智能垃圾分類箱成為市場剛需。
    的頭像 發表于 08-06 17:46 ?1000次閱讀
    亮鉆科技智能<b class='flag-5'>垃圾</b>分類箱方案介紹

    FlexLua低代碼零基礎開發智能垃圾桶產品原型(接入機智云)

    目標功能介紹基于功能強大的ShineBlink低代碼物聯網核心模組和靈活輕巧的Lua腳本編程語言實現如下功能。1、監測和報警監測圾桶內的煙霧并聲光報警監測圾桶內的酒精等有害氣體并聲光報警監測垃圾桶內
    的頭像 發表于 07-11 08:11 ?1661次閱讀
    FlexLua低<b class='flag-5'>代碼</b>零基礎開發智能<b class='flag-5'>垃圾</b>桶產品原型(接入機智云)

    基于PYNQ的智能垃圾分類系統

    第一部分 設計概述 /Design Introduction 1.1 設計目的 隨著現代社會的高速發展,其帶來的環境壓力也越來越大,對于日益劇增的垃圾產量已經成為世界關注的焦點。垃圾分類成為
    發表于 07-09 18:44

    海信智慧交通助力西安曲江新區29綠波帶組網 擁堵指數同比下降7.7%

    新區:二十九綠波帶路段組網助力通行提速”的報道,對西安曲江新區綠波帶建設進行了詳細介紹,吸引了眾多讀者和用戶的關注。該項目正是由海信智慧交通助力建設而成。 西安曲江新區:二十九綠波
    的頭像 發表于 07-04 13:10 ?546次閱讀
    海信智慧交通助力西安曲江新區29<b class='flag-5'>條</b>綠波帶組網 擁堵指數同比下降7.7%

    UART傳輸在控制臺中顯示垃圾值是哪里的問題?

    的控制臺窗口上顯示的不是"Hello World" ,而是垃圾字符。 我檢查了流程,發現與示例代碼相似,如波特率設置正確,緩沖區流程也正確。 錯誤還可能出現在哪里?
    發表于 07-02 08:24

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

    在現代城市治理中,越來越多城市人口、越來越多元的消費系統,帶來越來越重要的垃圾處理問題,應對日益增長的垃圾處理需求已成為當務之急。垃圾壓縮處理設備作為廢棄物管理的關鍵設施,在提高空間利用率、減少
    的頭像 發表于 06-27 16:25 ?796次閱讀
    <b class='flag-5'>垃圾</b>壓縮處理設備數據采集遠程監控系統

    淺談EMC設計準則

    在日益數字化的時代,電子設備的設計已成為現代生活中不可或缺的一部分。但隨之而來的是電磁兼容性(EMC)問題的日益凸顯。EMC設計準則的制定和遵循對于確保設備在各種環境中穩定運行并且不會干擾其他設備
    的頭像 發表于 06-18 14:59 ?3006次閱讀
    淺談EMC設計<b class='flag-5'>準則</b>

    基于Vision Board上的openMV垃圾分類

    通過在Vision Board部署openMV實現垃圾分類。
    的頭像 發表于 06-17 10:49 ?1099次閱讀
    基于Vision Board上的openMV<b class='flag-5'>垃圾</b>分類
    主站蜘蛛池模板: 欧美超级碰碰 | 久久久噜噜噜久久久午夜 | 男男gay污小黄文 | 免费一看一级毛片全播放 | 五月婷婷色丁香 | 日韩三级 | 簧片免费视频 | 男人的视频网站 | 性xxxxx| 久久成人免费网站 | 二级特黄绝大片免费视频大片 | 国产成人乱码一区二区三区 | 综合激情在线 | 最新欧美精品一区二区三区 | 男人和女人做a免费视频 | 久久精品免费看 | 天天射天天搞 | 年轻的护士3在线观看 | 欧美性猛交aa一级 | 天堂一区二区在线观看 | 真人一级一级特黄高清毛片 | 男人资源 | 午夜男人视频 | 精品免费久久久久久成人影院 | 欧美视频精品一区二区三区 | 丁香色综合 | 国产女主播精品大秀系列在线 | 国产无套粉嫩白浆 | 99免费观看视频 | 免费一级在线观看 | 欧美成人性色 | 婷婷开心六月久久综合丁香 | 久国产精品久久精品国产四虎 | 永久视频免费 | 国产精品永久免费 | 亚洲激情婷婷 | 久久久久久久综合狠狠综合 | 1314酒色| 美脚连裤袜老师正在播放 | 亚洲综合色丁香婷婷六月图片 | 看视频免费网址 |