国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux之父:連你自己都懶得解釋,那這就是一堆垃圾!

這篇具有很好參考價值的文章主要介紹了Linux之父:連你自己都懶得解釋,那這就是一堆垃圾!。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

不出意外,Linus又開噴了,這次的激情開麥,源自一部分沒有做注釋的合并請求:Linux6.3內核收到了一部分合并請求,但這部分合并完全沒有注釋。

如果你懶得解釋為什么存在一個合并,那這個合并從本質上來說就是錯誤的垃圾,這是每個開發(fā)者都應牢記于心的規(guī)則。我重復一遍:如果你不能解釋清楚這個合并請求,那就不要做,就是這么簡單?!狶inus Torvalds

讓Linus如此生氣的代碼注釋,到底有啥用?

注釋不僅展現了代碼背后的邏輯,讓我們在后期維護時能更容易閱讀、理解代碼,還能將授權許可、版權信息編寫進去。此外,注釋也有提示作用,如標記為FIXMETODO的注釋往往表示待定的工作等等。

總之,代碼注釋告訴了我們?yōu)槭裁磿戇@樣的代碼。對Linus來說,收到的合并請求缺乏注釋,因為沒有合理的解釋,代碼不僅變得毫無意義,還會變得更難讀、難維護。所以代碼注釋很重要,編寫合理的代碼注釋更重要。
編寫注釋,快看這三不要!

1.不要花大力氣編寫注釋,解釋代碼的每一個細節(jié)!

過多的注釋會讓源文件變得非常混亂,不僅會降低代碼的可讀性,還難以維護。(這種寫大量注釋的行為,也很難不讓Linus發(fā)火。)

2.不要留不恰當的注釋!

很多人會通過注釋保存代碼演變的歷史記錄,但這往往是無用功。一個熱知識:版本控制系統可以保存歷史記錄。還有一些過時的、被廢棄的、不正確的注釋,一經發(fā)現就需要盡快更新或刪除,不能再讓這些廢棄注釋誤導我們了!

3.不要猶豫!看到注釋掉的代碼,請直接刪掉它!

對于那些不再使用的舊代碼,大家可能下意識會直接注釋掉,但直接干脆利落刪除掉這些舊代碼會更簡潔。畢竟后期維護的時候,大家面對這些注釋掉的代碼只會敬而遠之。

重構吧!

通過重構那些爛代碼,可以擺脫不必要的注釋:

  • 命名:比如將變量i重命名為numGoals,能明確意圖。對于變量、方法以及類,我們都可以這樣做;
  • 結構:如果某一段代碼沒有注釋就無法理解,可以嘗試更改代碼結構;
  • 子表達式:將一個復雜的表達式拆分為多個子表達式,可以幫助大家更好地理解代碼;
  • 斷言:當我們遇到“當某個條件為真時,某段代碼才能正常運行”的情況時,可以引入斷言標明假設。

這樣才能使注釋更簡潔、易看。

如何編寫好的代碼注釋?

以下幾個注釋模式送給大家:

  • 文檔注釋模式:記錄接口,而不是解釋代碼本身。
  • 腳注注釋模式:主要用于描述為什么采用特定方法,短小精悍。通常在無法從代碼中推斷出此類信息的情況中使用。
  • 警告注釋模式:警告開發(fā)人員注意某些特殊需求的注釋,如:以超級管理員的身份調用函數。警告可能涉及安全或設計缺陷,注釋可能包括TODOFIXME。
  • 簽名注釋模式:注釋中加上開發(fā)人員的首字母縮寫。在團隊中,我們可以更快速地找到相應人員討論。
  • 編織代碼模式:代碼和文檔結合在一起。需要首先編寫文檔,然后對該文檔進行編碼。

在Linus看來,寫代碼非常重要,寫好的代碼更重要。注釋、命名、版式等代碼規(guī)范檢驗的正是程序員最重要的基本功,如果基礎不牢,必定地動山搖。文章來源地址http://www.zghlxwxcb.cn/news/detail-406327.html

到了這里,關于Linux之父:連你自己都懶得解釋,那這就是一堆垃圾!的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【設計模式】以國足的例子來解釋代理模式,希望自己不要被退錢

    【設計模式】以國足的例子來解釋代理模式,希望自己不要被退錢

    通過引入一個新的對象來實現對真實對象的操作或者將新的對象作為真是對象的一個替身,這種機制被稱為代理模式。通過引入代理對象來間接訪問一個對象,這就是代理模式的模式動機。 代理模式 :給某一個對象提供一個代理,并由代理對象控制對原對象的引用。代理模

    2024年02月21日
    瀏覽(21)
  • 自己動手寫數據庫系統:實現一個小型SQL解釋器(中)

    我們接上節(jié)內容繼續(xù)完成SQL解釋器的代碼解析工作。下面我們實現對update語句的解析,其語法如下: UpdateCmd - INSERT | DELETE | MODIFY | CREATE Create - CreateTable | CreateView | CreateIndex Insert - INSERT INTO ID LEFT_PARAS FieldList RIGHT_PARAS VALUES LEFT_PARS ConstList RIGHT_PARAS FieldList - Field ( COMMA FieldList)?

    2024年02月12日
    瀏覽(25)
  • 自己動手做數據庫系統:解釋執(zhí)行 update 和 delete 對應的 sql 語句

    在上一節(jié)我們完成了 select 語句的解釋執(zhí)行,本節(jié)我們看看 Update 和 Delete 對應的語句如何解釋執(zhí)行,當然他們的實現原理跟我們前面實現的 select 語句執(zhí)行大同小異。無論是 update還是 delete 都是對數據表的修改,因此他們的實現方法基本相同。 假設我們要執(zhí)行如下 sql 語句:

    2024年01月22日
    瀏覽(26)
  • 懶得改變原始對象?JavaScript代理模式教你怎樣一步步偷懶!

    懶得改變原始對象?JavaScript代理模式教你怎樣一步步偷懶!

    系列首發(fā)gong zhong hao[『非同質前端札記』] ,若不想錯過更多精彩內容,請“星標”一下,敬請關注gong zhong hao最新消息。 何為代理模式 例如,你想預約一家公司的董事長會面,按照正常流程,你只能通過先聯系他的秘書,然后跟他的秘書預約時間,約好時間后你們兩個才能

    2024年02月15日
    瀏覽(23)
  • npm i 報一堆版本問題

    npm i 報一堆版本問題

    1,先npm cache clean --force 再下載 插件后綴加上?--legacy-peer-deps 2, npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to https://registry.npm.taobao.org/yorkie/download/yorkie-2.0.0.tgz failed, reason: certificate has expired npm ERR! A complete log of this run can be found in: npm ERR! ? ? C:Users24963AppD

    2024年01月24日
    瀏覽(11)
  • C語言快捷鍵+一堆寶藏技巧,全網最全~

    C語言快捷鍵+一堆寶藏技巧,全網最全~

    ??write in front?? ??大家好,我是Aileen??.希望你看完之后,能對你有所幫助,不足請指正!共同學習交流. ??本文由Aileen_0v0?? 原創(chuàng) CSDN首發(fā)?? 如需轉載還請通知?? ??個人主頁:Aileen_0v0??—CSDN博客 ??歡迎各位→點贊?? + 收藏?? + 留言??? ??系列專欄:Aileen_0v0??

    2024年02月08日
    瀏覽(21)
  • 【Linux】誤刪除/home家目錄怎么辦? -- 此時ssh連接登錄的就是此普通用戶

    【Linux】誤刪除/home家目錄怎么辦? -- 此時ssh連接登錄的就是此普通用戶

    ????? 博主簡介 ????云計算領域優(yōu)質創(chuàng)作者 ????華為云開發(fā)者社區(qū)專家博主 ????阿里云開發(fā)者社區(qū)專家博主 ?? 交流社區(qū): 運維交流社區(qū) 歡迎大家的加入! ?? 希望大家多多支持,我們一起進步!?? ??如果文章對你有幫助的話,歡迎 點贊 ???? 評論 ?? 收藏

    2024年03月21日
    瀏覽(31)
  • npm install時報一堆錯(大致錯誤范圍在sass)

    在服務器上部署一個 react 寫的網站(windows開發(fā),linux部署)的時候, npm install 會報很多錯: 如果你遇見這個問題,我總結了一些解決方案(并行方案,不是步驟): 重新編譯node-sass二進制文件: npm rebuild node-sass 卸載node-sass: npm uninstall node-sass ,安裝sass: npm install sass 。(

    2023年04月22日
    瀏覽(13)
  • 現在的程序員真是越來越懶了,api 文檔都懶得寫!程序員:“api工具慣的”

    現在的程序員真是越來越懶了,api 文檔都懶得寫!程序員:“api工具慣的”

    為了讓大家更能清楚了解 Api 相關往期內容,我寫了一個閱讀指引: 序號 學習路徑指引 鏈接 1 Api -- 連接世界的 Super Star Api -- 連接世界的Super Star_不吃西紅柿丶的博客-CSDN博客 2 軟件吞噬世界,Api 快速入門到放棄 軟件吞噬世界,Api快速入門到放棄_不吃西紅柿丶的博客-CSDN博客

    2024年02月20日
    瀏覽(21)
  • vue3 如何實現 表格內容無縫滾動,我又寫了一堆冗余代碼

    vue3 如何實現 表格內容無縫滾動,我又寫了一堆冗余代碼

    近期在開發(fā)可視化大屏項目,除去各種 echarts 圖表和地圖展示之外還有多個表格?,F在來了一個需求,需要將大屏中的所有表格設置為內容無縫滾動。 本著程序員的七宗罪原則第一時間推脫了一下,但沒推脫成功。 簡單的在網上查了下適合我們項目的有兩種方案,第一種是

    2024年02月09日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包