Create  Edit  Diff  FrontPage  Index  Search  Changes  Login

はじめてのひき - ClassNaming Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

! XMLHttpRequest 問題

この世は荒野なので関数とかクラスの区切りなんかに悩みます。適当にいじってください。

!! 略語と camel case

toXML か toXml かという問題

!!! 先頭以外は全部に小文字にしろ派

* toXml
* Graphics3d
* Md5
* Sha256
* UserId
* Uid
* GccRunner
* XmlHttpRequest

Md5 とか Graphics3d は抵抗がある人が多そう。 3d は glVertex3d では double の意味なのでややこしいという意見が。

!!! 略語は全部大文字派

* toXML
* Graphics3D
* MD5
* SHA256
* UserID
* UID
* GCCRunner
* XMLHTTPRequest

略語が終端に来ると読みやすいように思うけど、まだ他の語が続く場合は読みにくいと思われる。特に XMLHTTPRequest のように略語が続くとキツい。

!!! 3文字以下なら全部大文字派

MS の naming rule だと聞きました。題にした XMLHttpRequest なんかがそのわかりやすい例らしい。

この規則に従うと UID だけど Euid となるのだけど…

!! 数字で始まってる問題

前述の 3D や 3DES 。 TripleDES とか書くわけですかね。

!! 数字が連続している問題

x86-64

!! output file name 問題

snake_case でも起こる問題。

* outputFilename
* outputFileName
* outputfileName

user name, host name, machine name についても考えてみてください…

!! それ略語だったの? 問題

* LASER は略語ですよ
* GIMP みたいな読みやすい略語

読みやすい略語は単語になってしまう。

!! 短い単語問題

2 bytes な単語でいちいち大きくすると少し見栄えが悪い。

* indexOf
* elementAt

はいい気もするけど、

* openFileOrDie

など、間に短い単語がはさまるとやや読みづらい、か。

* countUpTo

のように連続すると特にきもい

* XWindowView
* DirectXView

など一文字すらある

!! iPhone 問題

i386 emitter とかいうクラスの名前はどうしますかね…

あと TeX とかも

!! 慣用句問題

* logIn vs login
* logOut vs logout
* wasLoggedOut vs wasLoggedout
* test のクラスでは tearDown のことを考えて setUp を使うけど、一般的な関数だと setupMembers とかつける、というような人は多そう

!! atoi

* atoi
* ASCIIToInt
* AsciiToInt
* a2i
* ascii2int
* ASCII2Int
* Ascii2Int

略語問題や 2 bytes の単語かっこわるい問題もからむ

2 を To の代わりに使う人は、 DWARF2Builder とかについても考えてみて下さい。int64ToString についてもです。

!! Mach-O binary

MachOBinary とかキモいが、 MachoBinary はもっとひどい。まっちょばいなりー

!! 言語名

* C から D に変換するとすると CToD ? http://twitter.com/kinaba/status/16912649623183360
* C++ はどう書くか。 CPlusPlus, Cplusplus, CXX, Cxx ...

!! xor

* XOR
* Xor
* XOR
* ExclusiveOr

X が単語なんだよという
[[gas|http://gas.mypressonline.com]]