0

分散システム内のあるタイプのエージェントのシミュレーターとして機能するアプリケーションがあります。その使用目的は統合テストであるため、非常に柔軟である必要があります。エージェントの動作、つまりテストシナリオを定義するために、内部DSLに進化する可能性のある流暢なインターフェイスがあります。

ユーザー(テスター)がテストシナリオを作成するためのウィザードもありますが、これは非常に非効率的です。ユーザー自身が、時間を無駄にしている間、流暢なインターフェイスを使用してシナリオを作成するのに十分なドメインと技術的な知識を持っているでしょう。まさにそれを行うウィザードのプログラミング。

したがって、コーディング中と同じように、オートコンプリートと検証の助けを借りて、ユーザーが実行時に連鎖メソッド(またはDSL)を書き込むことができる軽い「コンソール」があるかどうか疑問に思いました。可能であれば、Eclipseインスタンスを起動する必要はありません。

流暢なインターフェースメソッドを動的に呼び出したり、DSLを記述したりするための、軽量で埋め込み可能な「xTextコンソール」または「提案付きのGroovyコンソール」を考えてみてください。

何か案は?ユーザーがDSLを使用する最も簡単な方法は何ですか?

4

1 に答える 1

0

これを行う1つの方法は、Scalaコンソールを使用することです。

$ scala -classpath <your-class-files>

メソッドのドット補完があります。DSLに最適なドットと括弧を省略した流暢な構文を利用することもできます。それ以外の:

scala> "howdy".contains("how")
res0: Boolean = true

...あなたは書ける:

scala> "howdy" contains "how"
res1: Boolean = true

もちろん、「含む」はDSL/流暢なインターフェースの方法である可能性があります。

[はい、私は自分自身に答えています、wuoh ohohow]。

于 2012-07-23T23:22:20.220 に答える