飲み会でのネタ:プロパティファイル
Javaの話に限った事ではないんですが…まぁ初期化ファイルとかあるじゃないですか。
アレが格好悪いなーともっと賢くならないかなぁと数日悩んでいた訳です。
ちょっとは面白いネタになるかなと振ってみたのですがどうでしたかw
開発用と本番用のファイルがあるとして、開発用のファイルを変更したら本番用も修正しないといけないじゃないですか。
なんで?とめんどくさいし間違えるし、そもそもプロパティファイルを手書きってセキュアじゃねーよみたいな。
その辺りをちょこちょこ。
プロパティファイルから以下のようなクラスを生成。
public class BaseProperty{ public final String TEST_STRING=getProperty("base.property","TEST_STRING"); public final String TEST_IP=getProperty("base.property","TEST_IP"); public final int TEST_COUNT=getProperty("base.property","TEST_COUNT"); ... public boolean verify(){...}; } public final class LocalProperty extends BasePropertyFile{ public final String LOCAL_STRING=getProperty("local.property","LOCAL_STRING"); public boolean verify(){...}; } public final class ServerProperty extends BasePropertyFile{ public final String SERVER_STRING=getProperty("server.property","SERVER_STRING"); public boolean verify(){...}; }
書いてて微妙だなぁとか思った。
verifyは起動時にファイルチェックして設定されている値が正しいかどうかを厳密にチェック。
流石にここは自動化できないので手書き。
ファイル分けるとこをクラスで分けてみたけど…うーん美しくないかもextendsとかががが。
ファクトリ任せでもいいけどリードオンリーな値なんだからServerProperty.SERVER_STRINGとかでアクセスしたいしなぁ…
そもそもこんな事で悩んでるのは僕だけ!?みんなプロパティファイル(笑)なんか使ってねーよとかそんな話!?