Cześć!
Na starcie zaznaczę, że nie jestem zupełnym laikiem jeśli chodzi o programowanie i nie mam problemu z zakodowaniem czegoś. Wybrałem forum "newbie", bo żadne inne nie do końca mi pasowało.
A więc tak. Jestem studentem pierwszego roku informatyki. Na zaliczenie przedmiotu mam za zadanie zrobić program symulujący działanie automatu skończonego.
Treść zadania:
Program ma pracować w trybie graficznym oraz umożliwiać wprowadzenie parametrów opisujących automat, wczytanie taśmy wejściowej, wizualizację pracy automatu w formie grafu, określenie czy taśma wejściowa została zaakceptowana.
Samo napisanie programu i jego logiki nie jest dla mnie jakimś specjalnym wyzwaniem. Mógłbym pójść na łatwiznę i zrobić wszystko w Javie i Swingu. Jednak chciałbym nauczyć się czegoś nowego, no i zrobić aplikację dużo bardziej profesjonalnie. Wykorzystać chciałbym do tego Scalę i Play Framework + D3.js do wizualizacji.
Wyobrażam sobie to tak, że użytkownik dodaje na planszy stany i przejścia między nimi.
Na końcu użytkownik wpisuje słowo i symulacja krok po kroku prowadzi przez każdy znak słowa i odpowiednio stworzony graf pokazując na końcu czy słowo jest akceptowane przez automat. Oczywiście jest to pierwszy pomysł jak zrobić taką aplikację, wszystkie inne też chętnie poznam.
I tutaj chciałbym prosić o wszystkie rady jak powinna wyglądać taka aplikacja. A w szczególności chodzi mi o aspekt komunikacji między logiką w Scali, a grafem rysowanym w JS.
Dzięki za wszelkie pomoce!