まーたやっちまった(設定ファイルの設計)

えーと、毎度のことながら、設定ファイルの設計でまた悩んでいる。


いちおー暗号化やらなんやらの実装が終わって、いざ
「それじゃ暗合すべきかどうかをどうやって判断しよう」というところまで
来たのですが、ここで設計上また考慮が足りない部分が発生してしまった。


現在想定している設定ファイルの、twitter 用のファイルは以下の通り。

ServiceName:	twitter
	Parameter:
		$Basic:	ベーシック認証
			Type:	Boolean
			$UserID:	ユーザーID
				Type:	Text
			$Password:	パスワード
				Type:	Password
	Authentication:
		Basic:
			Domain:	http://twitter.com/
			UserID:	$UserID
			Password:	$Password
	SendMessage:
		Uri:	http://twitter.com/statuses/update.json
		Method:	Get
		Request
			status:	$Message


ここでの曲者はTypeのところで、用はこのTypeの種類によって、変数を
暗号化して保持するかしないかを決めている。ただし、当初の設計では
「子供の要素は公正に扱い、特別な意味を持たない」というポリシーで造っているので、
ここでTypeが特別な意味を持つと具合がわるい。


今回考えている案は以下の2つ

  • このファイルを解析するクラスはそのままにして、Typeを特別扱いするクラスを継承させて作る。
  • ポリシーを曲げて、このファイルを解析するクラス事態にTypeに意味を持たせる。


まー、他人から見るとどーでもいいことで悩んでいるのかもしれませんが、
これが結構本人からすると重要な違いだったりするのです。
っていうか要は頑固でへそ曲がりなのでなかなか決められない(笑)。
なんかこういうときに考えの指標になるものがあればいいのですが、
何かいいものはないですかねぇ。。。