2016-08-25 11 views
0

私はYAMLのコードを表現するフレームワークを作成していますが、そのコードはJavaコードに変換されます。YAMLで定数を表現する最良の方法は何ですか?

YAMLでJava関数を表現する最良の方法は何ですか?

Configuration: 
    - name1: "a" 
    - name2: computeName() 

YAMLの解析中に、私は、文字列や関数としてcomputeName()として"a"を解析することができるはずです。

私はユーザがYAMLを書くのに直感的で簡単になるようにベストプラクティスを探しています。

答えて

0

YAMLの場合a(引用符は不要です)とcomputeName()は、どちらも文字列としてロードされるスカラーです。他のスカラーは通常異なって認識されます(trueブール値、123整数、2016-08-26として日付)。

あなたは両方の文字列として読み込まれacomputeName()などのスカラーを区別したい場合は、試してみて、文字列内の機能を見て(()のような)が、異なる種類を区別するのYAMLの方法が使用tagsであることができます。あなたの場合は、例えば次のようになります。使用:タグ(とあなたのプログラムで扱う適切なタグ)に基づいて

Configuration: 
    - name1: "a" 
    - name2: !func computeName 

、あなたは直接computeNameを表しインスタンスを作成することができます。後者はのやっていることのやり方だが、タグ無しと言えばcomputeName()が読みやすくなっている。

もっと直感的なことは、主に何に依存するのですかyour users are used to。適切に文書化された簡単なルール(YAMLタグの使用、プログラム内のスカラー文字列の解釈)は常に必要です。

関連する問題