javascript - 大家喜歡用什麼命名規範?

來源:互聯網
上載者:User
$userName = getUserNameById( 123 );$user_name = get_username_by_id( 123 );

前幾天被翻出的那個facebook首頁的源碼,幾乎用的都是底線法,WordPress用的也是底線法,我在寫PHP也喜歡用底線,但是有些時候駝峰“顯專業”。

而寫Javascript的時候喜歡駝峰。

大家都喜歡用什麼命名方式?

連結:Facebook PHP Source Code from August 2007

回複內容:

$userName = getUserNameById( 123 );$user_name = get_username_by_id( 123 );

前幾天被翻出的那個facebook首頁的源碼,幾乎用的都是底線法,WordPress用的也是底線法,我在寫PHP也喜歡用底線,但是有些時候駝峰“顯專業”。

而寫Javascript的時候喜歡駝峰。

大家都喜歡用什麼命名方式?

連結:Facebook PHP Source Code from August 2007

java/js等編程時習慣用駝峰方式,資料庫中庫名、表名、欄位以及Web傳參習慣用底線串連,CSS類、命令列參數習慣用橫杠串連。

PHP中在用類、對象的時候習慣用駝峰命名法,在全域變數和函數時習慣用底線,但是如果我使用的工具、架構採用了其中一種命名法,我會盡量保持與他一致,或在局部保持一致(比如某個函數內,某一大段明顯區別其他部分的代碼內)。

尤其是我喜歡用縮寫和對齊(非僅僅縮排對齊,等號、冒號、逗號甚至結尾對齊,或呈現規律),這點很多人不贊同,但我就是喜歡這樣。

建議按照 PSR-1 來:

https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-1-basic-coding-standard.md

裡面說的很詳細,並且現在的一些流行庫都在採用。

駝峰“顯專業” 這種說法顯得你很沒有自信。

大部分的時候項目本身會有規範要求,個人習慣底線(前半句才是重點)

  • 駝峰的可讀性不如底線,當變數名稱裡有全大寫縮寫時尤其明顯。
  • 用駝峰的話,還要解決用哪種的問題,比如testHttpServer TestHttpServer testHTTPServer TestHTTPServer,自己寫容易不一致,團隊協作增加記憶負擔。
  • 好的IDE能幫忙,但是好的IDE也能自動補全,那麼底線也不會增加手指負擔,而駝峰的唯一優勢就是比底線打起來略微方便點。

python的命合風格:

http://zh-google-styleguide.readthedocs.org/en/latest/google-python-styleguide/python_style_rules/#id14

具體一些名稱命法:

module_name, package_name, ClassName, method_name, ExceptionName, function_name, GLOBAL_VAR_NAME, instance_var_name, function_parameter_name, local_var_name.

我個人也比較喜歡,只是自己英文差,很多時候知道那意思後,就用Google翻譯下,估計那源碼放出來會出很多笑話。

我不喜歡用那麼多的底線,如果是哪天心情好了,就用“駝峰”,心情不好就連大小寫都不分

各種方式都有,本來習慣於 getName 這種駝峰式,不過只用駝峰的話,有時會會顯得不夠用,比如很長的變數名 arrayData_or_mapData,幾個不同的含義的時候用其他符號比如底線來分割可能會更明顯,但也會風格不統一,不過還是實用就好。

我習慣用 首字母是底線 類似 _getSystemDate

不同的代碼,不同的產品用不同的代碼風格,Java用Eclipse的提示命名,C++用匈牙利命名,Linux核心用Linux該用的命名

php還算好的了。

你看C++,有多少庫是用標準庫那種命名規範的。像MFC、QT、FLTK之類的都不是嘛。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.