- 1 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 23:36:31.74 ID:uXFKqVsm.net]
- クラス名、変数名のつけ方に悩んだら書き込むスレです。
命名規則や設計の善し悪しについて議論するのは基本的に禁止。 前スレ クラス名・変数名に迷ったら書き込むスレ。Part25 peace.2ch.net/test/read.cgi/tech/1416550677/
- 966 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 14:30:32.78 ID:tywbnmbh.net]
- >>956
別に全部英語でやれと言われたらやるよ 社会の公用語は日本語だけど、海外支店とのTV会議なんか全部英語だし、コメントも英語で書くのが義務になってる
- 967 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 14:30:54.72 ID:tywbnmbh.net]
- ×社会
○社内 すまんね
- 968 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 14:37:41.23 ID:/rOsWLKQ.net]
- >>949
今回は>>920からの流れで書いたので「開始位置」としたが、 >>811に対する解なら>>828にする 彼は名前が長いことを気にしていたが、その名前が本質を表しているなら名前の長さは些細な問題だ むしろ、省略することで正確に意味が伝わらなくなってしまう可能性を気にすべきだろう > getだのsetだの開始位置だの、なんにでも使いまわせる単語を使ってる時点でセンスがなければ 基本的にはあなたに賛成 ただし、何らかのオブジェクトのプロパティであったり、関数内の変数で「何の」開始位置かが自明であるなら使っても良いと思う function touchstart (startPosition) {} ここで「startPositionはtouchStartPositionにすべき」と指摘する人がいるなら「文脈を読め」と反論したい
- 969 名前:デフォルトの名無しさん [2016/10/15(土) 14:47:59.03 ID:18UqYEY8.net]
- >>959
俺だったらstartPositionではなくpositionStartにするけどな。 わかるひとにはわかる。
- 970 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 15:07:37.94 ID:LAQ6gYyi.net]
- positionグループのStart, End, XX
startグループのPosition, XX て感じか
- 971 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 15:12:48.62 ID:F0NY5SKq.net]
- >>945
> ちょっと前にアホな騒動の引き金となった>>830とかも、 まだ粘着してるのかよ w
- 972 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 15:38:53.29 ID:kE5g0VwL.net]
- >>953
日本語通じてねえwww
- 973 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 15:45:51.86 ID:pMgLYSqA.net]
- メンバーに外人がいるかどうかは問題じゃないんだよ
開発対象のドメインが日本語ならそれに合わせて仕様書もコードもマニュアルも会話も日本語で合わせるべきなんだ ドメインエキスパートがなんらかのエンティティを指してこれは『注文』ですと言っているならそれはもう『注文』であって『Order』ではない 要件でも仕様書でもコードでも話し言葉でも『注文』で合わせないとダメ チームメンバーが日本人だろうが外人だろうが関係なく『注文』なんだ エンジニアが『注文』という言葉を使えばドメインエキスパートは自分たちに馴染みのあるその言葉がなんなのか正しく理解できる この『注文』という言葉は普段我々が使っているあの『注文』のことであって昼に食べたうどんの注文の話ではないと確信を持って会話できる しかし『Order』という単語を使うとドメインエキスパートは困惑する もしかしてこれは『注文』の意味で言ってるのか出前のオーダーでも出そうかという話なのかはたまたなにかの順序の話をしているのかわからなくなってしまう
- 974 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 15:51:36.28 ID:+WAwTfPB.net]
- 何か違和感あるなあって思ったらstart/endだわ
それでも普通に通じると思うけど start/stop、start/finish、beginning(begin)/endが一般的な startはそのメソッドを持つオブジェクトが動き出すイメージだから、その対はstop ポジションを表すなら、beginning/endかfirst/lastの方が良いんじゃない?
- 975 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 16:43:52.98 ID:dv2zgIgU.net]
- >>964
実は俺は日常会話に関しては、必ずしも正しく
- 976 名前:なくていいと思ってるのだ。
俺が言いたいのは、このスレとかで自信満々で回答されてる単語の7割以上は、違和感満載の間違いであると言うこと。 そして、単語や識別子を選ぶための基準や理屈が、英語圏では絶対にあり得ないほどズレているのに、その指摘すら一度も入らないレベルであると言うこと。 [] - [ここ壊れてます]
- 977 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 17:18:07.52 ID:oqo3VYkn.net]
- >俺が言いたいのは、このスレとかで自信満々で回答されてる単語の7割以上は、違和感満載の間違いであると言うこと
それは本当のネイティブがいないとここで修正は無理だろ。 だから、それ以上は諦めるしかねぇな。
- 978 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 17:22:39.96 ID:xaDriJeZ.net]
- >>965
>>921 これで三度目だ。
- 979 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 17:25:47.09 ID:xaDriJeZ.net]
- >>959
これもとっくに質問者に回答済だけど、そんな馬鹿みたいな冗長な名前を 付けなきゃならない場面に遭遇したら、それを適当な名前空間で包めないかまず考えるべき>>814
- 980 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 17:40:29.08 ID:pMgLYSqA.net]
- >>966
ネイティヴが違和感を感じるかどうかも実は全く問題ではない ドメインエキスパートが仮に実際の業務でStartPositionという言葉を使っているならネイティヴがなんと言おうがそれはStartPositionが正しい ドメインエキスパートが使ってもいない言葉を勝手に作り出したり英訳したり似たような他の英語を使ったりネイティヴの感覚で訂正したりするとそれは間違いになる
- 981 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 17:58:59.77 ID:xaDriJeZ.net]
- 日本語識別子がどうとか下らない話もいい加減にしようよ。
日本語識別子が一般に避けられる傾向にあるのは、別にかっこつけてる(笑) みたいな中二病な理由じゃなくて、今時のIDEの入力補完と相性が悪いからでしょ。 インテリセンスがローマ字に対応したら日本語識別子もありかもしれんよ 俺は中二だからたぶん使わないと思うけどw
- 982 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 18:15:27.91 ID:gUMRUJva.net]
- >>970
それはセンス0だなー だったらここに書き込むときは君のドメインエキスパートとやらを連れてくれば? そのドメインエキスパートもセンスがあるのかどうか分からないけど
- 983 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 18:28:16.84 ID:4zjUlTyK.net]
- >>971
平仮名やカタカナのみなら、相性は悪くないんだろうけどねー。 日本語である以上やはり漢字を使いたいところ。 たとえば変数名が「斉藤」だとして、 異字体(斎藤など)を区別、あるいは逆に同一視できるか? 「さ」や「s」を入力した時点で変数名補完ができるか? みたいな
- 984 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 18:31:37.52 ID:8FrzlPpG.net]
- >>972
2chに顧客連れてこいとか正気か? それとドメインエキスパートに命名センスは必要ないよ 適切な名前はすでに彼らの業務の中に存在する すでにあるものに間違った名前をつける行為が害悪なんだ
- 985 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 18:37:01.51 ID:/rOsWLKQ.net]
- >>969
名前空間で包むことは否定しないが、それは本人の設計思想次第ではないかね あなたは冗長というが、必要ならそれぐらいの名前は許されると思うし、きわめて主観的な問題 あれが冗長なら例えば、getElementsByTagNameも長すぎて許せないとあなたは思うのだろうね
- 986 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 18:53:39.17 ID:/rOsWLKQ.net]
- 原則として名前は言語仕様に追従すべきものであると考えている
例えば、「ひまわり」なら日本語で命名すべきだが、「JavaScript」なら英語で命名すべきだ オブジェクト指向をとる場合もビルトインオブジェクトやネイティブオブジェクトに近い名前にする事が望ましい 英語を基本とするプログラミング言語において、自分で書いて自分で保守すること「だけ」を考えるなら日本語で命名しても良い それは他の人がソースコードを参考にする事を配慮しないことを意味するからだ ソースコードをオーブンな場で共有するものと考えるなら出来るだけ公用語の英語を選択した方がよい そうすれば、英語を読める人からフィードバックを得られるし、自分からも他の人にフィードバックする事が出来る それと英語を基本とするプログラミング言語は仕様書やリファレンスが英語しかないことが多々あるので英語を読めないのはそれだけでハンデになる 命名するときに仕様書で似たインターフェースを探して参考にすることも出来ないだろう
- 987 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 18:59:36.73 ID:TRjDGE+n.net]
- 正直、プログラミング中に漢字変換なんかしたくねえよ
変数もコメントも全部英語で良いわ
- 988 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 19:06:39.06 ID:JenZQSiG.net]
- そろそろ次スレよろしく。
そして、「命名規則や設計の善し悪しについて議論するのは基本的に禁止。 」
- 989 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 19:23:38.02 ID:+WAwTfPB.net]
- >>977
同意 英数字と見た目的に同等な文字が存在する以上日本語入力で書く気になれん 昔、誰かが書いたコードで「;」の代わりに「;」が入っていたことがあって イラッとしたな
- 990 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 19:26:36.71 ID:mVOIWD6D.net]
- 英訳したい病の人は一般的な意味での単語とドメインにおける特定のエンティティを指し示す単語の区別がついていないんだろうね
ソフトバンクのお父さん犬を表現するクラスはclass お父さん犬;以外にありえないんだよclass FatherDog;ではもはや別のエンティティになってしまう おい、FatherDogが日本語を喋ってるってインシデントが発生したぞ!犬が喋るわけないだろ、担当者は誰だ!と怒られてしまうよ これがドメインの知識を不足なく完全に反映したお父さん犬であれば、お父さん犬が喋ってるってよ!ん?そりゃそうだろう、と円滑に物事が進む 同じように注文という単語一つとっても、開発対象のドメインにおける注文と一般的な意味での注文は同じではない この注文はそのドメイン固有の特徴を持ったエンティティであり一般的な注文と混同してはならない したがって一般的な意味での英訳であるOrderに置き換えてはいけない もちろんそのドメインにおいて正式に英訳がOrderであると決まっているなら英訳してよいし
- 991 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 19:29:23.80 ID:ttNAxKpQ.net]
- そういや、タブの中にしれっと全角スペースが紛れ込んでたことあったな
- 992 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 20:27:01.17 ID:WTQiAfdN.net]
- 業務用語は素直に日本語使っておけ
- 993 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 21:26:12.05 ID:4zjUlTyK.net]
- そういや固有名詞とかどうしてる?
関数名に入れる? それとも他の語を探す? 「ユーザが斉藤さんなら(プロセスを)殺す」関数とか 「我が社が開発したサイトウシステムを停止させる」関数とか、そういう類
- 994 名前:デフォルトの名無しさん [2016/10/16(日) 00:09:21.25 ID:DXmiytAw.net]
- >>966
日本人にわかる英語でないと意味がない。
- 995 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 00:16:25.94 ID:v/GEKxcD.net]
- >>984
辞書見ないとわからんなーって単語は結構迷うよね
- 996 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 00:18:54.60 ID:MAx8XuB7.net]
- set / getがダメという意見にはまったく賛成できない。
言語も熟練度も越えたアクセサの命名規則だろ。 素人でも理解できる。
- 997 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 00:27:29.86 ID:1LSEBjMH.net]
- >>983
普通は汎用的にプロセスを殺す関数作って、引数として固有名詞渡すようにする。 でも便利関数として固有名詞を含んだ関数を作ることも十分にありうる。 要は臨機応変。
- 998 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 02:51:13.88 ID:MMtmJt+k.net]
- >>974
頭悪いだろ
- 999 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 03:17:37.12 ID:NOg6ZxxU.net]
- >>986
その規則がだめなんだろ。素人が誰かも、理解させる理由もわからんし。 しかも素人がその命名規則を知ってるのか? ではその素人とやらに、冷蔵庫で食材を冷やすことを「set」する。食材を切る準備を(まな板の上に)setする。フライパンで炒める事をsetすると主張してみるがいい。 setとgetは論点がアクセサの説明になった時に使うのは適切だが、 皿に魚を「盛り付ける」行為を、アクセサー用語に置き換えてsetするなんて言わない。 料理をするときは料理用語。 日本語でもこれは「接続詞」からの「動詞」だから〜とか馬鹿な言い回しをするやつはいない。 ただし、英語を出来ない日本人は頻繁にやるけど。 ズレてんだよ。頭の中
- 1000 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 03:50:19.66 ID:8D32iC3X.net]
- 正直、企画連中が使う言葉なんてコロコロ変わるからそれに合わせて命名なんかやってらんない
初期段階では「割引券」機能と言ってたくせに、実装が一通り終わってから「会議で正式名称は『RaCoupon』に決まりました!」なんてさ
- 1001 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:11:46.38 ID:bdh7il0f.net]
- >>981
Unicodeだと全角空白も空白扱いだな、一応
- 1002 名前:デフォルトの名無しさん mailto:age [2016/10/16(日) 07:35:04.08 ID:MAx8XuB7.net]
- >>989
おまえが大ズレじゃねえかw 何言ってんだおまえ? >フライパンで炒める事をsetする
- 1003 名前:デフォルトの名無しさん mailto:age [2016/10/16(日) 07:37:30.11 ID:MAx8XuB7.net]
- >>989
ここでこの間大騒ぎしてたのはおまえかw
- 1004 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:38:53.91 ID:NOg6ZxxU.net]
- フライパンの上にsetするって意味だが、その程度も分からないし、
そもそも論点がそこにあることすら理解できてない。
- 1005 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:48:35.01 ID:7quvU6KA.net]
- 「盛り付ける」行為にgetter, setterを割り当てようとする目的が全く分からん
何をgetして何をsetするつもりなんだ? 説明が滅茶苦茶だから仮想コードを書いて説明した方がマシ
- 1006 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:50:51.33 ID:9M/UHFkb.net]
- 二回連続レスとかディスプレイの前で最高に興奮してそうだな
- 1007 名前:デフォルトの名無しさん mailto:age [2016/10/16(日) 07:55:15.14 ID:MAx8XuB7.net]
- >>996
朝見た瞬間驚いたんだよ。
- 1008 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:57:56.53 ID:NOg6ZxxU.net]
- >>995
その「何を」を問わないで、アクセサだからsetと言うのがいるんだよ。 盛り付けがアクセサで定義された場合、それはsetであるべきなんだとよ。 俺のはそれに対する反論
- 1009 名前:デフォルトの名無しさん mailto:age [2016/10/16(日) 08:06:24.50 ID:MAx8XuB7.net]
- >>998
おいおいそれアクセサじゃねえだろw アホらしいからやめるぞ。
- 1010 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 08:08:22.68 ID:NOg6ZxxU.net]
- 最初からそうしてくれると助かったんだが。
スイカの味のあ話をしてる時に一人で勝手にスイカを売ってる店の話をして、 あほらしいといって帰っていく。かなり迷惑なタイプ
- 1011 名前:過去ログ ★ [[過去ログ]]
- ■ このスレッドは過去ログ倉庫に格納されています
|

|