16/10/16 08:02:17.55 NOg6ZxxU.net
スレたてて気づいたけど、
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。
こんなルールがあったとはな
3:デフォルトの名無しさん
16/10/16 08:31:47.00 MMtmJt+k.net
別に返信はいらんけど。
>set / getがダメという意見にはまったく賛成できない。
>言語も熟練度も越えたアクセサの命名規則だろ。
>素人でも理解できる。
↓
命名規則はいらない。皿に盛り付ける事でもなんでも全部setって言わん。盛り付けの名称は盛り付け。
しかも素人ってなに?誰?そしてその素人はアクセサの命名規則に詳しいの?
↓
この前騒いでたのはお前か?など、論点に関係ない事をまくし立てたのち、
「その例はアクセサじゃない。アホらしい帰る」
と言う流れ。
全く関係ないが、善意でわざわざ君の質問にレスしてやると、この前の件だかに関して俺は一つもレスしてません。
やけに拘ってるところを見ると、あのくだらない喧嘩の当事者の一人かな?
確かあの喧嘩も日本語や論理のやりとりがおかしかったよな。
4:デフォルトの名無しさん
16/10/16 11:34:54.41 m7EkH73x.net
>>990
5:a> >正直、企画連中が使う言葉なんてコロコロ変わるからそれに合わせて命名なんかやってらんない > >初期段階では「割引券」機能と言ってたくせに、実装が一通り終わってから「会議で正式名称は『RaCoupon』に決まりました!」なんてさ モデルは常に進化する 割引券であるうちはクラス名も割引券が正しい モデルが変化してRaCouponになったらコードに反映させてクラス名をRaCouponに変えるのが正しい 最初にクラス名をDiscountTicketに翻訳してモデルが変化してもそのままDiscountTicketを使い続けるのがモデルを無視した最悪のパターン
6:デフォルトの名無しさん
16/10/16 11:58:17.40 8D32iC3X.net
>>4
名称(仮)
↓
正式名part1
↓ 部長が「語感が悪いから変えろ」ってさ
正式名part2
↓ごめん、商標引っかかってたわ…part1に戻すわ
正式名part1
↓やっぱ部長が嫌がって1と2の折衷案になった
正式名part3
ってなことが昔あったな
文系の人達なんて、そこまで体型立てて考えた上で言葉を使わないから合わせてたら仕事にならないぞ
7:デフォルトの名無しさん
16/10/16 12:16:20.63 m7EkH73x.net
>>5
それでもだよ
名前がコロコロ変わるのには同情するが名前とエンティティの関係を崩すよりはだいぶマシだ
8:デフォルトの名無しさん
16/10/16 12:19:51.33 aZSoSj+a.net
>>5
毎回きちんと連絡くれるならまだいい方
マスターアップ直前になって「あ、その名前変わったんですよー」なんてケースもある
9:デフォルトの名無しさん
16/10/16 12:22:31.05 8D32iC3X.net
>>6
その名前関係自体、企画の中で崩れてるからどうしようもねえよ
酷いときは人によって言ってることが違う
ある企画の人は割引券、ある企画の人はクーポンって呼んでる
10:デフォルトの名無しさん
16/10/16 12:30:02.78 m7EkH73x.net
>>7-8
それはドメインエキスパートとのコミュニケーションが不足してるだけ
11:デフォルトの名無しさん
16/10/16 12:32:00.48 8D32iC3X.net
>>9
コミュ以前に文系連中はそこまでしっかり考えてないんだって
あいつら、『ニュアンスがなんとなく伝われば万事オッケー』の考え方で会話するから統一しようなんて試み自体が馬鹿げてる
12:デフォルトの名無しさん
16/10/16 12:41:43.78 61G64M2R.net
>>6
名前変更如きで追加工数は認められないから、名前が変わるたびにサービス残業で直すことになるけど大丈夫か
ってか仕事したことある?
13:デフォルトの名無しさん
16/10/16 12:47:00.16 MMtmJt+k.net
商品名と開発名は別物だろうに
14:デフォルトの名無しさん
16/10/16 12:50:15.44 m7EkH73x.net
>>10
だからコミュニケーションが足りてないんだって
モデリングはステークホルダーが一体となって行うものだ
ドメインエキスパートがモデルにない言葉を使ったらこちらからその言葉の意味はなんですか?と問いかけなきゃならない
ミーティングでもレビューでも喫煙所でも酒の場でもいい
割引券でモデリングしているのにドメインエキスパートがクーポンという言葉を使ったならクーポンとはなんですか?とその場で問いかけてクーポンをモデリングしなければならない
もしかしたらドメインエキスパートの間では割引券とクーポンの間には微妙な違いがあるかもしれないしそうならばモデルにもその違いを反映させなければならない
結果として割引券とクーポンが同じものだったとしてもそれがハッキリするだけでその試みには価値がある
あなたたちと私たちが共同で取り組んでいるこのドメインに置いては割引券とクーポンは同じエンティティを指し示しているようです
私たちはすでに割引券という名前でモデルを作っているのであなたたちも割引券で合わせてもらえませんかと交渉することができる
交渉が決裂しても彼らが使っているクーポンという言葉は割引券のエイリアスだから私たちは割引券で合わせよう彼らがクーポンといったら割引券のことと考えていいよと次善策を取ることができる(ここは悲しいが力関係があるから仕方ない)
いうまでもないが彼らとのコミュニケーションにDiscountTicketという新しいエイリアスを持ち出すのは最悪だ
私たちが割引券とクーポンの違いに悩んだように彼らもDiscountTicketという言葉の意味に惑わされることになってしまう
15:デフォルトの名無しさん
16/10/16 12:52:45.04 8D32iC3X.net
>>13
その理屈ならクーポンのエイリアスがDiscountTicketってことで解決だな
長文の割に実にバカバカしい
16:デフォルトの名無しさん
16/10/16 12:53:09.73 m7EkH73x.net
>>11
モデルがしっかりしていないからそうなる
モデルがしっかりしていれば名前の変更は容易い
名前の変更だけで残業が必要なら自分の仕事を見直した方がいい
17:デフォルトの名無しさん
16/10/16 12:54:00.30 RhRg/hma.net
バカにバカって言っても多分伝わらないよw
18:デフォルトの名無しさん
16/10/16 12:56:03.16 RSdG5rFg.net
↓なぜならば!
19:デフォルトの名無しさん
16/10/16 12:57:41.50 61G64M2R.net
>>15
ソースが一文字でも変更されたら、その時点でその実装機能のステートは「動作確認済み」から「未検証」に変更されるのよ
つまり品管に回して動作確認を再度依頼しないといけない
もう一回聞くけど、ほんとに仕事したことある?
趣味でプログラミングやったことしかない学生の妄言にしか見えないんだけど
20:デフォルトの名無しさん
16/10/16 13:00:42.08 m7EkH73x.net
>>14
混乱を加速させるだけのエイリアスを増やすのは愚かだ
ドメインエキスパートはエンジニアが作ったエイリアスなんて知らない
ミーティングなどの場でエンジニアだけに通じるエイリアスを使えばドメインエキスパートが困惑しコミュニケーション不全が発生する
そうなるとこのエイリアスはドメインエキスパートも知っているとかこのエイリアスはエンジニアしか知らないとか○○さんには通じるだろうとかつまらないことに労力をかけて会話を進めなければならない
割引券とクーポンとDiscountTicketだけでも相当な混乱が(最初のうちは気が付かないほど静かに)発生する
同じことを繰り返すうちにプロジェクトは取り返しのつかないほどに混乱することになる
21:デフォルトの名無しさん
16/10/16 13:05:26.24 8D32iC3X.net
>>19
正式名称がコロコロ変わる時点で、元々エイリアスなんてもんは山ほどあるのよ
名前が違う程度で混乱を起こす人はそもそも仕事できない
22:デフォルトの名無しさん
16/10/16 13:06:09.84 m7EkH73x.net
>>18
それが品管の仕事だよ
必要な時に必要なことをする
23:デフォルトの名無しさん
16/10/16 13:10:06.38 61G64M2R.net
>>21
「仕様が変わったわけでもないのになんで呼び名が変わったぐらいで再検証??」
と理由書の提出を求められるだけ
もう一回聞くけど、仕事したことある?
YESかNOで済む質問を何故答えられないの?
24:デフォルトの名無しさん
16/10/16 13:13:59.92 m7EkH73x.net
>>20
エイリアスが複数あっても良い条件を満たすならそれでもいいんだろうな
エイリアスと認識していた名前が本当にただのエイリアスであると確証があるのか確かめたのか?
ドメインエキスパートが日常的に使っているエイリアスとエンジニアが勝手に作り出したエイリアスを皆が区別できているか?
エイリアスを削減する努力をした上でどうしても解消できなかったか?
すでに沢山あるエイリアスにあえてエイリアスを追加する皆が納得する理由と合意はあるか?
25:デフォルトの名無しさん
16/10/16 13:17:49.45 m7EkH73x.net
>>22
だから仕様が変わったんだよ
割引券からRaCouponに変更になりました
仕事は当然してるよ
そこにこだわる君は少し滑稽だけど
26:デフォルトの名無しさん
16/10/16 13:20:16.40 8D32iC3X.net
>>23
むしろ、企画内でエイリアスが溢れてる状況下で開発が合わせなきゃいけない理由がない
最初から言ってるが、開発セクション内で統一が取れてりゃそれで良いのよ
毎日のように変わる企画の言うことなんかいちいち真に受けてたら仕事が全く進まない
27:デフォルトの名無しさん
16/10/16 13:22:12.22 61G64M2R.net
>>24
呼び名が変わった程度で仕様変更は認められないだろうね
品管回すのだってタダじゃないんだから、一笑に付されて泣く泣くコミットを取り消すことになるわ
28:デフォルトの名無しさん
16/10/16 13:25:47.36 m7EkH73x.net
>>25
その結果が企画の意図とかけ離れた製品に繋がるんだけどね
まあそれでもいいならいいんだろう
別に皆が良い仕事をする必要もない
別に熱意もないしアルバイトのように適当に作業を潰して給料をもらえればそれでいいよという生き方を他人が頭ごなしに否定はできないからね
29:デフォルトの名無しさん
16/10/16 13:25:55.02 Uhg/CTUB.net
何の話をしてるのかよくわからんけどその辺にしといたら?
俺は命名の話じゃなくても関連する話題であれば容認すべきって立場だけど、
その俺にしてもあんまり実のある話をしているように思えんなあ。
しかし、俺がその手の話をしてると執拗に>>1のテンプレの
>命名規則や設計の善し悪しについて議論するのは基本的に禁止。
で絡んでくる奴が今日は静かなところを見ると、この下らない論争の
当事者になってるんだろうなきっとw
30:デフォルトの名無しさん
16/10/16 13:34:27.11 8D32iC3X.net
>>27
クラスの命名規則が仕様書の日本語と違う程度で仕様とかけ離れたものを作ってしまうなら、それこそアルバイト以下の能力だよ
アンタのことさ
そもそも今の世に溢れてる優れた製品は99.9%以上、そうやって作られたもんだろ
どこの開発も日本語でクラス名や変数を名付けてなんかいない
実にバカバカしい
31:デフォルトの名無しさん
16/10/16 13:45:58.90 RhRg/hma.net
しかし、バカの出す結論はいつもここに至る
「俺以外の全員がバカ、世界のみんながバカ」
32:デフォルトの名無しさん
16/10/16 13:54:20.73 MMtmJt+k.net
そもそもなんで企画名がコード名に影響を及ぼすのか分からんのだが
農林100号は後付の商品名がコシヒカリ。
開発名は商品名に関わらす農林100号。
33:デフォルトの名無しさん
16/10/16 14:06:31.49 eEuHW07G.net
という事にしておいた方が楽って事なんだろうな
34:デフォルトの名無しさん
16/10/16 14:10:49.43 MMtmJt+k.net
すべてがおわたw
35:デフォルトの名無しさん
16/10/16 14:11:01.21 MMtmJt+k.net
ゴバク
36:デフォルトの名無しさん
16/10/16 14:11:36.69 2jDknijp.net
>>31
企画名と統一してソース内もunicodeで
class コシヒカリ
と名付けるべきだと喚くキチガイが昨日から暴れてる
37:デフォルトの名無しさん
16/10/16 14:20:47.85 MMtmJt+k.net
米 = new 農林100号;
米->商品名設定("コシヒカリ"); //setアクセサ
普通、識別子は終始変わらないものにする。
プログラム始めたばかりなのか分からないが、
class コシヒカリ;
は駄目な理由を説明するのも面倒なほど駄目。
38:デフォルトの名無しさん
16/10/16 14:34:28.15 m7EkH73x.net
>>29
作れる程度で満足するならこだわらなくていいよ
その積み重ねが今の日本のIT資産になっているわけだがね
39:デフォルトの名無しさん
16/10/16 14:36:05.60 2jDknijp.net
>>37
バイト未満の無能くんが日本を語る図
40:デフォルトの名無しさん
16/10/16 14:39:32.79 m7EkH73x.net
>>35
正確にはモデルと統一しろだな
class コシヒカリはコシヒカリがモデル上クラスとして適切なら正しい名前だ
あるインスタンスの商品名がコシヒカリというモデルなら適切なクラス名ではない
41:デフォルトの名無しさん
16/10/16 14:41:09.62 MMtmJt+k.net
誰か早く彼に突っ込んでやってくれ
42:デフォルトの名無しさん
16/10/16 14:45:00.79 pbM/LnBL.net
>>40
あれほどアホだと突っ込む気も起きんよ…
プログラミング覚えて2~3年程度の意識高い系高校生ぐらいだろ、これ
実務とかけ離れすぎてる
43:デフォルトの名無しさん
16/10/16 14:46:31.68 m7EkH73x.net
>>38
基本的に話題と関係ない罵倒は反論できませんでした参りましたと宣言しているようなものだよ
以後はこの手の敗北宣言にはレスしません
44:デフォルトの名無しさん
16/10/16 14:51:04.97 8D32iC3X.net
>>37
日本の有象無象の優秀な製品を作る開発企業よりも俺の考え方が正しいって?
自惚れも甚だしいわ
具体的に、統一することで仕様との乖離を回避できた事例を教えてくれ
言えないならアンタの妄想でしかない
45:デフォルトの名無しさん
16/10/16 14:51:58.91 MMtmJt+k.net
いいですか。
企画で変更している以上それは商品名であるし、
コードの名称が事後的に変動する仕組みならば、事前の段階で不適切なんですよ。
誰もクラスの事を名指しで言ってるわけではないのです。
46:デフォルトの名無しさん
16/10/16 14:54:27.29 Nb/GIoSo.net
開発中にコード内のクラス名を変更する奴がいたら大混乱するわ
自分一人で開発するならまだしも、プログラマが複数人いる事を忘れてないかね
ガンジーも助走つけてぶん殴るレベル
47:デフォルトの名無しさん
16/10/16 15:06:04.54 Uhg/CTUB.net
何の話をしてるのかよくわからんけど、
(1) コードの識別子は固有名詞やジャーゴンを逐語的にそのまま使うべきか
(2) そもそもコードの識別子に固有名詞やジャゴンを使う必要があるのか
争ってる双方がこの2つを混同してる気がするね。
(2)はケースバイケース。
(1)は基本的にはYesだと思う。そうでないと意思疎通の齟齬の原因になったり、
数か月後数年後コードを見た時に不要な混乱の原因になる。
ただ、逐語的と言っても無理に日本語を使わずともローマ字で十分だとは思うが。
48:デフォルトの名無しさん
16/10/16 15:07:04.14 6wCeCqLa.net
ローマ字はちょっと…
49:デフォルトの名無しさん
16/10/16 15:08:49.88 MMtmJt+k.net
ローマ字はあり得ない
50:デフォルトの名無しさん
16/10/16 15:09:05.65 X/qyWoKu.net
テンプレも読めないゴミは2ちゃんやんなボケ
51:デフォルトの名無しさん
16/10/16 15:09:24.73 MT9uvcEn.net
クラス名が変わることがないと言っている人はプログラム経験ないなりすましだろうね
割引券からRaCouponほどのあからさまな例はともかく
開発が進むとモデルへの理解が深まるのが当たり前(深まらない場合はチーム全員が何も考えてないバイト状態なのでそれはそれで危険)
理解が深まると既存のモデル(とそれに1:1で対応するコード)を理解した形に変更しなければならない
変更の結果としてクラスやメソッドは追加されたり削除されたり移動したりする
変更の前の名前が変更後の意味を適切に表現していない場合も多々ある
その時に適切な名前に変えなければ待っているのは数週間後の破滅だ
52:デフォルトの名無しさん
16/10/16 15:12:56.10 MMtmJt+k.net
>>50
一度もそんな話はしてないんだよね。どこのレス拾ってるのか知らんけど。
53:デフォルトの名無しさん
16/10/16 16:34:11.87 BII1s/gs.net
とりあえずあなたたち、スレのルールに則って進行してちょうだい。
ずいぶん前にそういうルールになってるのよ。
頭良さそうな人たちだから分かってくれるわよね?
54:デフォルトの名無しさん
16/10/16 23:20:59.96 DXmiytAw.net
命名に悩むようなら設計がおかしいと思った方がいい。
55:デフォルトの名無しさん
16/10/20 11:38:05.61 ki2Wlvx2.net
音楽のジャンル別のリストを作るとして
pop_music, rock_musicの形式かmusic_pop, music_rockかどっちがいいと思う?
56:デフォルトの名無しさん
16/10/20 11:42:41.14 kgXtyPBI.net
また同じようなものを持って来たなw
わざとやってるだろw
57:デフォルトの名無しさん
16/10/20 11:44:27.86 h1aMlyOK.net
>>54
同じ話を繰り返すのは痴呆症の始まり
58:デフォルトの名無しさん
16/10/20 11:49:01.85 2NY6CQjy.net
スレチ話が長すぎると、結局どうだったのかってのは正直覚えてないなw
59:デフォルトの名無しさん
16/10/20 11:57:02.09 aGg7Z+yH.net
>>54
音楽って前提なんだからmusicっていらなくね?
60:デフォルトの名無しさん
16/10/20 12:35:04.87 rW6H9Rm1.net
>>58
上位にmusicと名前があるならな。
61:デフォルトの名無しさん
16/10/20 13:01:07.77 qgmQJqVw.net
>>54
んなもんを変数名に持つのがキチガイの所業
URLリンク(www.shoutcast.com)
map genre = new map
genre["Alternative"] = new list
62:デフォルトの名無しさん
16/10/20 20:04:18.55 tJ82kCoW.net
ミュージック以外のロックやポップを扱ってない限りmusicはいらないんじゃね
63:デフォルトの名無しさん
16/10/20 20:29:36.19 8pLXigSN.net
>>61
言語やライブラリにもよるけど pop はなんか被りそうな予感
64:デフォルトの名無しさん
16/10/20 21:08:17.73 OxU8SSxE.net
音楽のジャンル別のリストはpop_music、ジャンル別の音楽のリストはmusic_popだろ普通
65:デフォルトの名無しさん
16/10/20 21:30:15.58 tJ82kCoW.net
そもそもpopはPopularMusicの略なんだけどね
66:デフォルトの名無しさん
16/10/20 21:41:07.38 94lpIvX8.net
>>62
popはコンピュータ用語だからな。
よくない名前なのは間違いない。
67:デフォルトの名無しさん
16/10/20 23:42:01.97 f0mtZhOK.net
music->pop();
……たしかに。
68:デフォルトの名無しさん
16/10/21 01:02:04.64 UfF9tz22.net
つまりPopularを使えと・・・・
69:デフォルトの名無しさん
16/10/21 10:33:32.23 iG+BtZtO.net
>>60
素人さんか?
70:デフォルトの名無しさん
16/10/21 12:53:55.86 RUPp7NOt.net
>>68
俺も >>54 みたいな内容をハードコーディングするかぁ?
って思うけど...
71:デフォルトの名無しさん
16/10/21 13:00:07.56 11+hJAWs.net
ジャンルを変数名で持つのは違うと思うわ
トランスとかノイズとか軍歌とかボカロとか、ジャンルが増えるたびにコード修正が要るじゃん
72:デフォルトの名無しさん
16/10/21 16:59:48.07 iG+BtZtO.net
>>69
ポップスだけのサブセットを取得するときにどう書く?
73:デフォルトの名無しさん
16/10/21 18:46:47.31 RUPp7NOt.net
>>71
サブセットとかの定義がよくわからんからハードコーディングした例を書いてくれ
74:デフォルトの名無しさん
16/10/21 19:14:17.49 RKLPrzgH.net
>>71
プログラム側からポップスを意識しなきゃいけない状況って何だよ
普通はユーザ側がなんらかの方法で指定する文字列の一つにすぎないだろ
75:デフォルトの名無しさん
16/10/21 19:35:43.81 SHIfRlxP.net
>>72
pops = musicRepository.GetPops();
>>73
お前のアプリではそうなんだろうな
でもビジネスではその限りではない
それゆえに素人なんだよ君は
76:デフォルトの名無しさん
16/10/21 19:40:29.32 Mt9nP5cS.net
素人ねぇw
77:デフォルトの名無しさん
16/10/21 19:46:39.64 RUPp7NOt.net
>>74
pops = musicRepository["Pops"];
78:デフォルトの名無しさん
16/10/21 20:06:10.59 8CqsAvi1.net
>>74
musicRepository.get('pops');
79:デフォルトの名無しさん
16/10/21 20:17:11.06 XVEXLa6Z.net
list.filter(m => m.genre == 'pops')
80:デフォルトの名無しさん
16/10/21 21:47:50.54 usEI0+le.net
下の上くらいのレベルの人が勘違いして見下してる感じ?
81:デフォルトの名無しさん
16/10/21 21:58:45.79 WlBi8OA2.net
>>76
popsて変数名はなんなんwアホかw
82:デフォルトの名無しさん
16/10/21 22:30:34.34 Hy0WD3wE.net
ローカル変数ならpopsでmusicとか省略しても全然問題ないと思うな。
musicよりジャンルに注目してるなら。
83:デフォルトの名無しさん
16/10/21 22:33:38.69 vcl3xMBv.net
ローカル変数なら処理内容が分かりさえすればそれこそpとかでも一向に構わん
だが外に出す変数は命名規則厳守 守らん奴は腹を斬れ
84:デフォルトの名無しさん
16/10/21 22:36:49.05 oqbYdZzo.net
>>80
>>74 に言えよ...
85:デフォルトの名無しさん
16/10/21 22:37:39.24 Cqu0mmbT.net
GetPopsくん伝説のはじまりである…
86:デフォルトの名無しさん
16/10/21 22:37:42.74 nbLPSbrD.net
>>74
それ、例えば「プルダウン式でジャンルを選択して該当する音楽一覧を表示する」処理とかどうする気?
ジャンルの数だけswitch文書いたりするなよ…
87:デフォルトの名無しさん
16/10/21 22:48:26.15 Cqu0mmbT.net
>>85
てめぇGetPopsくんディスってんのか?
musicRepository.GetAnison()とか
musicRepository.GetClassic()とか
musicRepository.GetJazz()とか
musicRepository.GetTechno()とか
こーいうのを当然駆使するんだぜ?
ラクショーで分岐だぜ?
88:デフォルトの名無しさん
16/10/21 23:10:05.72 vcl3xMBv.net
>>86
OH KUSO
89:デフォルトの名無しさん
16/10/21 23:27:49.63 SHIfRlxP.net
>>76-78
ジョークにしても笑えないぞ
まさかガチの素人さんだったか?
90:デフォルトの名無しさん
16/10/21 23:33:21.23 SHIfRlxP.net
>>85
それは
musicRepository.Find(m => m.Genre == selectedGenre)
だろ
入力が可変ならパラメタライズする
決め打ちで取得するなら無様なリテラル文字列など使わずパラメータを隠蔽する
基本中の基本だよ
91:デフォルトの名無しさん
16/10/21 23:35:59.71 SHIfRlxP.net
もしかしてハードコード版を使うってとこから脊髄反射で逆にパラメタライズ版は使わないって誤認しちゃったのかな?
頭固いねぇ
92:デフォルトの名無しさん
16/10/21 23:36:44.52 Cqu0mmbT.net
お前がpops言うからみんなリテラルで書いてくれてんだよw
どこに着目してんだお前一人だけ周回遅れやめろw
93:デフォルトの名無しさん
16/10/21 23:39:31.47 115GHNA9.net
線形探索とか一番ないわ
94:デフォルトの名無しさん
16/10/21 23:40:59.85 SHIfRlxP.net
>>92
線形探索ってどこから出てきたん?
95:デフォルトの名無しさん
16/10/21 23:42:03.35 gbFOKPXv.net
>>93
Findの中身を書いてみ
96:デフォルトの名無しさん
16/10/21 23:46:12.52 SHIfRlxP.net
>>94
return Music.Where(expression);
97:デフォルトの名無しさん
16/10/21 23:47:53.74 gbFOKPXv.net
>>95
次はWhereの中身
98:デフォルトの名無しさん
16/10/21 23:48:45.91 SHIfRlxP.net
こっちのほうがいいか?
return Music.Where(predicate);
99:デフォルトの名無しさん
16/10/21 23:51:49.18 SHIfRlxP.net
>>96
そこから先はフレームワークの仕事だ
すぐには書けないよ
100:デフォルトの名無しさん
16/10/21 23:53:19.16 vcl3xMBv.net
Linq使うならなおのことGet***は愚行だろ
せっかく自由にジャンルを新規追加できるようにデータを保持してるのに、新規追加のたびにGet***メソッドが爆誕するのは本末転倒
一部のジャンルのみGet***が実装されてるってのも気色悪いし
101:デフォルトの名無しさん
16/10/21 23:59:09.23 SHIfRlxP.net
>>99
なんか勘違いしてるがハードコード版をいちいち追加する必要はないぞ
俺そんなこと言ったっけ?
要件で必要になった有用なクエリをカプセル化するんだよ
今の文脈ではGetPopsがそれに該当すると仮定している
102:デフォルトの名無しさん
16/10/22 00:01:26.99 DAj343hD.net
>>100
だからそれが気色悪い
自分一人でシコシコ作ってる分にはそれで良いかもしれないが、チームで作る場合には
一部だけしか実装されてないgetとか吐き気がするわ
103:デフォルトの名無しさん
16/10/22 00:07:27.80 IweOgR7T.net
取得時に必ず実行したい処理(ログの掃き出しとかキャッシュの作成とか)を追加しようと思ったときに
Get系のメソッドが複数あると全部に手を加えなきゃいけなくなるから乱立は避けるべきやで
104:デフォルトの名無しさん
16/10/22 00:13:54.97 e4+LVHZw.net
GetPopsくんはお前らより周回遅れだから放置してもええんやで
無理に相手しなくても
105:デフォルトの名無しさん
16/10/22 00:55:11.05 tiqhYV+3.net
>>101
最後は感情論になっちゃうんだ
106:デフォルトの名無しさん
16/10/22 01:00:34.32 jx4+pi2S.net
>>102
そういうのはAOPなどの工夫で解決するべき問題
手で書くなんて時間の無駄はやめること
Getだろうがなんだろうがメソッドがいくつあっても手間にはならない
107:デフォルトの名無しさん
16/10/22 01:14:48.18 ms5m8DIE.net
>>104
感情論じゃあないだろう…
規則性が崩れた実装は混乱の元になる
やっぱりこの子まだまだ経験ないな
108:デフォルトの名無しさん
16/10/22 01:21:45.68 iQvw8haZ.net
いい加減、スレタイとテンプレ読めない奴は命名規則・設計スレでも立ててそっちでやれ
109:デフォルトの名無しさん
16/10/22 01:22:14.23 nW+Ca5Fr.net
>>106
優れた規則性を持っているでしょ?
必要十分なコード書けってだけの話
君のように気に入らないから必要なコードを書かない訳でもないし
使いもしないコードを書く訳でもない
無駄なコードもコードの不足も実装を大いに混乱させるものだよ
君はそろそろ入門書を卒業して実社会でコードに触れるべきだ
110:デフォルトの名無しさん
16/10/22 01:27:33.06 aPWQrVEE.net
>>108
もうとっくに10年以上働いてるわけだが
社員A「演歌取得メソッドどこにある? え?ないの?」
社員B「軍歌取得メソッドどこにある? え?ないの?」
社員C「民謡取得メソッドどこにある? え?ないの?」
社員D「演歌取得メソッドどこにある? え?ないの?(実はAが作ったので存在する)」
こんなやり取りを延々と続ける気か?
111:デフォルトの名無しさん
16/10/22 01:35:05.87 ms5m8DIE.net
>>108
Get***は無駄なコードだよ
汎用性の高いFindがあるなら他は蛇足でしかない
カプセル化するにしてもジャンルを引数で指定してリストを返す取得メソッドが限度だな
112:デフォルトの名無しさん
16/10/22 02:03:39.73 OXRjJseY.net
>>109
それは管理能力が欠如してるだけ
10年ね
>>110
無駄なものもあれば必要なものもある
パラメタライズされたメソッドを使うか明示的なメソッドによるパラメータの削除を使うか
どちらが常に正しいということはない
113:デフォルトの名無しさん
16/10/22 02:10:12.20 e4+LVHZw.net
> 明示的なメソッドによるパラメータの削除を使う
ホビープログラマかな?
114:デフォルトの名無しさん
16/10/22 02:12:26.69 WU36rjz+.net
お前ん中ではそうなんだろうな、ってこういう場面で使うんだろうねw
連想配列で済むものをいちいちGetXXX用意するっていかにもダメグラマが考えそうな設計だねw
115:デフォルトの名無しさん
16/10/22 02:16:18.96 aPWQrVEE.net
>>111
本来必要のない部分で無駄な管理を発生させてる時点でお粗末な仕事よ
繰り返すけど、お前さんのそのやり方はサンプルプログラムに毛が生えたようなもんをシコシコと一人で作ってる学生の間でしか通用しない
116:デフォルトの名無しさん
16/10/22 02:16:49.75 WU36rjz+.net
これ繰り返しになるけど、いつもテンプレをコピペして直接命名の話題ではないがそれに関連する
真面目な議論をぶっ壊そうとする馬鹿がこのくっだらないヨタ話に参加してるのは間違いないけど、
どの面下げてやってるんだろうな
117:デフォルトの名無しさん
16/10/22 02:23:40.15 OXRjJseY.net
>>113
OOPを学ぶことを勧める
>>114
何度も言っているが必要かどうかは場合による
明
118:示的なメソッドにする価値がない場合もあるし明示的なメソッドにしなかったことによって無駄な管理が増えることもある プログラマにとってバランス感覚は重要なセンスだ そしてバランスを取ることを最初から放棄することが最も愚かな選択であることは言うまでもない
119:デフォルトの名無しさん
16/10/22 02:30:22.79 /AjGkbek.net
>>116
明示的なメソッドにするなら最初から全種類明示的なものを用意しなきゃダメだよ
>>109の例で言えば、社員Aのときは「明示的にしなくても良い」と判断してFindを使って演歌取得を実装したが、
社員Dの頃には「演歌取得を頻繁にやるから明示的に用意しよう」と言ってGetEnkaを作るなどと
開発が進むにつれて事情が変わることは珍しくない
このとき、同じ演歌取得なのにFindで取得している箇所とGetEnkaで取得してる箇所が混在することになるか、
Aが実装した箇所を探し回ってGetEnkaに書き換える修正作業が入ることになる
とてもじゃないが綺麗なプロジェクトとは言い難い
120:デフォルトの名無しさん
16/10/22 02:34:22.94 WU36rjz+.net
OOPw
噴飯ものとはこのことかw
モノホンのダメグラマだなw
121:デフォルトの名無しさん
16/10/22 02:47:14.01 eh8upSc0.net
新卒社員に最初の研修で叩き込むレベルのことすら理解できてない若造が
プログラマを語っちゃってんだからギャグにしか見えんな
122:デフォルトの名無しさん
16/10/22 05:05:48.36 nST3ahFj.net
連想配列でも別に良いっちゃ良いんだけど(もちろん状況によるが)
IDE先生が補完してくれるかどうかが一番の課題よね
変数名やクラス名を付けるときって、
IDEの機能に引っ張られるってこと、結構多いんじゃない?
123:デフォルトの名無しさん
16/10/22 05:34:57.07 NzADNRlY.net
最近質問が少なすぎて、一つの質問で(無意味に)100レス引っ張る傾向がある
124:デフォルトの名無しさん
16/10/22 07:44:36.75 DYgWbh/+.net
リテラル文字列使うセンスは理解できん
125:デフォルトの名無しさん
16/10/22 08:22:44.12 LhJjURpJ.net
>>122
その通り
dao.find("ROCK");
これは論外
即解雇
dao.find(MUSIC_GENRE.ROCK);
よくあるパターンだけど長いし読みにくい
職場文化的にオブジェクトの定義と定数の定義が離れる傾向にありコードの凝集度も低いためオブジェクト指向的には悪手
入力補完を何回もしなければならない
間違っちゃいないがスマートじゃない
dao.findRock();
スッキリしていて読みやすく柔軟
振る舞いが全てクラスに凝集しているオブジェクト指向的良設計
入力補完の回数も少なくてすむ
クールな人はこれを選ぶ
126:デフォルトの名無しさん
16/10/22 08:23:25.65 hBp8S2CN.net
>>120
テキストエディタなら文字列リテラルも補完してくれるけど、IDEは補完してくれないものなのか
127:デフォルトの名無しさん
16/10/22 08:36:42.19 DYgWbh/+.net
>>123
音楽のジャンルだったら俺なら列挙型だな
例えば人の性別程度なら下の書き方にするかもね
128:デフォルトの名無しさん
16/10/22 09:16:07.42 gU77zXKz.net
>>123
foobar2000みたいにジャンルをユーザーが自由に設定できるような場合はどうするの?
URLリンク(www.foobar2000.org)
129:デフォルトの名無しさん
16/10/22 10:17:13.07 Me0jAF9q.net
リテラルに拘ってるやつがレベル低いとおもうけどなw
GetPops同等のメソッド量産せずに、っていう例でしかないだろ>>76は
>>126
ふつうはそう作るよな
ソフトウェア側からは単にユーザの入力文字列としか認識しない
pops = musicRepository.GetPops();
こんなのが出てくる余地はない
出るとしたら
list = musicRepository.Get(inputstr);
この形式しかありえない
130:デフォルトの名無しさん
16/10/22 10:34:42.47 WDS1fqif.net
>>126-127
なんど同じことを聞くんだ
バカなのか?
131:デフォルトの名無しさん
16/10/22 10:36:19.57 WDS1fqif.net
>>127
君の狭い世界ではそうなんだろうな
132:デフォルトの名無しさん
16/10/22 10:45:57.22 s+2RjA6Z.net
言い負かそうとせずにこれ以上は平行線だから終わりってならないのが不思議
133:デフォルトの名無しさん
16/10/22 10:51:00.38 /a8S//3o.net
>>122
サンプルコードと言うことすら理解できないんだな w
134:デフォルトの名無しさん
16/10/22 10:53:20.14 NzADNRlY.net
1
135:デフォルトの名無しさん
16/10/22 10:58:37.57 /a8S//3o.net
>>125
ジャンル増減する度にコードに手を入れるの?
法令とか規格で決まっててほとんど変更されないような選択肢なら列挙もあるかもしれないけど
136:デフォルトの名無しさん
16/10/22 11:23:09.18 DYgWbh/+.net
>>133
たかが音楽のジャンル程度なら俺は列挙型だな
自由にユーザーが追加できるようにするならリテラル文字列にするしかないけど
137:デフォルトの名無しさん
16/10/22 11:26:00.78 XrOB7U1S.net
昨日から何度か例に出てる音楽再生アプリだったら特定ジャンルのみ抽出する処理を固定で書く価値は確かにあまりないだろう
しかし例えば音楽ダウンロード販売サイトオーナーの顧客の要望により期間限定でポップスキャンペーン用の特設サイトを新規画面で素早く作りたいといった場合には特定ジャンルの抽出処理を定義済みクエリとして使い回す価値は大きい
こういった様々な状況を想定できず音楽再生アプリでは必要ないから全てが同じように必要ないんだ音楽再生アプリで使うのと同じ形式しかありえないんだと思い込んでしまう浅はかさが素人感を醸し出している
業務でプログラムを書いたことがある人間ならこのような視野の狭い思い込みなどしない
138:デフォルトの名無しさん
16/10/22 12:27:05.54 4bv8Zxei.net
>>135
もういい加減こんなアホな話やめて欲しいし、そもそも何の話をしてるのかも
いまいちよくわからんが、
(1) よく使う「特定ジャンルの抽出処理」はメソッドとして用意すべき
(2) 個々のジャンル全てについて対応する抽出メソッドを用意すべき
恐らく(1)を否定する人はいない。
否定されてるのは(2)
こんなの絵に描いたようなダメな奴がやりそうなことだ。
139:デフォルトの名無しさん
16/10/22 12:37:03.46 W/E63lh4.net
>>136
状況を理解できてないぞ
(1)を否定するバカが少なからず居て粘着しているんだ
140:デフォルトの名無しさん
16/10/22 12:39:53.81 4bv8Zxei.net
いやいないと思うけど。
まあ「べき」は言い過ぎだった。
よく使う処理をショートカットするメソッドが「あってもいい」。
そもそもメソッドとはそういうものだし。
141:デフォルトの名無しさん
16/10/22 12:41:26.84 NzADNRlY.net
どうでもいい
142:デフォルトの名無しさん
16/10/22 12:44:34.83 nST3ahFj.net
>>124
お前は何を言ってるんだと言いたいところだが
その辺は全て補完機能の性能によるとしか言えんじゃろ
143:デフォルトの名無しさん
16/10/22 13:24:10.25 s+2RjA6Z.net
どうでもいい(どうでもよくない)
144:デフォルトの名無しさん
16/10/22 13:35:00.80 hBp8S2CN.net
>>140
・補完機能の優秀なIDEに乗り換える
・pluginで補完機能を拡張する
・IDE開発者に追加機能要望を出す
対策はたくさんあるのに何もせず、今使っているIDEにコードを最適化するのは勿体ないと
145:いう話
146:デフォルトの名無しさん
16/10/22 14:19:07.11 JI+4c/sU.net
>>138
使っても良いではなく使うべき
定義済みの部分集合の要件が変わった時に安全に対処できる
147:デフォルトの名無しさん
16/10/22 14:40:57.39 k8mamnQ3.net
どうでも良いけどfindRockとかfindPopも命名としては悪い
findSMAP(歌手)とかfind80s(年代)とかジャンル以外による検索を追加したときに、検索キーが異なるfind×××がゴチャ混ぜで大量に並ぶことになる
「ジャンルがRock」であることが分かる命名にすべき
148:デフォルトの名無しさん
16/10/22 15:16:25.99 nST3ahFj.net
>>142
それもそうだな。
しかし、連想配列の文字リテラルまで補完できるってのは普通に知らんかった。
言語によるのかしらね。
149:デフォルトの名無しさん
16/10/22 15:32:40.56 9XGd15T1.net
IDEで保管できてもリテラル使って辞書にアクセスとかやめてくれ
自殺者が普通にいるこの業界でそれは殺人行為に等しい
150:デフォルトの名無しさん
16/10/22 15:39:36.54 nST3ahFj.net
>>146
ローカルでしか使わんならそれでもいいけど
そうじゃないなら定数を使って欲しいところね
というわけで適切な定数名を考えよう(スレ的な意味で
151:デフォルトの名無しさん
16/10/22 17:03:27.92 /a8S//3o.net
>>146-147
動的に増やしたい時はどうするんだ?
152:デフォルトの名無しさん
16/10/22 17:09:30.19 nST3ahFj.net
動的に増やしたい場合で、
ソースにリテラルを直接書くことって、あんまり無さそう
もちろん "ID-0042" のような自動生成される文字列はあるにしても
前半だけでも定数化するとかの手段は模索したいなあ
153:デフォルトの名無しさん
16/10/22 17:11:57.64 VPAELI2D.net
この手の話を聞くたびに、後々増える可能性があるものはxmlでもcsvでも構わないから外部ファイルに出しとけよと思う
内部処理はfind(string category)でええわ
追加するたびにコード修正&再ビルドが必要な作りはメンテ性最悪
154:デフォルトの名無しさん
16/10/22 17:13:30.29 hmjQA6vV.net
ほんと、たったそれだけのことなのにな
なぜかメソッドのシグネチャじゃなくて
呼び出し例のリテラル部分にひっかかってる子がいるけど
155:デフォルトの名無しさん
16/10/22 18:12:39.08 PmLwi55w.net
>>149
まだ言ってるのか、どんだけ周回遅れよ w
> 動的に増やしたい場合で、
> ソースにリテラルを直接書くことって、あんまり無さそう
⇒ >>127
156:デフォルトの名無しさん
16/10/22 18:23:40.26 rJrHw2K4.net
>>150
複雑な業務システムだとオレオレ定義ファイルが複雑化、巨大化してコードよりメンテナンス性が悪くなる
そんなものをメンテナンスするぐらいならハードコードしたほうがまだマシ
モダンな言語ならリビルド不要な拡張方法なんていくらでもあるし
157:デフォルトの名無しさん
16/10/22 18:23:56.20 lAgDZlKo.net
>>150
ステップ数でお給料が増減する文明圏の人たちになんてことを
158:デフォルトの名無しさん
16/10/22 18:37:34.74 VPAELI2D.net
>>153
商用なら音楽データの管理なんかそれこそRDBに置くべき案件
ましてや巨大なプロジェクトなら列挙型なんか論外中の論外だわ
159:デフォルトの名無しさん
16/10/22 18:43:34.46 /a8S//3o.net
>>153
> モダンな言語ならリビルド不要な拡張方法なんていくらでもあるし
例えばなに?
160:デフォルトの名無しさん
16/10/22 18:44:10.43 rJrHw2K4.net
>>155
当たり前だろ
今そんな話はしてない
161:デフォルトの名無しさん
16/10/22 18:45:08.68 rJrHw2K4.net
>>156
class , interface
基本だろ?
162:デフォルトの名無しさん
16/10/22 18:47:55.55 VPAELI2D.net
>>157
RDBに置くのにオレオレ定義とかハードコーディングとかアホなのか
所詮カテゴリなんてマスターデータの一種だろ
そんなものをいちいちハードコードするな
163:デフォルトの名無しさん
16/10/22 18:48:50.40 IpUTRyqC.net
>>152
それはコードが無駄に長くなるだけ
164:デフォルトの名無しさん
16/10/22 18:54:59.13 IpUTRyqC.net
>>74
getElementsByTagName, getElementsByClassName, getElementById 派
>>76-77
querySelectorAll 派
こんな感じ
応用力が高いのは後者、パフォーマンスが高いのは前者
165:デフォルトの名無しさん
16/10/22 18:59:54.45 iLkbIGXh.net
>>161
それすらないんだよね前者は
彼が主張してんのが
getElementsByGenreだったらそうだろうけど
getElementsPopsだからね
ここには巨大な隔たりがある
型と値の違いがある
166:デフォルトの名無しさん
16/10/22 19:00:02.31 gYvFPuft.net
マイクロ秒単位でシビアな応答速度が求められるものならまだしも、たかが音楽管理ツールにパフォーマンスを求めたって仕方あるまいて
マシンパワーの1%も使ってないだろう
167:デフォルトの名無しさん
16/10/22 19:03:01.93 gYvFPuft.net
>>162
ByGenreなら大いにアリだな
getPopsはどう考えても頭おかしい
key-valueで言うところのvalueに紐付けてメソッドを作るとかギャグだわ
168:デフォルトの名無しさん
16/10/22 19:03:46.45 rJrHw2K4.net
>>159
だから今そんな話してないだろ
増え続けるRDBへのクエリをどう管理するかって話で>>150はファイルで管理をすると言っているがそんなことをするぐらいならハードコードしろと言っている
マスターデータをハードコードとかどっから出てきたんだよ
169:デフォルトの名無しさん
16/10/22 19:05:51.49 x4x3zU66.net
>>165
マスターの管理は小規模なら外部ファイル、商用ならRDBにしろって話なんだが
RDBを外部ファイルで管理って頭沸いてんの?
170:デフォルトの名無しさん
16/10/22 19:09:18.63 IpUTRyqC.net
>>162
自分は汎用性と拡張性しか考えてなかった
例えば、>>161で特定の属性名を持つ要素ノード群を得るAPIを拡張したいとする
前者は getElementsByAttributeName を追加し、後者は querySelectorAll で属性セレクタを扱えるように拡張する
特価型APIを増やしていくか、汎用性の高いAPIを一つだけ用意するか、の違い
171:デフォルトの名無しさん
16/10/22 19:10:09.83 IpUTRyqC.net
特価型→特化型
172:デフォルトの名無しさん
16/10/22 19:10:17.82 rJrHw2K4.net
>>164
もしかして根本的なところから理解してないのか?
ここでいうGetPopsのPopsとはgenre=="Pops"のmusicのことじゃないぞ
もっとドメインレイヤよりの定義を持った集合にPopsという名前をつけたものだ
最も単純なシステムではたまたま両者は一致するというだけで現実のシステムではそんなに単純ではない
173:デフォルトの名無しさん
16/10/22 19:10:57.24 rJrHw2K4.net
>>166
だめだ全く理解してない
174:デフォルトの名無しさん
16/10/22 19:14:14.98 2RMhh+15.net
>>169
getpops本人まだいたのかよ
よくあんなアホらしいもんを思いついたもんだな
うちのアルバイトでももうちょいまともなもん作るぞ
175:デフォルトの名無しさん
16/10/22 19:15:38.57 wVjPdD/+.net
>>169
>>89を読み直してこい
176:デフォルトの名無しさん
16/10/22 19:16:45.35 yvrzDyTu.net
↓以下、ゲッポ君の「俺意外全員がバカ、世界のみんなが間違ってる」の主張をお楽しみください
177:デフォルトの名無しさん
16/10/22 19:19:25.85 rJrHw2K4.net
>>172
いつの話してんだ
話題は常に変化するもの
流れを呼んでこい
178:デフォルトの名無しさん
16/10/22 19:20:25.73 wVjPdD/+.net
>>174
それお前の中で変化してるだけじゃねーの
179:デフォルトの名無しさん
16/10/22 19:22:51.88 rJrHw2K4.net
>>173
世界は言い過ぎだけどこのスレ程度のレベルじゃ冗談抜きにその通りだと思うよ
180:デフォルトの名無しさん
16/10/22 19:23:36.80 eh8upSc0.net
さすがに頭おかしい
181:デフォルトの名無しさん
16/10/22 19:29:20.29 eh8upSc0.net
特別何かをするわけでもないただのエイリアスを無闇に増やすな
なんて新入社員研修で教えてることなんだが、なんでこんなことでグダグダといつまでも騒いでんだよ
182:デフォルトの名無しさん
16/10/22 19:29:22.73 rJrHw2K4.net
>>177
だって君ら書き込みみれば�
183:墲ゥるけどズブのアマチュアだろ? オレはいちおう金もらってシステム開発してるからね
184:デフォルトの名無しさん
16/10/22 19:30:25.32 eh8upSc0.net
>>179
22で入社してもう今年で37なんだが
185:デフォルトの名無しさん
16/10/22 19:33:12.94 rJrHw2K4.net
>>180
まあそういう人もいるよな
メゲズに頑張ってくれ先輩
186:デフォルトの名無しさん
16/10/22 19:33:59.10 wVjPdD/+.net
>>179
そんな珍しくもなんともないもんで自分が特別だと思いこんでたわけか
バイトを始めた学生か何かか?
187:デフォルトの名無しさん
16/10/22 19:37:48.27 eh8upSc0.net
>>181
メゲるも何も、呆れしか感じんぞ
改めて見てやるが、getPopsの中身の処理を書いてみな
188:デフォルトの名無しさん
16/10/22 19:40:01.84 lAgDZlKo.net
職業プログラマが何かの箔になると思ってる子をいじめるのはそれぐらいにしなさい
189:デフォルトの名無しさん
16/10/22 19:46:56.14 rJrHw2K4.net
>>183
return Music.Where(popsPredicate);
述語は要件と顧客の気分次第で不定な
190:デフォルトの名無しさん
16/10/22 19:48:14.90 eh8upSc0.net
>>185
なるほど
findないしそれに該当する汎用アクセサは?
191:デフォルトの名無しさん
16/10/22 19:54:00.26 rJrHw2K4.net
>>186
Music
192:デフォルトの名無しさん
16/10/22 19:55:53.56 eh8upSc0.net
>>187
うん??
Musicはメンバ等ではなくグローバルに置いてるのか?
ってことはgetPopsもグローバル?
193:デフォルトの名無しさん
16/10/22 20:01:05.09 rJrHw2K4.net
>>188
return Music;
って書けばお気に召すのかな?
こっちはちっぽけなスマホで打ってるんだ
察してくれ
194:デフォルトの名無しさん
16/10/22 20:05:28.90 4bv8Zxei.net
何でもいいけどいい加減もう止めたらどうだろう。
有意義な議論なら俺個人はどんどんやってほしいけど、
今のこれはあまりに下らなすぎる。
195:デフォルトの名無しさん
16/10/22 20:06:13.44 eh8upSc0.net
>>189
それにしてもだなあ。。。
カプセル化の何の意味もない構造に頭痛がして来たが、それはひとまず置いておくにしても
要するにgetPopsはただのエイリアス、ラッパーだろう?
getPopsが作られる前、またはそれを知らないメンバが実装した箇所ではfindが使われてる可能性がある
同じものを取って来るのに2種類以上の取得方法があるのは好ましくない
196:149
16/10/22 20:09:05.84 nST3ahFj.net
ごめん>152の言ってる意味が分からない。
自分が周回遅れなのは間違いないんだけれども。
もちろん>127を参照しろということは分かるんだが
127のどこが、ソース中に書かれる文字列をキーとして使う処理の例や説明なの?
197:デフォルトの名無しさん
16/10/22 20:16:35.71 /a8S//3o.net
>>158
リビルド不要?
最近の言語は class や interface とやらでリビルドせずに enum の要素増やしたり GetEnka( ) を追加できるのか?
198:デフォルトの名無しさん
16/10/22 20:20:59.15 /a8S//3o.net
>>192
マジで言ってるならもう少し頑張った方がいいと思う
少なくとも >>127 にはリテラル文字列はないだろ
199:デフォルトの名無しさん
16/10/22 20:22:12.22 rJrHw2K4.net
>>191
カプセル化は十分だよ
たったこれだけのクラスインターフェースからクラスの実装詳細やデータ層の構造までわかるのかい?
始まりはともかく今はもうGetPopsはただのエイリアス・ラッパーではない
ドメインで定義されたなんらかの有用なサブセットを取得するGetPopsと名付けられたメソッドだ
なんらかの有用なサブセットとはドメインの用語でつまりポップスのことだがポップスは単にGenre=="pops"を満たすmusicということではない
また今後ドメインの深化に追従してメソッド名が変わるかもしれないが今はまだGetPopsでよい
GetPopsを使う場面で汎用メソッドを使う事は確かに害悪でプログラマは反省しなければならない
しかしメソッドのみを使い同じ述語をあちこちにばらまくのもまた害悪だ
幸いにも開発環境やアナライザは日々賢くなっている
重複したコードをメソッドに一本化する作業はそれほど手間はかからない
気合を入れて一度やってしまえばその後の述語の変更は一回で済む
しかし述語をあちこちにばらまいたまま放置すれば述語の変更のたびに面倒な作業を強いられる
200:デフォルトの名無しさん
16/10/22 20:25:01.74 IpUTRyqC.net
要するに、単なるラッパーであるgetpopsを提唱したらフルボッコに論破されたから
意味を差し替えて俺は正しいと言い張ってるわけね
201:デフォルトの名無しさん
16/10/22 20:31:33.39 rJrHw2K4.net
>>193
enumはポリモーフィックなクラスファミリに置き換えられるし置き換えるべきだ
クラスファミリーにクラスを追加するのに全体のリビルドは必要ない
GetEnkaが必要になったとして追加するクラスを賢く選択すればリビルドの必要もなくシステムを拡張できる(なにも馬鹿正直に既存のリポジトリに追加する必要はない)
既存のクラスにどうしても追加したい場合は部分的なリビルドが必要になるが全体をリビルドする必要はない
202:デフォルトの名無しさん
16/10/22 20:32:37.44 rJrHw2K4.net
>>196
実にシステム開発的な流れだろう?
203:デフォルトの名無しさん
16/10/22 20:34:43.03 IpUTRyqC.net
>>198
そういうのはただの屁理屈と言う
204:デフォルトの名無しさん
16/10/22 20:39:11.57 rJrHw2K4.net
>>199
というかこの流れもある程度予測してGetPopsを最初にメソッド化したと言っていい
205:デフォルトの名無しさん
16/10/22 20:40:15.05 nST3ahFj.net
>>194
大真面目に頑張った結果なんだが
お前さんの言うとおり、まさに「>127にリテラルはない」としか読めない。
そもそも>149のどこを否定してるの?
206:デフォルトの名無しさん
16/10/22 20:41:14.01 eh8upSc0.net
>>195
そりゃ十数年も新人教育やってりゃ大体の構造は手に取るように分かるさ
先程の例ではMusicインスタンスを直接外部に渡してしまうのがまずい
どうしてもgetPopsを作るなら「汎用アクセサは用意しない」という回答が正解だったんだが
しかし、抽象的な表現で逃げるのは君の良くない癖だな
たまにそういう子も入ってくるけど
207:デフォルトの名無しさん
16/10/22 20:43:22.25 IpUTRyqC.net
>>200
中身のコードを書いてみせた時点で想定しきれてないな
まるで中学生の屁理屈じゃあないか
ホントに働いたことがあるのかどうかも疑わしい
208:デフォルトの名無しさん
16/10/22 20:45:42.06 rJrHw2K4.net
>>202
お前が書けと言ったんだろうが~
というか汎用メソッドをパブリックにした覚えもないしMusicがミュータブルであると言った覚えもないな
これでいいかおっさん?
209:デフォルトの名無しさん
16/10/22 20:48:06.11 eh8upSc0.net
>>204
俺は「汎用アクセサは?」としか聞いてないが
後付けも良くない癖だぞ、君
そういう子は大抵長続きしない
210:デフォルトの名無しさん
16/10/22 20:50:01.78 rJrHw2K4.net
>>205
子供かw
211:デフォルトの名無しさん
16/10/22 20:50:53.25 smXSLIN9.net
200 : デフォルトの名無しさん 2016/10/22(土) 20:39:11.57 ID:rJrHw2K4
>>199
というかこの流れもある程度予測してGetPopsを最初にメソッド化したと言っていい
↑さすがにワロタわw
キミ、いじめられっこの経験あるやろw
泣いてないモン!って言いなれてるなさすが
212:デフォルトの名無しさん
16/10/22 20:52:35.58 eh8upSc0.net
>>206
言ってないものを言ったと言い張られても困る
213:デフォルトの名無しさん
16/10/22 20:52:51.02 /a8S//3o.net
>>197
> モダンな言語ならリビルド不要な拡張方法なんていくらでもあるし
って豪語してたのに
> 全体をリビルドする必要はない
ってだけなのな
そんなの動的リンク使えばいくらでもできるわな w
214:デフォルトの名無しさん
16/10/22 20:56:10.95 /a8S//3o.net
>>201
> そもそも>149のどこを否定してるの?
マジで言ってるの?
ちゃんと引用してるんだが...
> ソースにリテラルを直接書くことって、あんまり無さそう
215:デフォルトの名無しさん
16/10/22 20:56:20.59 rJrHw2K4.net
>>207
すまん
子供の頃はいじめっ子だったわ
いわゆる学校のボスザル的チンピラ
216:デフォルトの名無しさん
16/10/22 20:58:24.55 rJrHw2K4.net
>>209
そうだよ
適切に処置すればリビルドなしでシステムを拡張できる
幾らでもできるからさっきそう言ったじゃん?
217:デフォルトの名無しさん
16/10/22 21:00:10.95 xVGM3Eif.net
リビルドしてんじゃねーか
218:デフォルトの名無しさん
16/10/22 21:04:05.92 nST3ahFj.net
>>210
ますます分からん
「ソースにリテラルを書くことはない」という主張の否定として
「ソースにリテラルは書かずにこうする」という例を挙げるのは、
話の流れとして成立するの?
議論とかディベートとか、あんまり学んでこなかったからなあ。
すまん
219:デフォルトの名無しさん
16/10/22 21:15:11.07 NG/YSHI2.net
>>212
いやリビルドしてんだろカス
220:デフォルトの名無しさん
16/10/22 21:19:28.67 OSlnnavW.net
>>214
周回遅れ
って言う言葉もわからんの?
> 「ソースにリテラルを書くことはない」という主張の否定として
否定なんてしてないぞ
まだそんなこと言ってるのかよ
って言ってるだけ
ディベートとか以前にまず正しい日本語を学ぶべきかと
221:デフォルトの名無しさん
16/10/22 21:19:28.86 vcedYMQM.net
あのさあ、おまえらタグって言葉は知ってるんだよな?
222:デフォルトの名無しさん
16/10/22 21:20:47.17 OSlnnavW.net
>>212
はいはい、嘘つきはもう来なくていいから
223:デフォルトの名無しさん
16/10/22 21:39:06.58 nST3ahFj.net
>>216
ああそういうことか、すまんかった
224:デフォルトの名無しさん
16/10/24 10:20:14.55 UouFXqTF.net
>>54から話広がり過ぎワロタ
225:デフォルトの名無しさん
16/10/24 10:48:41.37 fQGKWk+u.net
基本外野が喚くところですし
226:デフォルトの名無しさん
16/10/24 12:44:29.11 83bvzfHf.net
画面遷移メソッドの名前なんですがどちらが優れていますか???
openXxxWindow(p)
openYyyWindow(p1, p2)
openZzzWindow()
openWindow("Xxx", p)
openWindow("Yyy", p1, p2)
openWindow("Zzz")
227:デフォルトの名無しさん
16/10/24 12:46:27.62 +WgIUVwT.net
>>222
それ名前の問題じゃないだろ。
228:デフォルトの名無しさん
16/10/24 13:00:17.56 csInVVUs.net
>>222
完全にアルツハイマーだな。
229:デフォルトの名無しさん
16/10/24 13:37:47.14 fQGKWk+u.net
>>222
Xxx, Yyy, Zzz, p, p1, p2の補足が欲しい
230:デフォルトの名無しさん
16/10/24 15:21:51.22 pKBfRUrb.net
>>225
Xxx, Yyy, Zzzは画面名で英語の文字列です
p, p1, p2は次の画面に渡すパラメータで画面によって異なります
231:デフォルトの名無しさん
16/10/24 15:28:35.97 5ENMhkpM.net
>>1
> 命名規則や設計の善し悪しについて議論するのは基本的に禁止。
そもそもこれしか話すことないのになぜ禁止したし
232:デフォルトの名無しさん
16/10/24 15:50:27.65 fQGKWk+u.net
>>227
xyz座標と思ったわw
Win32APIならCreateWindowってのがある
233:デフォルトの名無しさん
16/10/24 15:56:52.07 +RICRJtL.net
てめえみたいなゴミがギャーギャー喚いてうぜえからだよ
234:デフォルトの名無しさん
16/10/24 16:11:48.75 Gldo3h3g.net
>>226
正直、画面の基底クラスを作って各画面を継承で実装した方がスッキリ書ける案件だと思うけど…
どうしてもopenWindowで実装したいなら後者で
似たような動作をする関数(win標準のcreateWindow)が既にあるなら使い方も同じ感じにしたほうが分かりやすい
235:デフォルトの名無しさん
16/10/24 16:20:55.50 f1Oob2xq.net
幼稚なバカが悪乗りして悪ふざけでやってるレスにマジレスする奴も重症だな
236:デフォルトの名無しさん
16/10/24 18:29:15.85 wn6/eztm.net
>>227
名前をレスせず、命名規則や設計の善し悪しのレスしかしないバカがスレを消費するだけで
一向に命名しない流れが続いたから禁止された。
何年も前の話。
ここ最近のテンプレ読めないバカが集まって、やはり一致した結論が出てないのを見て分かるだろ。
このスレは「○○について名前を考えてください」というお題に答えるだけのマジレス歓迎の大喜利スレ。
237:デフォルトの名無しさん
16/10/24 18:34:05.48 Ri+KQSou.net
次スレは議論も禁止したほうがいい
質問者が求めてるのはズバリかヒントのワードであってバカどもの薀蓄なんてお呼びじゃない
238:デフォルトの名無しさん
16/10/24 18:41:13.01 Ja2raL71.net
議論じゃないんだな
戦争なんだな
テーマに対する意見を交わすんじゃなくて
相手に対する攻撃を応酬し合ってるんだから
239:デフォルトの名無しさん
16/10/24 18:45:32.24 f1Oob2xq.net
禁止して実効性があるの?
ないのは明白だよねw
前にも書いたが、テンプレを引用して絡んでくるバカが登場する時としない時があるのは何故?
要するに、本来スレ違いの議論にそいつ自信が参加してる時には現れないのは明白なわけ。
そして、これは個人的な感想(しかし自信はある)だが、実にどうでもいいお馬鹿な「議論」
が続いている時に限ってそのおバカは現れない。まあ語るに落ちてるよね。
要するに、ずいぶん前も書いたけど、「~禁止」なんてルールはご都合主義のバカに他人のレスに絡む口実を与えて、
かえってスレが荒れる原因を作るだけ。
240:デフォルトの名無しさん
16/10/24 18:52:04.73 R8FyZAi8.net
マウンティング犬は今日も元気です
241:デフォルトの名無しさん
16/10/24 18:55:23.90 wn6/eztm.net
>>235
禁止してないから早速死んでくれていいよ
ってくらい無能な長文だね。
242:デフォルトの名無しさん
16/10/24 18:57:37.38 fQGKWk+u.net
>>235
> テンプレを引用して絡んでくる
って事は「命名規則や設計の善し悪しについて議論」してたんだよな?
その割には「マジレスする奴も重症」って矛盾してね?
243:デフォルトの名無しさん
16/10/24 19:02:36.61 f1Oob2xq.net
>>238
日本語でお書きください
244:デフォルトの名無しさん
16/10/24 20:14:28.55 fQGKWk+u.net
>>239
どこがわからない?
命名規則や設計の善し悪しについて議論してたからテンプレを引用して絡まれたんだろ?
245:デフォルトの名無しさん
16/10/24 20:32:37.69 f1Oob2xq.net
>>240
何を言ってるのかさっぱり意味が分からん。
246:デフォルトの名無しさん
16/10/24 20:42:00.45 fQGKWk+u.net
>>241
そうか
じゃあそのままでいいわ
247:デフォルトの名無しさん
16/10/24 21:19:09.43 XjvnPt+s.net
>>235をサニタイズするよ
禁止して実効性があるの?
ないかもね // 未検証な事柄を主観で断定しない
/* 思い込みと私怨の開陳は全カット */
禁止を押し付けらるのってなんか嫌だし(´・ω・`) // 個人的な感情であると説明しつつAAで和ます
248:デフォルトの名無しさん
16/10/24 21:40:24.47 bN8c+nPb.net
こいつの言語サニタイズしたほうがいいな
249:デフォルトの名無しさん
16/10/24 21:59:58.35 PrHBZIpa.net
このくっそ下らねぇやりとりで200レスも消化するとか底辺はやることが違うなと思う
250:デフォルトの名無しさん
16/10/24 22:17:53.78 mxK0EHtA.net
こんな塵芥と一緒にするとか底辺に失礼だろ
251:デフォルトの名無しさん
16/10/25 05:19:39.47 OZkbpJ7G.net
設計の善し悪しまで踏み込んでるのにタグ知らなかったんだぜ。
252:デフォルトの名無しさん
16/10/25 07:34:03.48 MZfG2R+8.net
この場合のタグって何?
253:デフォルトの名無しさん
16/10/25 08:05:43.55 zO0NytLF.net
値札のことだよ
254:デフォルトの名無しさん
16/10/25 09:19:12.44 g86pOwEK.net
サイズだろ
255:デフォルトの名無しさん
16/10/25 09:52:03.08 n342IJVH.net
例えるなら、人が道を聞いてるのに服装や交通ルールから説明してるんだよなあ
でも道順を全く説明できないただの交通ルールオタク
256:デフォルトの名無しさん
16/10/25 09:58:26.93 6yXN+QBc.net
不良品タグはってゴミ置き場にポイが妥当
257:デフォルトの名無しさん
16/10/25 10:56:42.10 s9TG/wfT.net
このスレッドは落として
設計・命名スレにしようや
命名と設計は不可分だからな
258:デフォルトの名無しさん
16/10/25 12:04:09.41 SxIO+8ai.net
14年続くスレを独断で終了させて立て直すとはさすが無能タグ
無能レスの応酬でなに一つ解決しないのにそんなスレが機能する訳ないだろ
14年分レス見てからテンプレ形成に至った意味を理解しろやハゲ
259:デフォルトの名無しさん
16/10/25 12:08:46.85 ZMREunEJ.net
設計まで口出しするなら質問時に言語とコードも出してもらわないと話にならないな
260:デフォルトの名無しさん
16/10/25 12:14:47.88 n342IJVH.net
ちょっと考えれば分かることだけど、質問者の言語やコーディング規約や社風や趣味を
許容できない奴が宗教論争をおっぱじめるのが目に見えてる
つーか既になってる
261:デフォルトの名無しさん
16/10/25 12:27:30.19 EzZ4fPwl.net
14年続けてこの有様じゃろくな奴がいなかったんだろうな
潰したほうが賢明だよ
まだ宗教論争のほうが実りがある
262:デフォルトの名無しさん
16/10/25 12:44:39.57 qCdUY5e1.net
・14年ずっと同じ人がはりついているわけではないので継続年数は関係ない
・この有様→つぶした方がマシになる根拠がない(設計に口出しすると何がマシなのだ?)
263:デフォルトの名無しさん
16/10/25 13:12:06.50 1R5yIvw6.net
潰すも何も、需要があると信じているなら新スレにさっさと移動すればいいだけの話。
設計・命名スレ
スレリンク(tech板)
264:デフォルトの名無しさん
16/10/25 21:01:29.23 U4JQUv53.net
スレが用意されると (書いてもいい場所が用意されると) 急に静かになるわけね
265:デフォルトの名無しさん
16/10/25 21:18:23.14 Tozirg6q.net
リクエストを処理する
の処理はどんなのがいいですかね
266:片山博文MZ ◆T6xkBnTXz7B0
16/10/25 21:35:01.01 tNFHqmMD.net
respond
267:デフォルトの名無しさん
16/10/25 22:29:29.89 QNrvjVG6.net
>>261
HandleRequests
DealRequests
268:デフォルトの名無しさん
16/10/25 22:41:57.40 Tozirg6q.net
ちょっと抽象的な質問でしたね
単語調べた結果respondに決めました
ありがとうございます!
269:デフォルトの名無しさん
16/10/26 00:29:53.63 8ZG+uxSI.net
特殊処理したいファイルを絞る正規表現の文字列の変数名をregex_specialFilesみたいにしたくなるのですがまずいでしょうか
実際にはspecialにはもっと具体的な単語が入ります
specialFilesRegexだとspecialがどこにかかるか分からない気がしてしっくりこないんです
270:デフォルトの名無しさん
16/10/26 00:46:49.43 Hu8g6Oi9.net
>>265
かっこつけて(?)無理に前置詞を省こうとするから意味不明な名前になるんだと思う
基本英語そのままでOK
RegexForFilesTo特殊処理
個人的には正規表現文字列をRegexと表現するのは嫌いなので、
PatternForFilesTo特殊処理
の方がいいと思う。
271:デフォルトの名無しさん
16/10/26 01:02:23.89 8ZG+uxSI.net
>>266
なるほどその通りですね
前置詞が完全に頭から抜けてました
regexも確かにpatternの方が分かりやすそうです
ありがとうございます、スッキリしました
272:デフォルトの名無しさん
16/10/26 01:43:11.56 LebVIXiL.net
いやむしろ説明的な長い変数名は良い習慣ではない
273:デフォルトの名無しさん
16/10/26 09:10:48.26 R7bTf3Ct.net
俺も変数名を文章っぽくにするのは好きじゃないな。
スコープがおかしな事になってるときになりがちだし。
274:デフォルトの名無しさん
16/10/26 09:49:31.37 EekeRq3r.net
>>269
では対案をどうぞ
275:デフォルトの名無しさん
16/10/26 11:08:46.69 i9LqHSRB.net
>>265
ハードコーディングしないでちゃんと名前でリソース管理したほうがいいよ
new regex(resouceManager.getString("pattern for special files"))
こうしておかないと正規表現の数が増えるたびにコードの書き換え、リビルド、テスト、公開、とめんどくさい作業をしなければならないから最悪
276:デフォルトの名無しさん
16/10/26 12:33:54.58 EekeRq3r.net
>>271
スレ違いの上に、ほとんど強迫神経症の態度だねそれは。
277:デフォルトの名無しさん
16/10/26 12:42:16.41 wESs4v7p.net
>>271のやり方でも数がふえたらリビルドが必要な件
278:デフォルトの名無しさん
16/10/26 14:41:24.69 4rKIhUw9.net
【質問者が”設計変更まで視野に入れつつ”命名に困ってここに来てる】
と思うなら、これ作ってくれてるんだから移動誘導待機なりしてくれ。
設計・命名スレ
スレリンク(tech板)
ここのスレは設計がクソだったとしても質問者のレベルの範囲で返しとけばいいんだよ。
279:デフォルトの名無しさん
16/10/26 14:49:22.45 CNqsRIZ6.net
そうそう
聞くとしても名前を考えてるオブジェクトが何するかくらいでいい
他は余計な事考えないでいい
280:デフォルトの名無しさん
16/10/26 16:24:13.43 i9LqHSRB.net
質問者に許されるレス内容
①背景と機能の説明
②候補として考えてる名前(もしあれば)
③サンプルコード(もしあれば)
回答者に許されるレス内容
①機能に付けるべき名前(機能1つに対して1つの識別子)
これ以外の書き込みは禁止とする
281:デフォルトの名無しさん
16/10/26 16:47:17.25 Kd62j3g9.net
自分でやっといって何を言ってるんだw
282:デフォルトの名無しさん
16/10/26 17:51:29.14 7vN4PYAf.net
ここまで来ると、マジでアスペか何かだな
空気を読むとか一切できなさそう
283:デフォルトの名無しさん
16/10/26 18:41:32.26 nn4J9Ce2.net
>>276
馬鹿かこいつw
284:デフォルトの名無しさん
16/10/26 19:10:56.46 HUHPMrwb.net
>>227-229
君たちはなんでそんなに頭が悪いの?
285:デフォルトの名無しさん
16/10/26 19:17:15.22 HUHPMrwb.net
レス番を間違えちゃった
まあ大事なことだから二回書いてもいいよね
>>277-279
君たちはなんでそんなに頭が悪いの?
286:デフォルトの名無しさん
16/10/26 19:49:54.50 DCJLb856.net
MainがOFFなら
AもBもOFF
MainがONなら
AとBの個別設定を参照
この場合の個別設定を参照する部分の名前はどうする?
287:デフォルトの名無しさん
16/10/26 20:02:22.65 Kd62j3g9.net
>>282
そんな抽象的な要件だけで名前付けろって無理があると思うけど・・・
288:デフォルトの名無しさん
16/10/26 20:29:17.43 LebVIXiL.net
そもそもMainの設定を参照する部分の名前はどうしたんだよw
個別の場合だけわざわざ別の名前にしたいのか?面倒な奴だなw
289:デフォルトの名無しさん
16/10/26 20:31:23.26 2dETNhOD.net
命名云々よりリーダブル意識しろ
290:デフォルトの名無しさん
16/10/26 20:37:53.55 Vi7enIW1.net
OFFとかONとかいわれましてもw
291:デフォルトの名無しさん
16/10/26 21:18:14.00 DCJLb856.net
>>284
Mainは 基本設定 Basic かなって思ってる
同じ名前にすんの?
292:デフォルトの名無しさん
16/10/26 21:25:29.98 R7bTf3Ct.net
設定を持ってくるメソッド名の話?
293:デフォルトの名無しさん
16/10/26 21:28:37.46 R7bTf3Ct.net
>>270
せめてspecialPatternくらいで問題ないような設計にすべき
294:デフォルトの名無しさん
16/10/26 21:37:32.89 DCJLb856.net
>>288
その話
基本設定受け取るのと個別設定を受け取るのは別にしてある
295:デフォルトの名無しさん
16/10/26 21:47:36.81 Kd62j3g9.net
>>289
それが可能かは質問者しか分からない。
普通に考えて、可能ならわざわざ質問しないだろう。
不可能な可能性が皆無ならともかく、そうでないのであればスレの趣旨を尊重して
素直に質問者の問題に解答すべきだ。
296:デフォルトの名無しさん
16/10/26 22:44:11.46 DvJWGDCx.net
スレチだから議論するなよ
297:デフォルトの名無しさん
16/10/26 23:11:00.34 8ZG+uxSI.net
今更ですが>>265はあるGUIのツールに埋め込むコードの一部の話です
正規表現は処理対象ファイルを指定する箇所の設定入力部に書いてあるので設計でどうこうというのは無理そうです
ツールの動きを無理にコードで制御しようとしてるので名前に無理が生じるのは仕方ないかもしれないですね…
298:デフォルトの名無しさん
16/10/26 23:44:24.00 4rKIhUw9.net
ということ。
一々設計レベルから作り直せると思ってる暇プログラマーは、どうぞ新スレに移動してください。
高尚な思想を元に数レスで一同を納得させられる流れを見せつけてくれるでしょう。
299:デフォルトの名無しさん
16/10/26 23:59:23.89 Kd62j3g9.net
>>294
気づいてないみたいだから一応言っとくけど、そういう「ガヤ」が一番くだらない。
バカじゃないの。
それに比べたら多少スレの趣旨からズレても命名の周辺の話題のレスの方が100倍マシだ
300:デフォルトの名無しさん
16/10/27 00:15:28.72 2yJlsZPW.net
それ自分のことじゃね
301:デフォルトの名無しさん
16/10/27 00:23:13.54 fRHwGNYD.net
>>295
皮肉込めて誘導してるだけで、真意としては>>291と大して変わらんつもりだが?
302:デフォルトの名無しさん
16/10/27 01:01:02.41 K8eDk5Ex.net
質問者に許されるレス内容
①背景と機能の説明
②候補として考えてる名前(もしあれば)
③サンプルコード(もしあれば)
回答者に許されるレス内容
①機能に付けるべき名前(機能1つに対して1つの識別子)
上記以外の書き込みは禁止とする
スレチの話題は該当スレへどうぞ
設計・命名スレ
スレリンク(tech板)
303:デフォルトの名無しさん
16/10/27 07:18:32.18 uoSnPm98.net
>>288
GetSettingA( ), GetSettingB( ) じゃダメなの?
304:デフォルトの名無しさん
16/10/27 08:24:35.16 8JUz12qY.net
個別設定という変数名を考えてみよう
305:デフォルトの名無しさん
16/10/27 09:16:11.09 Owourcn0.net
共通部品的なやつのなかに
基本を持ってくるメソッド、設定Aを持ってくるメソッド、設定Bを持ってくるメソッドがある状況なのか
それともABそれぞれが、基本と個別のメソッドを持ってるのかによって違うかな
306:デフォルトの名無しさん
16/10/27 09:23:39.79 8JUz12qY.net
勝手に想像したらメールとかの通知機能が思い浮かんだかな
Mainはアプリとしての通知有効無効
AやBはアプリとしての通知が有効ならAやBの設定に従う感じ
メールならPersonal設定?
メールとか関係無く「個別通知」ならindividual?
307:デフォルトの名無しさん
16/10/27 10:55:59.83 wCjzfsvs.net
要件が適当すぎ
名前は適当でいいから動くコード書いて
308:デフォルトの名無しさん
16/10/27 12:56:18.58 Owourcn0.net
目的によって、基本や個別の意味合いが変わ�
309:チてくるし、適切な単語も違うからねぇ
310:デフォルトの名無しさん
16/10/29 20:57:22.24 OmD5+S5i.net
メンバーの募集機能で、募集中かどうかを「is_recruiting」カラムに入れています。
これのtrue, falseを切り替える関数名はどういう感じがよいでしょう?
311:デフォルトの名無しさん
16/10/29 21:01:36.42 Lu2qC+Nv.net
>>305
toggle_recruiting
switch_recruiting
> 募集中かどうかを「is_recruiting」カラムに入れています。
is_recruitingに違和感がある。
それがrecruitingかを確認する関数名に読める。
312:デフォルトの名無しさん
16/10/29 21:13:58.34 OmD5+S5i.net
>>306
やっぱり違和感ありますかね?
「現在募集中かどうか」はどういう表現、カラム名が適切でしょうか
313:デフォルトの名無しさん
16/10/29 21:21:32.48 Lu2qC+Nv.net
>>307
recruiting
314:デフォルトの名無しさん
16/10/29 21:23:12.34 4zGB62ZL.net
余計に意味分からんわ
315:デフォルトの名無しさん
16/10/29 21:26:56.51 dXKRRVDP.net
offer exists
316:デフォルトの名無しさん
16/10/29 21:29:04.12 T/KDlWmf.net
そういう可能かどうかの状態をtrue/falseで返す関数は
isXXXXXable
が大正義
317:デフォルトの名無しさん
16/10/29 21:32:29.00 Lu2qC+Nv.net
>>311
切り替える関数であって可能かどうかを返す関数ではないのでは?
318:デフォルトの名無しさん
16/10/29 21:33:10.90 LIjnRu53.net
IsEnableRecruit
SetRecruitStatus
319:デフォルトの名無しさん
16/10/29 21:47:35.84 ZloojbFD.net
>>305
> メンバーの募集機能で、募集中かどうかを「is_recruiting」カラムに入れています。
俺なら in_recruiting かな
> これのtrue, falseを切り替える関数名はどういう感じがよいでしょう?
start_recruit(), stop_recruit()
320:デフォルトの名無しさん
16/10/29 21:48:45.20 w65J4ERD.net
ReverseかToggleかなあ。
Switchは第3のステータスがありそう。
>>307
is_recruitingで良いと思うけどなあ。
is_recruitableでもいいかもしれんけど。
321:デフォルトの名無しさん
16/10/29 21:53:37.19 w65J4ERD.net
あるいは、
下手に切り替えるところまでを1つの関数にするよりは、
SetRecruiting ( ! is_recruiting );
is_recruiting = ! is_recruiting;
is_recruiting ^= 1;
とかのほうが分かりやすいかもしらん。
322:デフォルトの名無しさん
16/10/29 22:19:02.82 4zGB62ZL.net
質問者はtoggleがしたいのか単にsetしたいだけなのかハッキリしておくれ
323:デフォルトの名無しさん
16/10/29 22:52:35.09 PR9zW7ZB.net
employならenployableって表現はありだけど
recruitableはないと思うわw
英単語としては存在するみたいだけど、意味的におかしいよねw
324:デフォルトの名無しさん
16/10/30 00:44:44.17 jMC+zj6I.net
~ableは「~可能」って意味だからな
今回は募集可能じゃなくて応募可能と考えるべき
325:デフォルトの名無しさん
16/10/30 07:07:00.90 JMWTgXDT.net
募集に関するクラスに作るんじゃないの?
普通にavailableでいいと思うんだけど
326:デフォルトの名無しさん
16/10/30 08:42:44.21 2kQlDpFE.net
>>318
例: 政府により募集可能な期間が設定された
普通に使われると思うけど?
327:デフォルトの名無しさん
16/10/30 11:46:01.42 f9d004U/.net
member_wanted {none, a_few_programmer}
328:デフォルトの名無しさん
16/10/30 22:45:31.62 sGqbfAV5.net
2つほど相談です。
関数名は文脈を考えて付けるべきというのは理解していますが、
プリフィクス等の汎用的な命名方法を探しています。
(1)
以下のような複数の方法でfooと呼ばれる値を取得し、それを返す関数の名前をお願いします。
・テキストファイルから解析
・既存の変数から計算
・DBや他マシンと通信
:
具体的などのような処理を行うかは、呼び出し元は知る必要はありません。
ただし、単なるGetFoo()よりは処理が重いイメージを伝えたいと思います。
現在は仮にFetchFoo()としています。
(2)
あるクラスのメンバ変数barに対して、取得と代入を行う関数をお願いします。
上記(1)と同じように複数の方法で値を取得し、それをbarに代入します。
現在 SetBar( FetchBar() ) と記述しているのですが、これをまとめたいという要求です。
こちらも呼び出し元は値の取得方法を知る必要はありませんが、少し重いイメージは出したいです。
InitializeBar() や ApplyBar() も考えましたが、
初期化だけに使うわけでも、各種設定を確定させるだけに使うわけでもないので、
ちょっとモヤモヤしています。
329:デフォルトの名無しさん
16/10/30 23:33:05.97 03ce0qAm.net
ここではないどこかからデータを取ってくるという意味合いが強いならFetchを使う
より抽象的に手段や場所や対象はよくわからないがとにかく何かを取得するという意味合いが強いならGetを使う
処理が重くなる場合があるという情報は通常はドキュメントに記載する
ドキュメントではなくプログラムで表現したいなら微妙なニュアンスに頼らずに非同期版のメソッドを用意すること
非同期版のメソッドを用意することによって同期版を使った場合にパフォーマンス上のペナルティが発生する可能性があるということをプログラマにより直接的に伝えることができる
330:デフォルトの名無しさん
16/10/31 00:13:23.74 T+jfS1R6.net
>>324
ありがとうございます。
Getだけだと、単純なアクセサってイメージが強くないですか?
C#のプロパティとかも、稀にそういうトラブルがあるらしいですけれども。
331:デフォルトの名無しさん
16/10/31 00:31:03.58 y/KimnPW.net
>>323
(1) それとは別に「早い」バージョンも存在するのでなければ単純にGetFooで問題ない気もする。
どうしてもそれが重いことを名前で伝える必要があるのなら、あいまいなニュアンスに頼るんじゃなくて
明示的にGetFooInSlowWayとかGetFooByHeavyMethodとか付けたらどうかなあ
(2) 基本的に(1)と同じでUpdeteFooとかReloadFooでよく、本当に必要なら(以下略)でいいんじゃないか
332:デフォルトの名無しさん
16/10/31 00:32:53.87 y/KimnPW.net
Updateのスペルが間違ってたw
333:デフォルトの名無しさん
16/10/31 00:45:48.40 y/KimnPW.net
その手のメソッドが頻出するなら、何かサフィックスする規約でもいいのかもね。
例えばHV(HeaVy)とか
GetFooHV
334:デフォルトの名無しさん
16/10/31 00:55:49.63 N3/YDThV.net
>>325
メソッドはクラスやインターフェースとセットだから問題ないよ
それで迷うようならクラスの役割やインターフェースの要求があやふやなんだろうね
FooRepository.getFoo
Foo.getName
どっちがインフラに依存した重い処理でどっちがフィールドアクセス(+α)のささやかな処理か?
クラス分けがちゃんとしてれば常識的に迷うこたないでしょ
335:デフォルトの名無しさん
16/10/31 12:47:10.69 uOz63dOb.net
重いことを主張したいわけではなく、ただのアクセッサではないということを主張したいだけか。
そういう微妙なニュアンスにこだわりたいのはわかるが、作者のそんな意図はなかなか伝わらないものだよ。
だからこういう話題は、それ単独で悩むんじゃなくて、規約レベルで決めとくべき話題だな。アクセッサはgetで、ファイルから持ってくるときはreadとか。
その規約的なものを検討してて質問してるなら失礼。
336:デフォルトの名無しさん
16/10/31 20:56:32.06 03zQ5mOK.net
というかオブジェクト指向的にはgetなんとかはフィールドアクセサーだって連想は間違ってるんだよ
実装を見たらたまたまフィールドにアクセスしてたってだけの話でな
337:デフォルトの名無しさん
16/10/31 22:11:27.28 6L1k9riG.net
くっさ
338:デフォルトの名無しさん
16/10/31 22:19:19.89 u9vgcP7f.net
アクセサーにgetを使うのって、解説用のときだけじゃね
339:デフォルトの名無しさん
16/11/01 09:00:22.30 pQ6hmNDw.net
プロパティのない言語だと、get/setをアクセッサとするルールを定めておくことで、色々と便利なわけですよ。
340:デフォルトの名無しさん
16/11/01 10:23:11.89 H/G1IS5n.net
解説のときにね
341:デフォルトの名無しさん
16/11/01 14:29:13.40 zTwebp3Z.net
>>331
その話題はここの連中にはまだ早い
342:デフォルトの名無しさん
16/11/01 16:07:11.34 H/G1IS5n.net
オブジェクトでフィールドにアクセスしないでなにかをGetするなんてあるんだろうか?
343:デフォルトの名無しさん
16/11/01 16:53:05.46 0w7M9Ph5.net
getするのはオブジェクトの属性だけとは限らないからねえ。
現に今の質問者の話がそれなわけで。
だからこそメソッドとは別に属性のアクセス専用のプロパティが発案されたんだと思うけど
344:デフォルトの名無しさん
16/11/01 20:13:14.70 jey0RimT.net
発案っていうかC#のプロパティなんかは例えばあれIDEの都合っしょ
そうすりゃIDE側から多少便利ってだけでね
public string Foo {get;}
public string Bar {get {return xxx.getBar()}}
この両方の書き方がある以上、属性専用も糞もない
用途はメソッドんときと一緒
345:デフォルトの名無しさん
16/11/01 20:22:36.25 zZ+/B8c0.net
>>339
プロパティはVBやCOMにもあるよ
それと、それまったく何の理由にもなってないと思うけど
プロパティは<オブジェクトの使用者に対して>それがオブジェクトの属性であることを明示するためにある。
346:デフォルトの名無しさん
16/11/01 20:28:15.67 ls1tDjet.net
プロパティは歴史的にはRADのためのアイデアであってるよ
マイクロソフトの中の人が言ってた
347:デフォルトの名無しさん
16/11/02 11:57:37.21 GdBKXJrN.net
スキーマ名.テーブル名を格納する文字列についていい名前はないでしょうか
348:デフォルトの名無しさん
16/11/02 12:25:48.41 iqvhs+TX.net
string スキーマ名
string テーブル名
349:デフォルトの名無しさん
16/11/02 12:34:12.01 GdBKXJrN.net
すいません、hogeSchema.hogeTableのようにスキーマ名とテーブル名を結合させた文字列です
暫定でtableFullNameになっているのですが伝わるでしょうか
350:デフォルトの名無しさん
16/11/02 12:58:15.07 iqvhs+TX.net
string スキーマ名とテーブル名
351:デフォルトの名無しさん
16/11/02 16:25:05.97 cswDNzjo.net
>>344
スキーマまで含める意図がテーブルを完全に特定したいと言うことなら FullQualifiedTableName かな
352:デフォルトの名無しさん
16/11/02 16:51:09.01 ocKcxs87.net
>>346
fully qualifiedで完全修飾なんですね
おっしゃる通りテーブルを特定するために結合しているのでそれでいってみます
ありがとうございます
353:デフォルトの名無しさん
16/11/02 16:53:27.99 7Lua67RL.net
class TableName {
private String _name;
private String _schema;
public TableName(String n, String s) {
_name = n;
_schema = s; }
public String name() { return _name; }
public String schema() { return _schema; }
public String fullName() { return _name + "." + _schema; }
}
354:デフォルトの名無しさん
16/11/02 18:39:44.42 MdOEsPX2.net
俺ならそういうのをクラス名やメソッド名にはしないな
>>348さんみたいな方向のアプローチでつくっておいて
変数名をそれっぽいもんにして運用する
class Pair<T, U> {
private T first;
private U second;
public Pair(T first, U second) {this.first = first;this.second = second;}
public T first() {return first;}
public U second() {return second;}
}
class StringPair extends Pair<String, String> {
public StringPair(String a, String b) {super(a, b);}
public String whole() {return whole("");}
public String whole(String sep) {return new StringBuilder().append(first()).append(sep).append(second()).toString();}
}
で、
List<StringPair> schema_table_pairsとかst_pairsとかstpairsとかstsとか
355:デフォルトの名無しさん
16/11/02 22:47:45.00 Bu8jEFR0.net
こんなアホが俺の周りに来ませんように
356:デフォルトの名無しさん
16/11/02 23:03:56.32 jC5deFAg.net
質問ではなく、ちょっと意見を聞きたいんだけどさ、
foo-bar_baz という名前があったとき、一パッと見でどう認識する?
1. Foo/ BarBaz
2. FooBar/ Baz
3. Foo/ Bar/ Baz
4. それ以外
357:デフォルトの名無しさん
16/11/03 00:18:47.46 siYabkWS.net
3だな
358:デフォルトの名無しさん
16/11/03 01:14:20.86 snmoM2GI.net
3かー、ありがとう。
小文字しか使えない状況って結構辛い
359:デフォルトの名無しさん
16/11/03 07:18:42.52 viOY8I+I.net
2に近いが1と3はない
360:デフォルトの名無しさん
16/11/03 08:34:35.58 4MjmvoYz.net
>>351
Google的には1だな
URLリンク(www.sem-r.com)
361:デフォルトの名無しさん
16/11/03 08:50:59.41 q+jX9dvw.net
ビンゴ!
362:デフォルトの名無しさん
16/11/03 09:18:04.47 9JnV00MF.net
foo-(bar_baz)
foo年bar組baz番
って感じ
363:デフォルトの名無しさん
16/11/03 10:28:30.55 NjbREez3.net
>>351
ここム板だから foo - bar_baz って認識する人が多いと思う
ハイフンを識別子に使える言語もあるけどね
364:デフォルトの名無しさん
16/11/03 11:49:34.61 GY8DqBwz.net
>>351
1かなスネーク形式を連想するし。
365:デフォルトの名無しさん
16/11/03 13:07:03.07 ZphmWbuS.net
ハイフン(っていうかプログラミング的にはマイナス記号だと思うけど)が識別子に使える
プログラミング言語なんてあるのかw
っていうか、この手のオレオレ表記法が他人にどう見えるかなんて無意味。
他人の書いたコードを読む時重要なのは書いた奴がその表記法をどういう意図で使っているかであって
読み手がどう思うかじゃないんだから。
あえて言えばそんな他人にお前の意図を推測させるような表記法なんか使うなと。
366:351
16/11/03 13:49:32.19 snmoM2GI.net
ありがとう。見事にみんなバラバラだな!
本当は日本語OKなら積極的に使いたいんだけどねぇ。
>>351
URLやら連想配列やらまで含めればそれなりに。
自分(相談者)の場合はDBだけども。
>>360
全くもって同意する。ただすまん、今回の場合は意図を推測する/させる立場が逆なんだ。
例えるなら大昔のコンピュータゲームで、
A攻撃&Bジャンプのアクションゲームがそれだけでクソゲー扱いされるようなもので。
367:デフォルトの名無しさん
16/11/03 13:50:30.47 snmoM2GI.net
アンカ間違えた 自分に打ってどうする >358だ
368:デフォルトの名無しさん
16/11/03 13:59:33.85 +nsyTxDZ.net
>>360
Lispとかあるでしょ
369:デフォルトの名無しさん
16/11/03 14:07:57.72 h7OLIGrQ.net
演算子の前後は空白開ければ楽勝で区別出来るが、Cの.と->は空白入れると座りが悪いので入れてない
370:デフォルトの名無しさん
16/11/03 14:54:54.10 NjbREez3.net
>>360
> ハイフン(っていうかプログラミング的にはマイナス記号だと思うけど)が識別子に使える
> プログラミング言語なんてあるのかw
COBOL とか PowerShell とか
> っていうか、この手のオレオレ表記法が他人にどう見えるかなんて無意味。
と思うならスルーしとけ
371:デフォルトの名無しさん
16/11/03 15:27:26.47 jGJ8D3JL.net
>>360
チェインケースでググれ
372:デフォルトの名無しさん
16/11/04 11:34:10.16 ZEtNANA9.net
>>360 xsltも-が使える。しかもふつうに引き算で-を使う。
373:デフォルトの名無しさん
16/11/04 17:51:27.61 yZRML0sj.net
設定画面でファイルを保存する場所(フォルダ)を指定させるのですが、
まずは、保存する場所を指定するかどうかのBoolean型のプロパティと
指定する場合の実際の保存場所のパスを表すString型のプロパティ
の2つの名前をよろしくお願いします。
Settingsクラスあたりに追加します。
374:デフォルトの名無しさん
16/11/04 17:57:14.78 yZRML0sj.net
英語の名前もそうなんですが、日本語の方もお願いします。
UI的には
「保存する場所を指定する」というキャプションのCheckBoxあたりと、
「保存する場所」というキャプションのテキストボックスとフォルダダイアログを表示するボタンでいいですかね。
375:デフォルトの名無しさん
16/11/04 18:00:23.05 BEVfOvDH.net
>>368
設定自体をファイルに保存するの?
それとも、何か別のデータを保存するの?
376:デフォルトの名無しさん
16/11/04 18:07:17.31 XfxE6vHI.net
>>368
話を聞く感じでは「保存する場所を指定するかどうか」なんて設定は不要に感じる。
要は必要になった時に保存場所を規定値に戻せれば同じことでしょ?
保存場所を規定値に戻すメソッドを持たせればいい。
保存場所は普通にSaveFolder, SaveName, SavePathで良いのでは
377:デフォルトの名無しさん
16/11/04 18:09:25.00 yZRML0sj.net
>>370
別のデータを保存します。それが2,3個あるのですが、その種類は接頭辞として前につけようかなと
思ってますので>>368ではその具体例を省いて質問しました。
設定ファイル自体ももちろんファイルに保存しますが
それは固定なので。
378:デフォルトの名無しさん
16/11/04 18:12:18.73 XfxE6vHI.net
まあ、一度規定値に戻した後また同じパスを指定するのは面倒だってことはありうるのか。
じゃあUsesDefaultFolderとUserSpecifiedSaveFolderで
379:デフォルトの名無しさん
16/11/04 18:21:19.77 yZRML0sj.net
>一度規定値に戻した後また同じパスを指定するのは面倒だってことはありうるのか
その通りです。例えば、インターネットエクスプローラのプロキシの設定でも
チェックボックスとテキストボックスの2段構えになってるのですが、
他のソフトでそうなってないUIのときに一時的に切り替えるがめんどくさい経験をしてるので、
だから、あえてチェックボックスとの2段構えにしています。
380:デフォルトの名無しさん
16/11/04 19:27:32.71 yZRML0sj.net
色々ありがとうございます。
>UsesDefaultFolderとUserSpecifiedSaveFolder
ここらへんの案で行こうと思います。
381:デフォルトの名無しさん
16/11/16 21:38:10.07 zlBynMxs.net
あるクラス群の役割を抽象化したスーパークラスの名前を考えています。
あるデータDをデータベースに対して読み書きするクラスX
あるデータDをファイルに対して読み書きするクラスY
あるデータDをメモリに対して読み書きするクラスZ
あるデータDをウェブアプリに対して読み書きするクラスW
これらのクラスの読み書き先の違いを抽象化したスーパークラスの名前は何が良いでしょうか。
ReaderWriter でしょうか。
382:デフォルトの名無しさん
16/11/16 22:09:41.69 5Ihw572q.net
むしろReadWriterじゃない?
あとDStreamとか?
383:デフォルトの名無しさん
16/11/16 22:42:11.51 gtmrvLDz.net
リポジトリだろ
384:デフォルトの名無しさん
16/11/17 00:16:14.42 jhQKUhIJ.net
>>376 です。
>>378 なるほど、ピッタリですね。
頂きます。
お二人とも、ありがとうございました。
385:デフォルトの名無しさん
16/11/17 01:17:13.53 ypT0aoV/.net
いやリポジトリは倉庫であって倉庫係ではないと思うけど...
>>376は倉庫係じゃん
386:デフォルトの名無しさん
16/11/17 02:13:48.61 NU+xZ5I3.net
377で挙がってるけどDStreamかなあ
387:デフォルトの名無しさん
16/11/17 12:34:21.39 ir/fHuQ7.net
全然ストリームじゃないのにどっからストリームが出てくんのか…
雰囲気で訳も分からずデタラメな名前つけんなタコが
388:デフォルトの名無しさん
16/11/17 13:05:45.14 /0Wfoiwq.net
>>382
悪いけどお前さんがストリームって概念を理解してないだけだと思うよw
389:デフォルトの名無しさん
16/11/17 13:33:29.72 SIbcJcrO.net
>>383
俺はお前が理解していないに一票。
ストリームじゃないし。
390:デフォルトの名無しさん
16/11/17 13:50:31.14 /0Wfoiwq.net
アホだ
URLリンク(ja.wikipedia.org)(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)
391:デフォルトの名無しさん
16/11/17 14:00:14.97 SIbcJcrO.net
>>385
自分の言葉で説明できないという告白ですか。
ストリームの要件の一つに「連続データである」ということがある。
>>376はそれを満たしていないのでストリームではない。
反論があるなら、自分の言葉でどうぞ。
392:デフォルトの名無しさん
16/11/17 14:03:31.82 3lGtF19o.net
Dを永続化したいという目的ならD repositoryで伝わるよ
でも>>376は永続化の手段も表したいと言う
真っ先にリポジトリパターンを思い出す人は違和感を持つんじゃないかな
393:デフォルトの名無しさん
16/11/17 14:05:02.67 /0Wfoiwq.net
>>386
以前はランダムアクセスが困難なもののみを指してストリームという用法が一般的だったのは
たぶん確かだが、最近はランダムアクセス可能なものもストリームと呼ぶ。
例えば>>385のリンク先の.NET Frameworkの例を見てみ
394:デフォルトの名無しさん
16/11/17 14:05:19.03 /0Wfoiwq.net
しかし、本物のアホだな
395:デフォルトの名無しさん
16/11/17 14:08:02.50 SIbcJcrO.net
Wikipedia好きみたいだから、本家からも引用しときましょうか。
URLリンク(en.wikipedia.org)(computing)
> In computer science, a stream is a sequence of data elements made available
> over time. A stream can be thought of as items on a conveyor belt being
> processed one at a time rather than in large batches.
Google翻訳:
> コンピュータサイエンスでは、ストリームは時間の経過とともに利用可能になる
> 一連のデータ要素です。 流れは、大きなバッチではなく、一度に1つずつ処理
> されるコンベヤベルト上の物品と考えることができる。
396:デフォルトの名無しさん
16/11/17 14:12:38.46 SIbcJcrO.net
>>388
> 例えば>>385のリンク先の.NET Frameworkの例を見てみ
これと>>376が同じに見えるのか。
こりゃ会話するだけ無駄だわ。
397:デフォルトの名無しさん
16/11/17 14:24:01.83 /0Wfoiwq.net
今日はこのぐらいで勘弁しといたるわ、まで読んだ。
しかし重症だね。
398:デフォルトの名無しさん
16/11/17 14:27:22.96 F8tQbCJJ.net
煽りたいだけの奴が的外れな事を言って引っ込みがつかなくなったパターンですね
399:デフォルトの名無しさん
16/11/17 14:28:32.31 /0Wfoiwq.net
まあお馬鹿さんが調子にのるといけないので一応突っ込んでおくけど、
>>390の英語版のWikipediaの記事、引用してる本人が読んでないんだろうね
Exampleにはこうも書いてある
On Unix and related systems based on the C language, a stream is a source or sink of data, usually individual bytes or characters. Streams are an abstraction used when reading or writing files, or communicating over network sockets
そこにはシーケンシャルなメディアに限定するなんて記述はない。
当たり前だ磁気テープや穿孔テープの時代じゃあるまいし、そんな1960年代の用法を
有難がって守っても弊害しかないからね。