名前にこだわろう!
@IT:ITエンジニアにも必要な国語力(第1回 名前にとことんこだわるべし)を読んでみましょう。耳が痛い人・・・たくさんいるのでは??
# そう、TechEdのINETAJイベントで笑ってしまった人の中にも・・・
メソッド名、クラス名、変数名・・・アプリケーションやライブラリの名前。
ものを作っていると、どうしても色んなものの名付け親になると思います。
そこで、「あー、これでいいや。」とかいいかげんな直感で名前をつけると、とんでもないことになります。
でもね、でも・・・1つ1つの名前を考えてしまうときりがなくなってしまうんですよ。。。(涙)
(いや、それがここで指摘されてる「国語力のなさ」なんだろうけど。)
名前考えるのって、楽しいんですけどね。
「こういうクラス追加しようか・・・このときに、こうなって・・・これで・・・」
「名前、何にしましょうか?」
「んー・・・これをこれする人だからなぁ・・・」
「じゃあ、○○○??」
「え?××って○○でいいの?英語で。」
「(辞書で調べてみる)・・・んー・・・ちょっと微妙かも・・・」
こんなやりとりが長いこと続くのです。完全に設計フェーズならいいんですけど、開発してるときにほしくなったクラスとかが出てきちゃうと・・・時間がもったいないというか、なんというか・・・
そもそも、設計がカンペキならそんなこと無いのかもしれませんが。orz
投稿日時 : 2005年8月10日 11:18
Tweet

コメントを追加
# re: 名前にこだわろう! 2005年8月10日 13:00 福王寺聡明(FP!)
こんなのをプログラミング版で作ったら売れるかなぁ・・・。↓
http://www.amazon.co.jp/exec/obidos/ASIN/4262125343/qid=1123646326/sr=1-1/ref=sr_1_8_1/249-6808456-4362709
# re: 名前にこだわろう! 2005年8月10日 13:04 中博俊
変にANKにこだわるからでしょ?日本語でいいじゃん。
# re: 名前にこだわろう! 2005年8月10日 13:05 みゃみゅ玉子
ありそうですけど・・・無いのかなぁ・・・?あったら売れるかもしれません。(笑)
「こんな名づけかたはダメだ!」
みたいなのでも可・・・?
# re: 名前にこだわろう! 2005年8月10日 14:51 菊池
>そもそも、設計がカンペキならそんなこと無いのかもしれませんが。orz設計が名前を決めるかどうかは設計と実装の境界線としてどちらにもできますが…
>「んー・・・これをこれする人だからなぁ・・・」
これは微妙な考え方です、FileをAccessするからFileAccesなんてメソッドが入ってる伝票処理クラスを見たことがありますがカプセル性を完全に破壊しています。
クラスを使う側は伝票を処理したいのであってファイルをアクセスしたいとは思っていないのですのでFileAccessを呼ぶ理由は有りません。
クラスが表現しているhogeに対する論理的な意味として、hageするのであれば Hage() でしょう。
メソッドの内部動作を元に名前をつけてはいけません。
# re: 名前にこだわろう! 2005年8月10日 17:00 なちゃ
SomeMethod(string a)SomeMethod(string a, string b)
SomeMethod1(string c)
SomeMethod2(string d)
SomeMethod(string c, string d, string e)
なんて流れの命名を見たときにはどうしてくれようと思いましたわ!!
# re: 名前にこだわろう! 2005年8月10日 17:04 なちゃ
> メソッドの内部動作を元に名前をつけてはいけません。これやる人が多いんですよね…
論理的な、抽象的なレベルで名前を付けられない人が多い。
というか、どこから内部動作でどこから外部インターフェイスと見るかという切り分けが出来ないというか、そもそもそんな切り分けなんてないというか。
まあ、現実を見ると、ちゃんとやってる内容の名前になっているだけで感動してしまうようなものが多いんですが…orz
# re: 名前にこだわろう! 2005年8月11日 11:17 みゃみゅ玉子
>中さんそうなんですよね。
日本語にすれば・・・
・・・・その日本語すら・・・orz
>菊池さん
使う側から見て、「結局、何をしてくれる人なの?」ということで良いんですよね?
# FileAccessは、わかりづらすぎますね・・・(涙)
# Accessで終わるのかと思ったら、伝票処理もしてるなんて誰がわかるんだろう・・・???
たまーに、作る側から見てしまって、失敗することがあります。。。
「これして、これして、これするから・・・ああ、これでいいか」
・・・後から見たら「なんで、この名前でこれまでやってるんだよ!!」と自分で突っ込んでいたり。orz
気をつけないと・・・
>なちゃさん
>SomeMethod(string a)
>SomeMethod(string a, string b)
>SomeMethod1(string c)
>SomeMethod2(string d)
>SomeMethod(string c, string d, string e)
すごい!(笑)
これで人に説明できるのだろうか・・・?
前にコメントで
「処理内容:いろいろやる」
っていうのを見たことありますが、それに近いものがありますね。
# re: 名前にこだわろう! 2005年8月11日 13:25 なちゃ
あ、ちょいと語弊があったかも。SomeMethod部分は、例えばGetDataだったりするわけです。
※それでも十分ひどいんですが。
で、GetDataするメソッドが増えていくときに、上のような流れで新しい名前が付いていくわけです。
# re: 名前にこだわろう! 2005年8月16日 22:00 じゃんぬ
GetData も、Class 名で "何" が示されているので、Value クラスの場合ならあんまり問題にはならない希ガス。
それ以外何も入ってないわけですし。
# re: 名前にこだわろう! 2006年9月29日 2:21 Array
Array# re: 名前にこだわろう! 2006年9月29日 4:43 Array
Array