Domanda

Ho imparato qualche tempo fa sugli alberi delle decisioni e sulle tabelle delle decisioni. Sento che le tabelle delle decisioni possono aiutare con le dichiarazioni condizionali If-Then-Else. In particolare, ritengo che le tabelle delle decisioni non abbiano effetti collaterali, ad esempio, se non ti accorgessi di aver bisogno di un altro "altro se" comunicato.

Ma non sono sicuro di come implementarlo. Array? Tabelle database? Al giorno d'oggi qualcuno usa persino le tabelle delle decisioni nel loro codice?

È stato utile?

Soluzione

Consiglio vivamente il capitolo 18 del Codice completo .

Puoi anche controllare questo post Quali sono i metodi guidati da tabella

Altri suggerimenti

Beh, ho fatto la mia ricerca: S

  1. Questo è qualcosa di IBM sulle tabelle delle decisioni utilizzate per creare scenari di test
  2. Questo è da una società che prende le tabelle delle decisioni che vengono poi tradotte alle dichiarazioni if-then-else in vb.net.
  3. Flusso di lavoro ruby ??open source e motore bpm che utilizza tabelle di decisione.

Quindi, sto ancora cercando. Se qualcuno ha delle buone risposte, inseriscile.

Multi-piattaforma, CCIDE-0.5.0-6 (o successivo) è disponibile su SourceForge e Github.

Vedi la pagina web http://twysf.users.sourceforge.net/

Un metodo basato su tabella utilizza strutture di dati anziché istruzioni if-then per guidare la logica del programma. Ad esempio, se stai elaborando due tipi di record (tv contro cavo) potresti farlo:

hash [tv] = processTvRecords

hash [cable] = processCableRecords

In alcune lingue, come Ruby o Perl, questa tecnica è semplice. In Java, è necessario utilizzare Reflection per trovare handle di metodo.

Se vuoi conoscere le tabelle delle decisioni, investiagetela struttura di test Fitnesse su http://fitnesse.org/ .

Di gran lunga la migliore implementazione che ho visto per le tabelle di decisione è un'applicazione chiamata Prologa, che è disponibile per il download su http://www.econ.kuleuven.be/prologa . Sfortunatamente, è disponibile solo in Windows e potrebbe esserci un breve ritardo mentre aspetti la chiave di valutazione.

Il software gestisce condizioni non binarie, può comprimere regole simili e in realtà tiene traccia del numero di combinazioni attualmente coperte dalla tabella, quindi è ottimo per i controlli di completezza per tabelle particolarmente grandi. Gestisce anche le tabelle nidificate con garbo (dove il risultato di una tabella può essere la condizione di un'altra tabella).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top