実現したいこと
保守しやすいようにソースの見直しを行っています。
その中で、赤ならば1、白ならば2、というように、画面表示用の文字列と固定値が紐づいているデータがあります。
このようなデータの参照が複数クラスに散らばっているので、まとめたいと考えています。
発生している問題
Aクラスでは、コンボボックスを作成するために、keyに1、valueに“赤”を設定しています。
Bクラスでは、コンボボックスのkey値を用いて、1ならばXXXを表示、という処理を行っています。
まとめる方法として、以下を実施しました。
1.定数クラスにまとめる
定数クラスを作成し、定数クラス.red = 1としてソースの置き換えを行いました。
問題点として、定数クラス.on = 1というものも定義していて、コーダーが「1」という値だけで判断し、Aクラス、Bクラスで”赤”のkey値を指す定数がばらけてしまいました。
少量であれば問題がないのですが、今後バグにつながるのではと危惧しています。
2.コンボボックス、表示、それぞれのMapを作成する
コンボボックス生成用のクラスにMap<key, value>、表示用のクラスにMap<key, message>を用意して、突合せを行うようにすればよいのかと考えました。
ですがこの場合、key値が変わった場合に2か所直す必要があるので、保守性を高めるという点では良くないのかと思っています。
どのようなまとめ方が最適であるのか、ご教示いただけますと幸いです。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/14 06:01