애플리케이션에 도움이 되는 결정 테이블을 사용하는 방법

StackOverflow https://stackoverflow.com/questions/116907

  •  02-07-2019
  •  | 
  •  

문제

나는 얼마 전에 결정 트리(Decision Tree)와 결정 테이블(Decision tables)에 대해 배웠습니다.저는 의사결정 테이블이 조건부 If-Then-Else 문에 도움이 될 수 있다고 생각합니다.특히, 의사결정 테이블에는 부작용이 없다고 생각합니다. 예를 들어 "else if" 문이 하나 더 필요하다는 사실을 눈치채지 못한 경우에도 마찬가지입니다.

하지만 어떻게 구현할 수 있는지 잘 모르겠습니다.배열?데이터베이스 테이블?요즘 코드에 의사결정 테이블을 사용하는 사람이 있나요?

도움이 되었습니까?

해결책

18장을 적극 추천합니다. 코드 완성.

이 게시물을 확인할 수도 있습니다. 테이블 기반 방법이란 무엇입니까?

다른 팁

글쎄요, 제가 직접 조사를 해봤습니다 :S

  1. 이것은 IBM에서 뭔가 테스트 시나리오를 만드는 데 사용되는 의사결정 테이블에 대해
  2. 이것은 어떤 회사에서 나온 것입니다. 의사결정 테이블을 만든다 그런 다음 vb.net의 if-then-else 문으로 변환됩니다.
  3. 오픈 소스 Ruby 워크플로 및 BPM 엔진 의사결정 테이블을 사용하는 것입니다.

그래서 아직도 찾고 있어요.누구든지 좋은 답변이 있으면 입력해 주세요.

다중 플랫폼, CCIDE-0.5.0-6(또는 그 이상)은 SourceForge 및 Github에서 사용 가능합니다.

다음 웹페이지를 참조하세요. http://twysf.users.sourceforge.net/

테이블 기반 방법은 if-then 문 대신 데이터 구조를 사용하여 프로그램 논리를 구동합니다.예를 들어, 두 가지 유형의 레코드(TV와 케이블)를 처리하는 경우 다음을 수행할 수 있습니다.

해시[tv] = processTvRecords

해시[케이블] = processCableRecords

Ruby나 Perl과 같은 일부 언어에서는 이 기술이 간단합니다.Java에서는 메소드 핸들을 찾으려면 Reflection을 사용해야 합니다.

의사결정 테이블에 대해 알아보려면 다음에서 Fitnesse 테스트 프레임워크를 조사해 보세요. http://fitnesse.org/.

지금까지 의사결정 테이블에 대해 제가 본 최고의 구현은 Prologa라는 애플리케이션입니다. 이 애플리케이션은 다음에서 다운로드할 수 있습니다. http://www.econ.kuleuven.be/prologa.아쉽게도 Windows에서만 사용할 수 있으며 평가 키를 기다리는 동안 약간의 지연이 있을 수 있습니다.

이 소프트웨어는 이진이 아닌 조건을 처리하고 유사한 규칙을 축소할 수 있으며 실제로 테이블이 현재 다루는 조합 수를 추적하므로 특히 큰 테이블의 완전성 검사에 적합합니다.또한 중첩된 테이블을 적절하게 처리합니다(한 테이블의 결과가 다른 테이블의 조건이 될 수 있음).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top