3

動作が多数のXMLファイルによって定義されるシステムがあります(それぞれがサブシステムの動作を管理する約50の異なるXMLファイル)。

レガシーの理由によるXMLファイルはカスタム形式であり、システム内のさまざまなコンポーネントで簡単に使用できるようになっています。

カスタム形式は、人間にとって非常に直感的で読みやすいものではありません(これは私たちにとっても重要な考慮事項です)。

では、この読みやすさの問題にどのように取り組むのでしょうか。

これらのXMLファイルの上に書かれた直感的なUIがその役目を果たすべきだと思います。

ただし、私の同僚は、XMLファイルをDSLに置き換える方が、直感的で機械可読であるため、より良いアイデアだと感じています。

これは良い考えですか、それともやり過ぎですか?UIと比べるとDSLを正しくするのは非常に難しいと思います。しかし、私は間違っている可能性があります。

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

2

http://www.eclipse.org/Xtext/を確認する必要があります。これは、探しているものに最適です。

于 2011-12-10T09:53:34.263 に答える
2

XML から XML への変換は中途半端なソリューションであり、おそらく私が使用するアプローチです。

UI は、動作のテキストベースの説明の代わりになる前に非常に完全である必要があり、コピー & ペースト、検索 & 置換などの一般的なテキストベースのイディオムは、UI で優れた使いやすさを実装するのが面倒です。

ただし、カスタム パーサーを使用した本格的な DSL は、特にチームの複数のメンバーにパーサーまたはコンパイラの経験がない場合は、おそらくやり過ぎです。誤解しないでほしいのですが、人々がパーサーを恐れるべきではないと思います。私自身がコンパイラ エンジニアです。しかし、一部の人々が恐れているのは事実であり、パーサーが正しく行われていない場合は、すぐにぐちゃぐちゃ。

したがって、私は理想化された XML フォーマットを設計することを提唱し、そのフォーマットを実際の XML フォーマットに変換するツールを、XSLT (簡単であれば - XSLT 関数などには深く入りません) または単純な翻訳を使用して作成します。アプリ。

仕様のために読みやすいテキスト形式を使用することには、多くの利点があります。アドホックな編集が簡単 (メモ帳のみが必要)、ソース管理からの差分が読みやすい、スニペットをメールで送信できるなどです。テキスト形式との同等性は容易ではありません。

于 2009-06-07T08:45:21.970 に答える