Sto cercando una macchina di stato valida e universale e finora ho trovato SCXML. È davvero semplice da usare (intendo la configurazione), ma il codice sorgente è arcaico - non esiste un tipo di sicurezza e tutte le raccolte sono di tipo grezzo. Non devo dire quanto sia difficile trovare ciò che è effettivamente memorizzato in quelle collezioni. Quindi c'è qualche alternativa moderna?Esiste un'alternativa ad Apache Commons SCXML?
risposta
in Java, Apache Commons SCXML può essere il best.But è possibile cercare qualcosa su scxml4flex, http://code.google.com/p/scxml4flex/
Poiché la domanda è stata specificatamente taggata 'Java',' scxml4flex' risponde veramente alla domanda? –
Non funziona. Immagino che Apache Commons SCXML sia il migliore per il mio scopo ma sembra che gli sviluppatori non intendano rifattorizzare il codice e scrivere una documentazione migliore poiché non l'hanno ancora fatto. – user219882
ho usato due prodotti macchina statale, dove mi definisco un prodotto come qualcosa che ha effettivamente crea porzioni di un programma operativo.
1) QP (a http://www.state-machine.com/). L'ho usato nel 2006 in un prodotto di comunicazione Windows C++ . Ha funzionato molto bene, ma ha un numero limitato di piattaforme target . Nel complesso questo è stato il miglior prodotto, ma può costare in base allo su come lo si utilizza.
2) Compilatore di stato (al numero http://smc.sourceforge.net/). Sto usando questo oggi in un prodotto iOS (http://dr.edgemoor.com) scritto in Objective-C. Mi sono imbattuto nella domanda durante la ricerca di alternative a SMC. Non ne ho trovato nessuno.
SMC è meno ben documentato, ma anche di portata più semplice. E la grande forza è che genera codice per un numero di lingue, più di ogni altra soluzione che ho trovato.
Grazie per la risposta, ma ho bisogno solo di librerie Java pure. Significa che il motore della macchina di stato deve essere scritto in Java e dovrebbe essere configurabile in file XML. – user219882
- 1. Apache Commons FTPClient Hanging
- 2. Apache Commons FTPClient.listFiles
- 3. Apache Commons JCI ReloadingClassLoader
- 4. Apache Commons HttpClient supporta GZIP?
- 5. Come caricare JSF con Apache Commons FileUpload
- 6. Come si disabilita l'accesso ad Apache Commons/Log4J in librerie di terze parti?
- 7. Scarica il file usando java apache commons?
- 8. Vestibilità esponenziale con apache commons matematica
- 9. JSP - Caricamento file con Apache Commons
- 10. Decidere tra Apache Commons exec o ProcessBuilder
- 11. utilizzo corretto di configurazione Commons Apache
- 12. java.lang.NoClassDefFoundError: org/apache/commons/discovery/tools/DiscoverSingleton
- 13. java: API Preferenze vs Configurazione Apache Commons
- 14. È sicuro usare Apache commons-io IOUtils.closeQuietly?
- 15. Apache commons alternative di upload di file
- 16. problema di avviso log4j - apache commons
- 17. Apache Commons Net FTPClient e listFiles()
- 18. Problemi con timeout client ftp apache commons
- 19. java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException
- 20. Utilità Apache Commons toString che include solo campi con valore
- 21. come faccio ad aggiungere la registrazione di apache commons usando maven2 con eclissi?
- 22. Come risolvere un conflitto di libreria (apache commons-codec)
- 23. Apache Commons CLI 1.3.1: Come ignorare gli argomenti sconosciuti?
- 24. Richiedere un argomento solo nella CLI di Apache Commons?
- 25. Apache Commons FTPClient, controllare se esiste una directory remota e ottenere le autorizzazioni (linux - unix)
- 26. Esiste una funzione di controllo nullo vararg in Java o Apache Commons?
- 27. Client IMAP in Java: API JavaMail o Apache Commons Net?
- 28. Codifica del nome file in Apache Commons Net FTPClient
- 29. Apache Commons CLI: Ottenere l'elenco dei valori per un'opzione
- 30. Come contribuire ad Apache?
I BPMN come jBPM o Activiti sono eccessivi? –
Sì. Ho provato jBPM ed è enorme. Ho bisogno di una semplice macchina a stati - proprio come SCXML, ma migliore (come ho detto sopra). Una buona documentazione sarebbe anche utile, dal momento che SCXML non ne ha praticamente nessuna. – user219882
Hai visto http://www.manageability.org/blog/stuff/open-source-statemachine-for-user-interfaces-written-in-java? Puoi anche stampare il tuo, usando lo State Design Pattern. In combinazione con l'enumerazione, questo può essere codificato in modo abbastanza tondo, come http://weblogs.java.net/blog/ryano/archive/2005/01/implementing_th.html – greyfairer