2011-05-29
JavaとC#の命名規約まとめ (JavaプログラマーがC#でプログラムを書いて引っかかったところ その3)
よくごっちゃになってしまうので、Java と C# の命名規約をざっとまとめてみました。
種類 | Java | C#(.NET) |
---|---|---|
クラス | Pascal | Pascal |
インタフェース | Pascal (例:List) | "I" + Pascal (例:IList) |
パッケージ / ネームスペース | Camel (例:java.net) | Pascal (例:System.Net) |
メソッド | Camel (例:toString()) | Pascal (例:ToString()) |
ローカル変数 | Camel | Camel |
メンバ変数 | Camel (例:Calendar.isTime) | Pascal (例:Calendar.IsReadOnly) |
定数 | Snake (例:Integer.MAX_VALUE) | Pascal (例:Int32.MaxValue) |
列挙定数 | Snake (例:State.RUNNABLE) | Pascal (例:ThreadState.Running) |
- CamelCase
- ・最初の単語はすべて小文字
・それ以降の単語は頭だけ大文字、頭以外は小文字
・例:fooBar - PascalCase
- ・単語の頭は大文字、頭以外は小文字
・例: FooBar - SnakeCase
- ・すべての単語は大文字
・単語と単語の間にアンダースコアを挿入
・例:FOO_BAR
初めて Java を書いたときは、命名規約が C言語と大体同じだったのでそこまで混乱しなかったのですが、C# は Java とも C言語とも違うので*1、慣れないと厄介ですね*2。
でも、改めて見てみるとローカル変数以外は PascalCase となっているので難しくはなさそうです。
参考:
コメントを書く
syn
2014/08/06 09:10
経験上、Javaのパッケージはlower_snake_caseが多かったです。
トラックバック - http://d.hatena.ne.jp/chiheisen/20110529/1306676847
リンク元
- 7 http://search.minakoe.jp/rsss/rsss.asp?pgsz=100&qry=java¬wit=1&twit=0&debug=1&multi=1
- 4 http://ezsch.ezweb.ne.jp/search/?query=バッファリングしない&ct=0001&pd=1&sr=0001
- 4 http://ezsch.ezweb.ne.jp/search/?sr=0101&query=最近地震減った
- 3 http://forza.cocolog-nifty.com/blog/2010/11/svn-91e6.html
- 3 http://search.yahoo.co.jp/search?p=array+リスト+コピー&aq=-1&oq=&ei=UTF-8&fr=top_ga1_sa&x=wrt
- 3 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4ADRA_jaJP425JP425&q=sql+or+union
- 3 http://www.google.co.jp/url?sa=t&source=web&cd=2&ved=0CCMQFjAB&url=http://d.hatena.ne.jp/chiheisen/20091123/1258986655&rct=j&q=java timestamp 現在日時&ei=UErkTd-AK4f4vwP5--yWBw&usg=AFQjCNF8HZg0MjNxD96uL-d8eOKJKI
- 3 http://www.google.co.jp/url?sa=t&source=web&cd=3&ved=0CCoQFjAC&url=http://d.hatena.ne.jp/chiheisen/20090707/1246980135&rct=j&q=html:multibox デフォルト&ei=VvHiTb75IZDuvQORoPDqBg&usg=AFQjCNF_PUtLquzQ5FCfMX
- 2 http://devlabo.blogspot.com/2010/09/javascriptcanvasgetimagedatasecurityerr.html
- 2 http://reader.livedoor.com/reader/