代碼中大括弧換行與否,加空格與否,tab與空格等,各有什麼優勢?初學者應該怎樣培養良好的碼風?
各種主流的IDE(VS,VSCode,Eclipse,IDEA等)都有格式化功能,直接用就好了,最好不要自己定義一套「與眾不同」的格式出來。
主流語言的命名規則最好和API一致。如Java,C#的駝峰命名法。
主要是習慣問題,各個語言一般也有各個語言的推薦規範。初學者建議使用 IDE 默認的格式化風格(例如 VS Code,IntelliJ 等),保持一致就行,沒有哪種就一定好。
例如 VS Code 默認用 4 個空格替換 tab,而比爾蓋茨曾在採訪時表示,他習慣用 tab 而不是空格。不過保持一致的話,IDE 都是可以自動替換的。
另外可以使用類似 lint 之類的代碼檢查工具,這些工具有代碼檢查功能,使用默認的配置風格,做檢查評分,自己修改即可,但也不一定要糾結滿分,設定一個最低分就行。
類似的工具非常多,以下幾個供參考。
ESLint - Pluggable JavaScript linter?eslint.orghttps://www.pylint.org/?www.pylint.orgSonarLint | Fix issues before they exist?www.sonarlint.orghttp://www.jutils.com/?www.jutils.com
你搜一下世界各大公司面試程序員時候,是否涉及到你的這個問題?沒有。如果你能很快將一個演算法手寫出來,即使排版不好看,面試者也知道你的水平的。
初學者不必太關注形式,要把編程語言的基礎學好。如果沒有良好良好的基礎,這些形式沒有用的。
另外,各種輔助工具你幫助你做好這些形式的檢查的。
2020年了,別太糾結手寫代碼風格的問題了,各種代碼格式化工具和靜態分析工具學習一下。
此外,需要注意一下各種命名,保持一個比較大眾的標準即可。
培養在寫完一段代碼之後格式化一下就行了,編輯器格式化成什麼樣子,什麼樣子就是正確的
沒有硬性規定的,而且現在基於clang做的很多格式化工具都挺好用的。
一般來說,只要遵循,寧肯寫鬆散點也別寫的緊巴巴就行了,就是說不要捨不得空格和回車,盡量做到一眼過去,各種標識符、關鍵字、運算符等等,在沒有語法高亮的時候都能一下子看明白就可以了。比如函數參數名字比較長,還有三四個,那就換行,一行一個,看著也清晰,當然這些是沒有硬性規定的,只是我個人比較喜歡這樣子。
推薦閱讀: