2012-04-19 9 views
2

私は現在、ユーザーがデバイスの設定を読むことができるアプリケーションを開発中です。設定はXMLとして保存されます。可変範囲の変数セットに対して検証する方法は?

私が直面している問題は、アプリケーションの検証を定義する方法です。たとえば、XMLファイルに格納されている値の大部分は、さまざまな範囲内になければなりません。 0〜2,1〜50,10文字または20文字など

検証する必要があるこれらの制約がたくさんあります。バージョン2の場合は範囲​​をハードコードしたくありませんデバイスの設定ファイルが出てくる範囲の異なるセットを持っています。例えば。 0 - 2の代わりに0 - 4になり、20文字の代わりに40が許可されます。

私はこれにどのようにアプローチすればよいですか?バリデーションルールを別々のXMLファイルに保存する必要がありますか?このデバイスのハードコードされた構成範囲を持つクラスを定義し、その構成範囲を持つデバイスのバージョン2の新しいクラスを作成する必要がありますか?

答えて

0

それはXMLにあなたが行動を定義するので、一種の宣言型プログラミングは、XML内で行わである可能性があります。しかし、それは柔軟ではないし、あなたは簡単に繁栄することができます。

私が個人的にやってみたいのは、コード内のロジックを維持することですが、ソースXMLのデータをストアに対してチェックする必要があるパラメータ範囲は、MatchData.xmlです。

これが役に立ちます。

0

このような場合には、ほとんどの場合、外部設定ファイルが優先されます。バリデーション(バリデータ)を実行するオブジェクトを定義することができます。バリデータオブジェクトがインスタンス化されると、様々なバリデーション項目のすべての範囲を含むバリデーションルールオブジェクトがインスタンス化されます。私はXMLファイルを使用してこのオブジェクトをシリアライズ/デシリアライズし、そのファイルはあなたのアプリの配布に含まれます。

関連する問題