La programmazione visiva è la creazione di un programma per computer utilizzando elementi pittorici. Tradizionalmente, un programma è una sequenza di istruzioni di testo utilizzate per ottenere un determinato risultato o risolvere un problema. I linguaggi di programmazione hanno spesso modi particolari di rappresentare il lavoro da svolgere, portando così alla complessità. La programmazione visuale tenta di rendere più semplice la creazione di programmi.
Considera una ricerca condotta all’interno di un sito Web in cui viene utilizzata una casella per inserire il testo. Quando l’utente digita un carattere, vengono visualizzati alcuni suggerimenti proprio sotto la casella di testo. Un programma visivo per raggiungere questo obiettivo consentirebbe al programmatore di posizionare un numero di caselle sullo schermo, uno per ogni attività, e utilizzare le frecce per indicare il flusso tra le attività.
La prima casella sullo schermo indicherà che è in attesa dell’azione dell’utente. Quando viene digitato un carattere, il flusso verrà indirizzato a una casella che determina se il carattere è valido. Se il carattere è valido, il flusso verrà indirizzato a un’altra casella sullo schermo che esegue la ricerca nel database.
La ricerca nel database avrebbe di per sé una serie di attività secondarie. Facendo clic sulla casella per la ricerca nel database si aprirà una nuova schermata per consentire al programmatore di indicare quelle attività secondarie e il flusso tra di esse. Aspetti come l’interruzione della ricerca quando viene trovato un numero fisso di suggerimenti o l’abbandono della ricerca quando non vengono trovati abbastanza suggerimenti in un determinato lasso di tempo, verrebbero presi in considerazione e trattati dal programmatore in questa schermata.
Un programma per computer ha molte sfaccettature oltre all’azione e al flusso. Questi includono le relazioni tra i dati, la condivisione dei dati con altri programmi, la diffusione del lavoro tra le risorse e il collegamento di elementi grafici per facilità d’uso. Un insieme di istruzioni di testo non sempre gestisce tutte queste azioni in modo fluido e potrebbe non essere facile per altri programmatori comprenderne tutte le implicazioni. La programmazione visuale tenta di affrontare la maggior parte di questi aspetti.
Esistono molti linguaggi che consentono di eseguire la programmazione visivamente. Tipicamente, i linguaggi di programmazione visuale includono: Tersus per le applicazioni web, MVPL per la robotica, LabVIEW per gli scienziati e SynthMaker per gli strumenti audio. Esistono linguaggi visivi per la programmazione di computer palmari e embedded. Tuttavia, Visual C# o Visual Basic non sono linguaggi visivi. Sebbene popolari, consentono semplicemente il posizionamento sullo schermo di elementi con cui l’utente interagisce.
La programmazione visiva è stata criticata per rendere i programmi simili a giocattoli e per il numero di elementi visivi che possono essere visualizzati su uno schermo contemporaneamente. Il Deutsch Limit indica che possono essere visualizzati circa 50 elementi. Proprio come i linguaggi di programmazione testuale si sono evoluti, c’è la promessa che anche i linguaggi visivi possano affrontare queste sfide.