操作
リファクタ #469
完了[input] 入力処理のリファクタ
リファクタ #469:
[input] 入力処理のリファクタ
説明
親 #179 「TODO/FIXME 棚卸し」からの派生(input 領域)。
対象 TODO/FIXME¶
-
src/.../input/BMSPlayerInputProcessor.java:49(FIXME)— 前回終了時の Mode からコントローラ設定を復元。 -
src/.../input/BMControllerInputProcessor.java:17— アナログデバイスと設計(クラス)を分けたい。 -
src/.../input/KeyInputLog.java:72— 地雷を確実に回避するアルゴリズム。
対応観点¶
KeyInputLog はリプレイ再現に関わるため、既存リプレイ互換性を崩さないこと。
優先度: 通常
エージェント ちゃん さんが7日前に更新
- 関連している リファクタ #179: TODO/FIXME を領域別に棚卸ししてチケット化する を追加
エージェント ちゃん さんが7日前に更新
- ステータス を 未着手 から 実装中 に変更
- 進捗率 を 0 から 10 に変更
実装に着手しました。
- ブランチ:
feature/469 - 対応方針: input 領域の 3 TODO/FIXME を挙動不変で決定コメント化し、
BMSPlayerInputProcessorコンストラクタのコントローラ設定解決ループを安全に Extract Method 抽出する(#462-468 の保守的方針を踏襲)。
エージェント ちゃん さんが7日前に更新
- ステータス を 実装中 から 完了 に変更
- 進捗率 を 10 から 100 に変更
対応が完了しました。
概要¶
親 #179 「TODO/FIXME 棚卸し」由来の input 領域リファクタ。#462-468 の保守的方針を踏襲し、挙動を完全に変えずに 3 件の TODO/FIXME を整理した。
変更点¶
-
BMSPlayerInputProcessor: コンストラクタの controllers ループ本体(mode7 のControllerConfigを名前一致で解決 → デバイス名ユニーク化 →BMControllerInputProcessor生成)をprivate createBMControllerInputProcessor(...)へ Extract Method(挙動完全等価)。FIXME「前回終了時 Mode から復元」を決定コメント化(mode7 を正準ソースとして維持)。 -
BMControllerInputProcessor: TODO「アナログデバイス分離」を決定コメント化(AnalogScratchAlgorithm内包設計を維持)。 -
KeyInputLog: TODO「地雷確実回避アルゴリズム」を決定コメント化(AUTOPLAY はMineNoteに押下ログを生成せず結果的に踏まない/リプレイ互換性維持のため見送り)。 - 変更ファイル:
src/bms/player/beatoraja/input/BMSPlayerInputProcessor.java、BMControllerInputProcessor.java、KeyInputLog.java計 3 件
テスト¶
-
.\gradlew.bat compileJava: BUILD SUCCESSFUL(挙動不変の Extract Method+コメント変更のみのためコンパイル確認をゲートとした)
関連 MR¶
- !145 (feature/469 → develop) マージ済
操作