[過去ログ] プログラマの雑談部屋 ★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