很多時候我看到人們將他們的方法命名爲a(),b(),c()等,而不是給他們描述方法實際執行的名稱。這有什麼意義?命名方法a,b,c等
回答
他們不應該這樣做。這是不好的做法。
無論是開發者懶惰,還是他們正在展示一個非常簡單的例子(仍然不好的做法)。
編輯:(考慮到額外的細節在你的註釋)
在這種情況下,這可能是由一些自動化程序來完成。開發人員實際工作的代碼不會使用這些名稱。
沒有。他們太懶惰,不能遵循標準的命名約定,也許是因爲他們只是做一些快速的POC(概念證明),他們不想浪費時間輸入一些有意義的方法名稱。
但是,在其他人可能正在查看/維護其代碼的實際項目中,必須始終遵循命名約定。
我的猜測是你正在閱讀混淆代碼。
混淆代碼比a,b或c難以閱讀 – 2014-10-29 15:57:19
更可能是開發人員只是懶惰 – 2014-10-29 15:58:21
當然,有不同程度的混淆。 – 2014-10-29 19:38:22
爲了儘量減少加載時間.js文件,許多開發商將「壓縮」他們。壓縮還有一個選項來混淆代碼,使得難以理解而更難以竊取和更改。正如你所描述的那樣,通過將變量名稱和函數名稱更改爲「a」,「b」,「c」等,就會發生這種情況。這具有使代碼更小的副作用,因爲名稱現在更短。一個web工具的例子是這樣的:http://www.developerfusion.com/tools/compressjavascript/
你維護的代碼基本上不是被壓縮和/或模糊處理的代碼庫。
這一直是每個社區不鼓勵編程,可能是一個壞開發商的跡象。
有關爲何以及如何我們使用的編碼慣例看this
- 1. 從{a-b,b-c,c-a}改變爲{(a,b),(b,c),(c,a)}?
- 2. 命名空間A - floder A /子文件夾B-子命名空間B?
- 3. a + b如何不等於b + a?
- 4. PHP變換陣列'a','b','c'到'a/b/c','a/b','a'
- 5. 邏輯:是(A &&!(B || C))|| (B || C)與(A || B || C)相同?
- 6. jQuery Alpabetical按名稱在表,A,B,C等列表中篩選
- 7. 如何寫A :: B :: C => D給定A :: B :: C和(A,B,C)=> D?
- 8. 我想從['a','b','c']將python列表變成['a','a','b',b','c','c']
- 9. C# - 方法A的變量作爲方法B的參數
- 10. C#:無法A型轉換爲B型,其中A = B
- 11. 方法B用於方法A;在繼承類中,使A被覆蓋B
- 12. C塊變爲表達式:({int a = 1; int b = 2; a + b;})等於3
- 13. C#數組[a,b,c]與數組[a] [b] [c]?
- 14. 對於列A,B,C的SQL:按A組計算,B的計算份額等於每個A的C
- 15. Python:是a,b = 1,2和a = 1; b = 2嚴格等價嗎?
- 16. 如何使添加(a)(b)等於a + b?
- 17. 類型模式的名稱:R a b = Q(a - >(R a b,b))
- 18. a =「hello」,b =「bye」,c = a * b然後打印c?
- 19. SQL條件:(A = B AND C LIKE%D%)或(A LIKE%B%和C = D)
- 20. 「a,b,c」.split(「,」)優於[「a」,「b」,「c」]的優點是什麼?
- 21. 從擠壓元組(A,(B,C))至(A,B,C)中fsharp
- 22. 字符串比較像a,b,c與c,b,a
- 23. Ruby是否提供命名空間路徑,例如類似於[:A,:B]類A :: B :: C?
- 24. 託管C++方法命名
- 25. A→B,B→A類協會
- 26. GROUP BY(A,B)和(B,A)
- 27. Javascript不是(a == b)||不(c == b)
- 28. 給定一個(A * B)列表,返回(A * B列表)名單
- 29. SqlAlchemy如何查詢列A == a和B == b和A == b和B == a
- 30. 測試非整數是否在範圍[a,b) - 或[a,b],(a,b),(a,b)
在什麼情況下,你看到這種情況出現的更多信息?我不希望看到在生產代碼中糟糕命名的方法,當然我的工作會立即導致代碼審查失敗。 – JonK 2014-10-29 15:54:11
什麼人?在什麼情況下? – assylias 2014-10-29 15:54:47
我已經看到它在遊戲「Minecraft」的插件中完成。我認爲Minecraft本身也會命名它們的類和方法。 – Garrett 2014-10-29 15:58:05