我在大學裏學習的一個類是我們在C中進行大量編程的地方。我們應該在作業中使用'C'風格的命名約定或者獲得停靠標記(例如,一個變量被命名爲int line_counter,函數clear_array())我發現這個約定真的很煩人,因爲在Java一年之後,這樣的事情會比lineCounter或clearArray()更方便地命名。下劃線很煩人,打字麻煩,增加了語法錯誤的數量。爲什麼要遵循這個慣例?是否有一些邏輯或它的背後?或者它只是讓'C'更難編寫代碼的另一個訣竅?c風格命名約定的要點
回答
風格命名約定是一個傳統問題,地方協議和統一。你必須習慣不同的風格,因爲在就業市場上一旦出局,你不能保證你會使用你喜歡的代碼約定。從這個意義上講,重點是你必須知道Java風格不是你將要處理的唯一風格。
關於如果這是一個好的決定與否,很難決定。即使我有幾十年的編程經驗,但我仍然對你的造型違規感到惱火,但你不能真正假裝將舊的代碼改造成新的約定。這需要大量的非生產性時間,並將其他程序員的一切都搞砸了。
可以減輕慢於型下劃線使用你的編輯器選項卡中完成(如VIM)的問題。編寫一個方法只會輸入幾個字母並按下Tab鍵。在第一個字母中不太可能會出現下劃線。
習慣了特定的風格約定只是你寫的代碼行數的問題。在這種情況下,因爲習慣了Java而在C語言中感到煩惱的人也是Python中的慣例:與你相反(我主要用Python編程),我更喜歡用下劃線的變量名(雖然我理解java的也很清楚閱讀)
在另一方面,作爲一個好奇心,你可能知道,寫一個給定字符的難度取決於你的鍵盤的區域分佈。 C中使用的許多符號都是可以用西班牙語鍵盤寫的地獄。
我認爲這是一個非常糟糕的主意,是不是使用標準約定的語言和開發自定義的約定。這是對別人真的不好,也是你,因爲所有的文檔,代碼等你有學習或將在標準樣式寫的語言互動
有作爲「C風格的命名約定沒有這樣的事「;您將在C代碼和C++代碼中找到許多不同的樣式。也就是說,你只需要把它吸了出來,並按照你的教授所要求的慣例。一般來說,風格約定的目的是爲了減少錯誤並使其輕鬆推斷關於符號的信息而無需查看其聲明。也就是說,哪種風格或哪種風格最適合有很多不同之處。儘管如此,一貫的風格對於理解整個代碼庫十分重要,如果所有的作業都使用相同的一致風格編寫,那麼對於教授來說,分級和理解作業可能會更容易。
差不多你工作的任何公司都需要你堅持公司的編碼約定,所以它也不是沒有道理的你的教授有類似的要求。儘管我第一次開始使用它時已經習慣了Google's C++ coding conventions,但它對於代碼的可讀性無疑是一致的風格。沒有什麼比混合不同風格更難以理解。
我不同意你的老師決定扣分資本,但你將不得不跟隨他或她的指令。
等級旨在反映對材料的理解。我個人發現,在教授介紹性的C課程以便對理解進行評分時,就足夠了。初學者有足夠的難度掌握語言結構。對瑣碎事物進行對接是不必要和殘酷的。
您老師的特殊風格或遵循企業風格的優點是不同的問題。
- 1. c#命名約定
- 2. Restful端點命名約定
- 3. 檢查TFS構建中的命名風格約定
- 4. C#WinForms命名約定
- 5. 在C#命名約定
- 6. C#項目命名約定
- 7. 驗證命名約定? C#
- 8. C#類命名約定
- 9. C/C++:數組的命名約定?
- 10. C++風格約定:類聲明中的參數名稱
- 11. 命名約定
- 12. 命名約定
- 13. C#命名約定(標題與名稱)
- 14. C#轉換函數的命名約定
- 15. C#中windows控件的命名約定
- 16. C++中的變量命名約定
- 17. 數字函數的C命名約定?
- 18. 關於C++命名約定的問題
- 19. C#中的命名約定是什麼?
- 20. C#縮寫詞的命名約定
- 21. .NET/C#/ WPF項目的命名約定
- 22. TSQL命名約定〜這個命名約定叫什麼名字?
- 23. 遵循Ruby屬性命名約定的C#JSON.NET約定?
- 24. Protobuf命名約定
- 25. BEM:命名約定
- 26. 表命名約定?
- 27. ç命名約定
- 28. DAO命名約定
- 29. mysql命名約定
- 30. MySQL命名約定
請參閱:http://stackoverflow.com/questions/608443/underscore-or-camelcase – slhck 2010-10-31 09:12:46
「我不鏈接這個命名約定」不是一個問題。如果它是一個,它不會是一個有趣的。你的意見已經被無數次地表達出來了,反之亦然。 – 2010-10-31 09:42:15