staticにしてみた

今までセーブすべきデータ(種、野菜その他もろもろのデータ)をもつクラスmotimonoをmainのformで宣言して各フォームに適宜ポインタを設定して参照させてたんだけど、だんだんめんどくさくなってきた。

「そういえばDBっぽく使うんならstaticつけて静的クラスとして扱えばよくね?」

ということで静的クラスに変更。
これで

this.pointer.motimono.ほにゃらら

とかしなくてよくなったんで若干ソースが見やすくなった!やったねたえちゃん!

これのついでにDate構造体も静的にしちゃえー。
…ああ、構造体はstaticは付けれないじゃないのよ。ということで静的クラスに。

「もう日付関係の処理もdateクラスに突っ込めばよくね?」

ということで移植。

とここで、formのbuttonとかlabelに関して処理を行ってることに気づき面倒ながら切り離すことに。
ついでに次の日に移行するときのこまごまとした処理を細かくメソッドに分けておいてぱっと見わかりやすく(?)してみた。

とここで金などの変化処理がうまいこと切り離せないことが発覚。
なぜかというとその辺の処理をしたら画面上の表示も変えないといけないから。
ちょっと悩んでところで、返り値で変化後の表示文字列を返せばよろしいのか、と気づき変更。

さらに
「どうせ金の処理後の表示ってどこも同じだから親で作って継承すればいいじゃねえか」
ということで親クラスnformを作成…と思ったが
VSC#の仕様でFormを継承したクラスをさらに継承するとデザイナにうまいこと反映してくれないという不自由さがあるのでやめておくことに。

この辺は買えといたほうがいいんだけどねー。
現在の状態だとmainのformに他のformががっつり依存しすぎてる部分が多いんでよろしくないんだよなー…

あと持ち物リスト画面で表示がおかしいと思ってよく見たらListBoxのSelectedIndexが別のやつを指していた。
…なにやってんだかね。

こんな感じでやっぱりあんまり進んでいないという開発。ナンテコッタイ