Vizualno programiranje je stvaranje računalnog programa korištenjem slikovnih elemenata. Tradicionalno, program je slijed tekstualnih iskaza koji se koriste za postizanje određenog rezultata ili rješavanje nekog problema. Programski jezici često imaju posebne načine predstavljanja posla koji treba obaviti, što dovodi do složenosti. Vizualno programiranje pokušava pojednostaviti izradu programa.
Razmislite o pretraživanju provedenom unutar web-mjesta gdje se okvir koristi za unos teksta. Kada korisnik upiše znak, brojni prijedlozi prikazuju se odmah ispod tekstualnog okvira. Vizualni program koji bi to postigao omogućio bi programeru da postavi nekoliko okvira na zaslon, po jedan za svaki zadatak, i koristi strelice za označavanje tijeka između zadataka.
Prvi okvir na ekranu bi označavao da čeka na radnju korisnika. Kada se upiše znak, tok će biti usmjeren na okvir koji određuje je li znak valjan. Ako je znak valjan, tok će biti usmjeren na drugi okvir na ekranu koji pretražuje bazu podataka.
Pretraživanje baze podataka samo bi imalo niz podzadataka. Klikom na okvir za pretraživanje baze podataka otvorit će se novi zaslon kako bi programer mogao naznačiti te podzadatke i tijek između njih. Aspekte kao što je zaustavljanje pretraživanja kada se pronađe fiksni broj prijedloga ili odustajanje od pretraživanja kada se ne pronađe dovoljno prijedloga u određenom vremenskom razdoblju, programer će razmotriti i riješiti ih na ovom zaslonu.
Računalni program ima mnogo aspekata osim akcije i toka. To uključuje odnose između podataka, dijeljenje podataka s drugim programima, širenje posla među resursima i povezivanje grafičkih elemenata radi lakšeg korištenja. Skup tekstualnih naredbi ne obrađuje uvijek sve ove radnje glatko i drugim programerima možda neće biti lako razumjeti sve implikacije. Vizualno programiranje pokušava riješiti većinu ovih aspekata.
Postoji mnogo jezika koji omogućuju vizualno programiranje. Obično vizualni programski jezici uključuju: Tersus za web aplikacije, MVPL za robotiku, LabVIEW za znanstvenike i SynthMaker za audio alate. Postoje vizualni jezici za programiranje ručnih i ugrađenih računala. Međutim, Visual C# ili Visual Basic nisu vizualni jezici. Iako su popularni, oni samo dopuštaju postavljanje stavki s kojima korisnik komunicira na zaslonu.
Vizualno programiranje kritizirano je zbog izrade programa kao igračke i zbog broja vizualnih elemenata koji se istovremeno mogu prikazati na ekranu. Deutsch Limit označava da se može prikazati otprilike 50 elemenata. Baš kao što su se tekstualni programski jezici razvijali, postoji obećanje da se vizualni jezici također mogu nositi s tim izazovima.