[過去ログ] プログラマの雑談部屋 ★374 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
798: d(u _ -y) r~ 10/27(月)12:18 AAS
まずオブジェクト指向にこだわってるのか意味のないメソッドを作ってる
@cardlist.sort_by辺りの処理

それからこの程度の規模のゲームでGameクラスはいらない。そこで多くを分担するんじゃなく、Playerやストラテジークラスに正しく責務の分担ができる
上で言ってるやつもいるけどGameStateな

リファクタリング前に特に気になったのは、場が空だったらプレイヤーが場にカードを出せるっていうplay_selected関数
if 場が空であれば、then play_selectedを呼び出す。 だ
場が空であるかどうかまでplay_selectedの中で判定してるのは責務分離できてない
なのでそこは改造した

最も次にやるべきなのはGameクラスを捨てること、そこのinitializeが闇鍋責務になってるから分離すること
Game.start();くらいは残してもいいかもしれんが、Gameクラスなんて名前のところにロジックを書くべきじゃない
せいぜい許されるのは初期化 config , start くらい

カードを配る処理ってのはストラテジー(GameState)に持っていけ
case phase ; when: card_init ... when: play中 ... when: ゲーム終了 ... でフェーズ作るのでもなんでもいい。
このソースにはStateの概念がない
1-
あと 204 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.007s