Possibili disegni per l'editor di blocchi di codice

1

Ho avviato un progetto in cui ho bisogno di progettare un'applicazione che funzionerà come un editor di blocchi di codice, proprio come i lego di mindstorm e questo progetto di google. link

Quali sono gli approcci possibili per progettare un'applicazione di questo tipo in Java?

Più specificamente, supponendo che abbia un blocco A, come posso definire quali altri blocchi possono essere collegati con esso? Quello che penso è usare sottoclassi e controllare la gerarchia, o un'altra possibile soluzione potrebbe essere una sorta di tabella 2D che verificherà che una connessione sia valida (anche se penso che potrebbe diventare troppo grande?).

p.s: Devo forzare la corretta struttura del codice, e non controllarlo con parser alla fine. Quindi solo i blocchi che si adattano dovrebbero essere collegati.

    
posta latusaki 09.02.2013 - 17:42
fonte

1 risposta

1

Come qualsiasi linguaggio di programmazione, è solo una rappresentazione di un Abstract Syntax Tree .

Qualsiasi approccio che puoi utilizzare per rappresentare un albero può essere utilizzato per rappresentare un programma . I blocchi interconnessi come quelli che vedete in Blockly sono semplicemente una sintassi una visione leggibile da un utente di un AST. Il modo in cui i blocchi si connettono facilita la visualizzazione dei possibili flussi per ogni dato elemento nell'albero e più facile da convalidare al volo.

Penso che una volta che lo guardi in questi termini, il resto è abbastanza ovvio, no? Basta codificarlo come se fosse un qualsiasi albero di classi che può adattarsi solo in particolari modi.

    
risposta data 10.02.2013 - 01:13
fonte

Leggi altre domande sui tag