トップページ⇒tech
1002コメント330KB

クラス名・変数名に迷ったら書き込むスレ。Part27 [無断転載禁止]©5ch.io

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2016/10/16(日) 08:01:30.20ID:NOg6ZxxU
クラス名、変数名のつけ方に悩んだら書き込むスレです。

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

前スレ
クラス名・変数名に迷ったら書き込むスレ。Part26
http://echo.2ch.net/test/read.cgi/tech/1450622191/
0175デフォルトの名無しさん2016/10/22(土) 19:20:25.73ID:wVjPdD/+
>>174
それお前の中で変化してるだけじゃねーの
0176デフォルトの名無しさん2016/10/22(土) 19:22:51.88ID:rJrHw2K4
>>173
世界は言い過ぎだけどこのスレ程度のレベルじゃ冗談抜きにその通りだと思うよ
0177デフォルトの名無しさん2016/10/22(土) 19:23:36.80ID:eh8upSc0
さすがに頭おかしい
0178デフォルトの名無しさん2016/10/22(土) 19:29:20.29ID:eh8upSc0
特別何かをするわけでもないただのエイリアスを無闇に増やすな

なんて新入社員研修で教えてることなんだが、なんでこんなことでグダグダといつまでも騒いでんだよ
0179デフォルトの名無しさん2016/10/22(土) 19:29:22.73ID:rJrHw2K4
>>177
だって君ら書き込みみればわかるけどズブのアマチュアだろ?
オレはいちおう金もらってシステム開発してるからね
0180デフォルトの名無しさん2016/10/22(土) 19:30:25.32ID:eh8upSc0
>>179
22で入社してもう今年で37なんだが
0181デフォルトの名無しさん2016/10/22(土) 19:33:12.94ID:rJrHw2K4
>>180
まあそういう人もいるよな
メゲズに頑張ってくれ先輩
0182デフォルトの名無しさん2016/10/22(土) 19:33:59.10ID:wVjPdD/+
>>179
そんな珍しくもなんともないもんで自分が特別だと思いこんでたわけか
バイトを始めた学生か何かか?
0183デフォルトの名無しさん2016/10/22(土) 19:37:48.27ID:eh8upSc0
>>181
メゲるも何も、呆れしか感じんぞ

改めて見てやるが、getPopsの中身の処理を書いてみな
0184デフォルトの名無しさん2016/10/22(土) 19:40:01.84ID:lAgDZlKo
職業プログラマが何かの箔になると思ってる子をいじめるのはそれぐらいにしなさい
0185デフォルトの名無しさん2016/10/22(土) 19:46:56.14ID:rJrHw2K4
>>183
return Music.Where(popsPredicate);

述語は要件と顧客の気分次第で不定な
0186デフォルトの名無しさん2016/10/22(土) 19:48:14.90ID:eh8upSc0
>>185
なるほど
findないしそれに該当する汎用アクセサは?
0187デフォルトの名無しさん2016/10/22(土) 19:54:00.26ID:rJrHw2K4
>>186
Music
0188デフォルトの名無しさん2016/10/22(土) 19:55:53.56ID:eh8upSc0
>>187
うん??
Musicはメンバ等ではなくグローバルに置いてるのか?
ってことはgetPopsもグローバル?
0189デフォルトの名無しさん2016/10/22(土) 20:01:05.09ID:rJrHw2K4
>>188
return Music;
って書けばお気に召すのかな?
こっちはちっぽけなスマホで打ってるんだ
察してくれ
0190デフォルトの名無しさん2016/10/22(土) 20:05:28.90ID:4bv8Zxei
何でもいいけどいい加減もう止めたらどうだろう。

有意義な議論なら俺個人はどんどんやってほしいけど、
今のこれはあまりに下らなすぎる。
0191デフォルトの名無しさん2016/10/22(土) 20:06:13.44ID:eh8upSc0
>>189
それにしてもだなあ。。。
カプセル化の何の意味もない構造に頭痛がして来たが、それはひとまず置いておくにしても
要するにgetPopsはただのエイリアス、ラッパーだろう?

getPopsが作られる前、またはそれを知らないメンバが実装した箇所ではfindが使われてる可能性がある
同じものを取って来るのに2種類以上の取得方法があるのは好ましくない
01921492016/10/22(土) 20:09:05.84ID:nST3ahFj
ごめん>152の言ってる意味が分からない。
自分が周回遅れなのは間違いないんだけれども。

もちろん>127を参照しろということは分かるんだが
127のどこが、ソース中に書かれる文字列をキーとして使う処理の例や説明なの?
0193デフォルトの名無しさん2016/10/22(土) 20:16:35.71ID:/a8S//3o
>>158
リビルド不要?
最近の言語は class や interface とやらでリビルドせずに enum の要素増やしたり GetEnka( ) を追加できるのか?
0194デフォルトの名無しさん2016/10/22(土) 20:20:59.15ID:/a8S//3o
>>192
マジで言ってるならもう少し頑張った方がいいと思う
少なくとも >>127 にはリテラル文字列はないだろ
0195デフォルトの名無しさん2016/10/22(土) 20:22:12.22ID:rJrHw2K4
>>191
カプセル化は十分だよ
たったこれだけのクラスインターフェースからクラスの実装詳細やデータ層の構造までわかるのかい?

始まりはともかく今はもうGetPopsはただのエイリアス・ラッパーではない
ドメインで定義されたなんらかの有用なサブセットを取得するGetPopsと名付けられたメソッドだ
なんらかの有用なサブセットとはドメインの用語でつまりポップスのことだがポップスは単にGenre=="pops"を満たすmusicということではない
また今後ドメインの深化に追従してメソッド名が変わるかもしれないが今はまだGetPopsでよい
GetPopsを使う場面で汎用メソッドを使う事は確かに害悪でプログラマは反省しなければならない
しかしメソッドのみを使い同じ述語をあちこちにばらまくのもまた害悪だ
幸いにも開発環境やアナライザは日々賢くなっている
重複したコードをメソッドに一本化する作業はそれほど手間はかからない
気合を入れて一度やってしまえばその後の述語の変更は一回で済む
しかし述語をあちこちにばらまいたまま放置すれば述語の変更のたびに面倒な作業を強いられる
0196デフォルトの名無しさん2016/10/22(土) 20:25:01.74ID:IpUTRyqC
要するに、単なるラッパーであるgetpopsを提唱したらフルボッコに論破されたから
意味を差し替えて俺は正しいと言い張ってるわけね
0197デフォルトの名無しさん2016/10/22(土) 20:31:33.39ID:rJrHw2K4
>>193
enumはポリモーフィックなクラスファミリに置き換えられるし置き換えるべきだ
クラスファミリーにクラスを追加するのに全体のリビルドは必要ない
GetEnkaが必要になったとして追加するクラスを賢く選択すればリビルドの必要もなくシステムを拡張できる(なにも馬鹿正直に既存のリポジトリに追加する必要はない)
既存のクラスにどうしても追加したい場合は部分的なリビルドが必要になるが全体をリビルドする必要はない
0198デフォルトの名無しさん2016/10/22(土) 20:32:37.44ID:rJrHw2K4
>>196
実にシステム開発的な流れだろう?
0199デフォルトの名無しさん2016/10/22(土) 20:34:43.03ID:IpUTRyqC
>>198
そういうのはただの屁理屈と言う
0200デフォルトの名無しさん2016/10/22(土) 20:39:11.57ID:rJrHw2K4
>>199
というかこの流れもある程度予測してGetPopsを最初にメソッド化したと言っていい
0201デフォルトの名無しさん2016/10/22(土) 20:40:15.05ID:nST3ahFj
>>194
大真面目に頑張った結果なんだが
お前さんの言うとおり、まさに「>127にリテラルはない」としか読めない。

そもそも>149のどこを否定してるの?
0202デフォルトの名無しさん2016/10/22(土) 20:41:14.01ID:eh8upSc0
>>195
そりゃ十数年も新人教育やってりゃ大体の構造は手に取るように分かるさ
先程の例ではMusicインスタンスを直接外部に渡してしまうのがまずい
どうしてもgetPopsを作るなら「汎用アクセサは用意しない」という回答が正解だったんだが

しかし、抽象的な表現で逃げるのは君の良くない癖だな
たまにそういう子も入ってくるけど
0203デフォルトの名無しさん2016/10/22(土) 20:43:22.25ID:IpUTRyqC
>>200
中身のコードを書いてみせた時点で想定しきれてないな

まるで中学生の屁理屈じゃあないか
ホントに働いたことがあるのかどうかも疑わしい
0204デフォルトの名無しさん2016/10/22(土) 20:45:42.06ID:rJrHw2K4
>>202
お前が書けと言ったんだろうが〜
というか汎用メソッドをパブリックにした覚えもないしMusicがミュータブルであると言った覚えもないな
これでいいかおっさん?
0205デフォルトの名無しさん2016/10/22(土) 20:48:06.11ID:eh8upSc0
>>204
俺は「汎用アクセサは?」としか聞いてないが

後付けも良くない癖だぞ、君
そういう子は大抵長続きしない
0206デフォルトの名無しさん2016/10/22(土) 20:50:01.78ID:rJrHw2K4
>>205
子供かw
0207デフォルトの名無しさん2016/10/22(土) 20:50:53.25ID:smXSLIN9
200 : デフォルトの名無しさん 2016/10/22(土) 20:39:11.57 ID:rJrHw2K4
>>199
というかこの流れもある程度予測してGetPopsを最初にメソッド化したと言っていい

↑さすがにワロタわw
キミ、いじめられっこの経験あるやろw
泣いてないモン!って言いなれてるなさすが
0208デフォルトの名無しさん2016/10/22(土) 20:52:35.58ID:eh8upSc0
>>206
言ってないものを言ったと言い張られても困る
0209デフォルトの名無しさん2016/10/22(土) 20:52:51.02ID:/a8S//3o
>>197
> モダンな言語ならリビルド不要な拡張方法なんていくらでもあるし
って豪語してたのに
> 全体をリビルドする必要はない
ってだけなのな
そんなの動的リンク使えばいくらでもできるわな w
0210デフォルトの名無しさん2016/10/22(土) 20:56:10.95ID:/a8S//3o
>>201
> そもそも>149のどこを否定してるの?
マジで言ってるの?
ちゃんと引用してるんだが...
> ソースにリテラルを直接書くことって、あんまり無さそう
0211デフォルトの名無しさん2016/10/22(土) 20:56:20.59ID:rJrHw2K4
>>207
すまん
子供の頃はいじめっ子だったわ
いわゆる学校のボスザル的チンピラ
0212デフォルトの名無しさん2016/10/22(土) 20:58:24.55ID:rJrHw2K4
>>209
そうだよ
適切に処置すればリビルドなしでシステムを拡張できる
幾らでもできるからさっきそう言ったじゃん?
0213デフォルトの名無しさん2016/10/22(土) 21:00:10.95ID:xVGM3Eif
リビルドしてんじゃねーか
0214デフォルトの名無しさん2016/10/22(土) 21:04:05.92ID:nST3ahFj
>>210
ますます分からん

「ソースにリテラルを書くことはない」という主張の否定として
「ソースにリテラルは書かずにこうする」という例を挙げるのは、
話の流れとして成立するの?

議論とかディベートとか、あんまり学んでこなかったからなあ。
すまん
0215デフォルトの名無しさん2016/10/22(土) 21:15:11.07ID:NG/YSHI2
>>212
いやリビルドしてんだろカス
0216デフォルトの名無しさん2016/10/22(土) 21:19:28.67ID:OSlnnavW
>>214
周回遅れ
って言う言葉もわからんの?
> 「ソースにリテラルを書くことはない」という主張の否定として
否定なんてしてないぞ
まだそんなこと言ってるのかよ
って言ってるだけ
ディベートとか以前にまず正しい日本語を学ぶべきかと
0217デフォルトの名無しさん2016/10/22(土) 21:19:28.86ID:vcedYMQM
あのさあ、おまえらタグって言葉は知ってるんだよな?
0218デフォルトの名無しさん2016/10/22(土) 21:20:47.17ID:OSlnnavW
>>212
はいはい、嘘つきはもう来なくていいから
0219デフォルトの名無しさん2016/10/22(土) 21:39:06.58ID:nST3ahFj
>>216
ああそういうことか、すまんかった
0220デフォルトの名無しさん2016/10/24(月) 10:20:14.55ID:UouFXqTF
>>54から話広がり過ぎワロタ
0221デフォルトの名無しさん2016/10/24(月) 10:48:41.37ID:fQGKWk+u
基本外野が喚くところですし
0222デフォルトの名無しさん2016/10/24(月) 12:44:29.11ID:83bvzfHf
画面遷移メソッドの名前なんですがどちらが優れていますか???

openXxxWindow(p)
openYyyWindow(p1, p2)
openZzzWindow()

openWindow("Xxx", p)
openWindow("Yyy", p1, p2)
openWindow("Zzz")
0223デフォルトの名無しさん2016/10/24(月) 12:46:27.62ID:+WgIUVwT
>>222
それ名前の問題じゃないだろ。
0224デフォルトの名無しさん2016/10/24(月) 13:00:17.56ID:csInVVUs
>>222
完全にアルツハイマーだな。
0225デフォルトの名無しさん2016/10/24(月) 13:37:47.14ID:fQGKWk+u
>>222
Xxx, Yyy, Zzz, p, p1, p2の補足が欲しい
0226デフォルトの名無しさん2016/10/24(月) 15:21:51.22ID:pKBfRUrb
>>225
Xxx, Yyy, Zzzは画面名で英語の文字列です
p, p1, p2は次の画面に渡すパラメータで画面によって異なります
0227デフォルトの名無しさん2016/10/24(月) 15:28:35.97ID:5ENMhkpM
>>1
> 命名規則や設計の善し悪しについて議論するのは基本的に禁止。

そもそもこれしか話すことないのになぜ禁止したし
0228デフォルトの名無しさん2016/10/24(月) 15:50:27.65ID:fQGKWk+u
>>227
xyz座標と思ったわw
Win32APIならCreateWindowってのがある
0229デフォルトの名無しさん2016/10/24(月) 15:56:52.07ID:+RICRJtL
てめえみたいなゴミがギャーギャー喚いてうぜえからだよ
0230デフォルトの名無しさん2016/10/24(月) 16:11:48.75ID:Gldo3h3g
>>226
正直、画面の基底クラスを作って各画面を継承で実装した方がスッキリ書ける案件だと思うけど…

どうしてもopenWindowで実装したいなら後者で
似たような動作をする関数(win標準のcreateWindow)が既にあるなら使い方も同じ感じにしたほうが分かりやすい
0231デフォルトの名無しさん2016/10/24(月) 16:20:55.50ID:f1Oob2xq
幼稚なバカが悪乗りして悪ふざけでやってるレスにマジレスする奴も重症だな
0232デフォルトの名無しさん2016/10/24(月) 18:29:15.85ID:wn6/eztm
>>227
名前をレスせず、命名規則や設計の善し悪しのレスしかしないバカがスレを消費するだけで
一向に命名しない流れが続いたから禁止された。
何年も前の話。

ここ最近のテンプレ読めないバカが集まって、やはり一致した結論が出てないのを見て分かるだろ。

このスレは「○○について名前を考えてください」というお題に答えるだけのマジレス歓迎の大喜利スレ。
0233デフォルトの名無しさん2016/10/24(月) 18:34:05.48ID:Ri+KQSou
次スレは議論も禁止したほうがいい
質問者が求めてるのはズバリかヒントのワードであってバカどもの薀蓄なんてお呼びじゃない
0234デフォルトの名無しさん2016/10/24(月) 18:41:13.01ID:Ja2raL71
議論じゃないんだな
戦争なんだな
テーマに対する意見を交わすんじゃなくて
相手に対する攻撃を応酬し合ってるんだから
0235デフォルトの名無しさん2016/10/24(月) 18:45:32.24ID:f1Oob2xq
禁止して実効性があるの?
ないのは明白だよねw

前にも書いたが、テンプレを引用して絡んでくるバカが登場する時としない時があるのは何故?
要するに、本来スレ違いの議論にそいつ自信が参加してる時には現れないのは明白なわけ。

そして、これは個人的な感想(しかし自信はある)だが、実にどうでもいいお馬鹿な「議論」
が続いている時に限ってそのおバカは現れない。まあ語るに落ちてるよね。

要するに、ずいぶん前も書いたけど、「〜禁止」なんてルールはご都合主義のバカに他人のレスに絡む口実を与えて、
かえってスレが荒れる原因を作るだけ。
0236デフォルトの名無しさん2016/10/24(月) 18:52:04.73ID:R8FyZAi8
マウンティング犬は今日も元気です
0237デフォルトの名無しさん2016/10/24(月) 18:55:23.90ID:wn6/eztm
>>235
禁止してないから早速死んでくれていいよ

ってくらい無能な長文だね。
0238デフォルトの名無しさん2016/10/24(月) 18:57:37.38ID:fQGKWk+u
>>235
> テンプレを引用して絡んでくる
って事は「命名規則や設計の善し悪しについて議論」してたんだよな?
その割には「マジレスする奴も重症」って矛盾してね?
0239デフォルトの名無しさん2016/10/24(月) 19:02:36.61ID:f1Oob2xq
>>238
日本語でお書きください
0240デフォルトの名無しさん2016/10/24(月) 20:14:28.55ID:fQGKWk+u
>>239
どこがわからない?
命名規則や設計の善し悪しについて議論してたからテンプレを引用して絡まれたんだろ?
0241デフォルトの名無しさん2016/10/24(月) 20:32:37.69ID:f1Oob2xq
>>240
何を言ってるのかさっぱり意味が分からん。
0242デフォルトの名無しさん2016/10/24(月) 20:42:00.45ID:fQGKWk+u
>>241
そうか
じゃあそのままでいいわ
0243デフォルトの名無しさん2016/10/24(月) 21:19:09.43ID:XjvnPt+s
>>235をサニタイズするよ

禁止して実効性があるの?
ないかもね // 未検証な事柄を主観で断定しない
/* 思い込みと私怨の開陳は全カット */
禁止を押し付けらるのってなんか嫌だし(´・ω・`) // 個人的な感情であると説明しつつAAで和ます
0244デフォルトの名無しさん2016/10/24(月) 21:40:24.47ID:bN8c+nPb
こいつの言語サニタイズしたほうがいいな
0245デフォルトの名無しさん2016/10/24(月) 21:59:58.35ID:PrHBZIpa
このくっそ下らねぇやりとりで200レスも消化するとか底辺はやることが違うなと思う
0246デフォルトの名無しさん2016/10/24(月) 22:17:53.78ID:mxK0EHtA
こんな塵芥と一緒にするとか底辺に失礼だろ
0247デフォルトの名無しさん2016/10/25(火) 05:19:39.47ID:OZkbpJ7G
設計の善し悪しまで踏み込んでるのにタグ知らなかったんだぜ。
0248デフォルトの名無しさん2016/10/25(火) 07:34:03.48ID:MZfG2R+8
この場合のタグって何?
0249デフォルトの名無しさん2016/10/25(火) 08:05:43.55ID:zO0NytLF
値札のことだよ
0250デフォルトの名無しさん2016/10/25(火) 09:19:12.44ID:g86pOwEK
サイズだろ
0251デフォルトの名無しさん2016/10/25(火) 09:52:03.08ID:n342IJVH
例えるなら、人が道を聞いてるのに服装や交通ルールから説明してるんだよなあ
でも道順を全く説明できないただの交通ルールオタク
0252デフォルトの名無しさん2016/10/25(火) 09:58:26.93ID:6yXN+QBc
不良品タグはってゴミ置き場にポイが妥当
0253デフォルトの名無しさん2016/10/25(火) 10:56:42.10ID:s9TG/wfT
このスレッドは落として
設計・命名スレにしようや
命名と設計は不可分だからな
0254デフォルトの名無しさん2016/10/25(火) 12:04:09.41ID:SxIO+8ai
14年続くスレを独断で終了させて立て直すとはさすが無能タグ

無能レスの応酬でなに一つ解決しないのにそんなスレが機能する訳ないだろ
14年分レス見てからテンプレ形成に至った意味を理解しろやハゲ
0255デフォルトの名無しさん2016/10/25(火) 12:08:46.85ID:ZMREunEJ
設計まで口出しするなら質問時に言語とコードも出してもらわないと話にならないな
0256デフォルトの名無しさん2016/10/25(火) 12:14:47.88ID:n342IJVH
ちょっと考えれば分かることだけど、質問者の言語やコーディング規約や社風や趣味を
許容できない奴が宗教論争をおっぱじめるのが目に見えてる
つーか既になってる
0257デフォルトの名無しさん2016/10/25(火) 12:27:30.19ID:EzZ4fPwl
14年続けてこの有様じゃろくな奴がいなかったんだろうな
潰したほうが賢明だよ
まだ宗教論争のほうが実りがある
0258デフォルトの名無しさん2016/10/25(火) 12:44:39.57ID:qCdUY5e1
・14年ずっと同じ人がはりついているわけではないので継続年数は関係ない
・この有様→つぶした方がマシになる根拠がない(設計に口出しすると何がマシなのだ?)
0259デフォルトの名無しさん2016/10/25(火) 13:12:06.50ID:1R5yIvw6
潰すも何も、需要があると信じているなら新スレにさっさと移動すればいいだけの話。

設計・命名スレ
http://echo.2ch.net/test/read.cgi/tech/1477368563/
0260デフォルトの名無しさん2016/10/25(火) 21:01:29.23ID:U4JQUv53
スレが用意されると (書いてもいい場所が用意されると) 急に静かになるわけね
0261デフォルトの名無しさん2016/10/25(火) 21:18:23.14ID:Tozirg6q
リクエストを処理する

の処理はどんなのがいいですかね
0262片山博文MZ ◆T6xkBnTXz7B0 2016/10/25(火) 21:35:01.01ID:tNFHqmMD
respond
0263デフォルトの名無しさん2016/10/25(火) 22:29:29.89ID:QNrvjVG6
>>261
HandleRequests
DealRequests
0264デフォルトの名無しさん2016/10/25(火) 22:41:57.40ID:Tozirg6q
ちょっと抽象的な質問でしたね

単語調べた結果respondに決めました
ありがとうございます!
0265デフォルトの名無しさん2016/10/26(水) 00:29:53.63ID:8ZG+uxSI
特殊処理したいファイルを絞る正規表現の文字列の変数名をregex_specialFilesみたいにしたくなるのですがまずいでしょうか
実際にはspecialにはもっと具体的な単語が入ります
specialFilesRegexだとspecialがどこにかかるか分からない気がしてしっくりこないんです
0266デフォルトの名無しさん2016/10/26(水) 00:46:49.43ID:Hu8g6Oi9
>>265
かっこつけて(?)無理に前置詞を省こうとするから意味不明な名前になるんだと思う
基本英語そのままでOK

RegexForFilesTo特殊処理

個人的には正規表現文字列をRegexと表現するのは嫌いなので、
PatternForFilesTo特殊処理

の方がいいと思う。
0267デフォルトの名無しさん2016/10/26(水) 01:02:23.89ID:8ZG+uxSI
>>266
なるほどその通りですね
前置詞が完全に頭から抜けてました
regexも確かにpatternの方が分かりやすそうです
ありがとうございます、スッキリしました
0268デフォルトの名無しさん2016/10/26(水) 01:43:11.56ID:LebVIXiL
いやむしろ説明的な長い変数名は良い習慣ではない
0269デフォルトの名無しさん2016/10/26(水) 09:10:48.26ID:R7bTf3Ct
俺も変数名を文章っぽくにするのは好きじゃないな。
スコープがおかしな事になってるときになりがちだし。
0270デフォルトの名無しさん2016/10/26(水) 09:49:31.37ID:EekeRq3r
>>269
では対案をどうぞ
0271デフォルトの名無しさん2016/10/26(水) 11:08:46.69ID:i9LqHSRB
>>265
ハードコーディングしないでちゃんと名前でリソース管理したほうがいいよ
new regex(resouceManager.getString("pattern for special files"))
こうしておかないと正規表現の数が増えるたびにコードの書き換え、リビルド、テスト、公開、とめんどくさい作業をしなければならないから最悪
0272デフォルトの名無しさん2016/10/26(水) 12:33:54.58ID:EekeRq3r
>>271
スレ違いの上に、ほとんど強迫神経症の態度だねそれは。
0273デフォルトの名無しさん2016/10/26(水) 12:42:16.41ID:wESs4v7p
>>271のやり方でも数がふえたらリビルドが必要な件
0274デフォルトの名無しさん2016/10/26(水) 14:41:24.69ID:4rKIhUw9
【質問者が”設計変更まで視野に入れつつ”命名に困ってここに来てる】
と思うなら、これ作ってくれてるんだから移動誘導待機なりしてくれ。
設計・命名スレ
http://echo.2ch.net/test/read.cgi/tech/1477368563/


ここのスレは設計がクソだったとしても質問者のレベルの範囲で返しとけばいいんだよ。
■ このスレッドは過去ログ倉庫に格納されています