0

個人的なプロジェクトで BDD を使用することを考えています。ただし、これはビデオ ゲーム (XNA を使用して C# でコーディングされたバイオシミュレーション ゲーム) であり、BDD が強制するモジュール性が実行時間の点で有益であるかどうかはわかりません。

基本的に、ユーザーは時間をより迅速に移動するために、シミュレーションを可能な限り高速化できる必要があります。速いほど良い。したがって、処理速度は重要であり、モジュール性はより多くの関数呼び出しを意味するため、BDD の使用について議論します (私は知っています、私たちは低レベルの話をしています)。しかし、私は進化と AI メカニズムの両方を実装したいと考えています。そして、非常に多くのエンジンが相互接続されているため、一連のテストにより、多くのデバッグを簡単に節約できます。

この状況でBDDがどれほど適切かについて、情報に基づいた意見を誰かに教えてもらえますか? 推奨される代替手段はありますか (自分の時間にもっと正気なことを見つける以外に)?

ありがとう

4

2 に答える 2

2

BDD は (ほとんど) アプリケーションの効率とは関係ありません。あなたが本当に求めているのは、モジュラー設計がニーズに十分に対応できるかどうかです。これは答えるのが非常に難しい質問ですが、設計の基本的な概要 (モジュラー アプローチ、テスト可能なコンポーネント、個別の AI など...) は、ほとんどのゲーム エンジンの概要とあまり変わらないため、そうであると思います。知っている。

.NET JITTER は、呼び出しのオーバーヘッドを心配する必要がないように、小さなメソッドをインライン化するなど、ゲームをより効率的に実行するのに大いに役立ちます。(PC をターゲットにしている限り、WP7/Xbox360 の .NET Jitter はこれを行いません)

プログラミングとプロファイリング中に、パフォーマンスを制限するある種のクリティカル パスがゲームにあることに気付く可能性が高くなります。プログラミングの非常に遠い段階に入ったら、パフォーマンスが十分に優れているかどうかを評価してから、優れたプロファイリング ツール (ANTS など) を使用します。 ) このクリティカル パス (およびクリティカル パスのみ) を最適化します。

于 2011-02-10T13:27:20.073 に答える
0

BDDは、パフォーマンステストには特に適していません。BDDツールでできることは、パフォーマンスに関係なく、BDDツールを使用して機能を調査およびキャプチャし、Royが前述したように従来のパフォーマンステストツールを使用してパフォーマンスを向上させることです。

BDDは実際にはテストに関するものではありません。シナリオは、開発チームのメンバーとさまざまな利害関係者の間の誤解を発見するのに役立つ会話をサポートするのに役立ちます。次に、話し合ったシナリオをキャプチャできます。

あなたの状況では、あなたが何をする必要があるかを探求するのではなく、あなたが本当にテストしているように見えます。そのためには、BDDツールではなく、従来のテストツールに注目してください。

于 2011-02-10T15:15:14.570 に答える