[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 09/03 03:09 / Filesize : 261 KB / Number-of Response : 1012
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

クラス名・変数名に迷ったら書き込むスレ。Part26



1 名前:デフォルトの名無しさん mailto:sage [2015/12/20(日) 23:36:31.74 ID:uXFKqVsm.net]
クラス名、変数名のつけ方に悩んだら書き込むスレです。

命名規則や設計の善し悪しについて議論するのは基本的に禁止。

前スレ
クラス名・変数名に迷ったら書き込むスレ。Part25
peace.2ch.net/test/read.cgi/tech/1416550677/

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 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<261KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef