第12章 無効なスコアの検出


environmentMode クラスを使用し、値を FULL_ASSERT または FAST_ASSERT として指定すると、環境モードはインクリメント演算子によるスコア計算でスコアの破損を検出します。

ただし、これを行うと、スコア計算ツールがビジネスが望む方法でスコア制約を実装しているかどうかは検証されません。たとえば、1 つの制約が常に間違ったパターンに一致する可能性があります。独立した実装に対して制約を検証するには、assertionScoreDirectorFactory クラスを設定します。

  <environmentMode>FAST_ASSERT</environmentMode>
  ...
  <scoreDirectorFactory>
    <constraintProviderClass>org.optaplanner.examples.nqueens.optional.score.NQueensConstraintProvider</constraintProviderClass>
    <assertionScoreDirectorFactory>
      <easyScoreCalculatorClass>org.optaplanner.examples.nqueens.optional.score.NQueensEasyScoreCalculator</easyScoreCalculatorClass>
    </assertionScoreDirectorFactory>
  </scoreDirectorFactory>
Copy to Clipboard Toggle word wrap

この例では、NQueensConstraintProvider 実装が EasyScoreCalculator によって検証されます。

注記

この手法はスコアの破損を分離するのに効果的ですが、制約が実際のビジネスニーズを実装していることを検証するには、通常、ConstraintVerifier を使用した単体テストの方が優れています。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る