Görsel ve Kodsuz Programlama

Akademik olarak görsel programlama, metin kodlaması yerine grafik gösterimleri kullanarak programlamayı ifade eder. Sektör, iki nedenden dolayı görsel bir programlamayı benimsememiştir.
“Bir resim bin kelimeden fazladır” şeklindeki yaygın beklentinin aksine, çoğu görsel dili anlamak metin kodlamadan daha zordur. Bir resmi anlamak metinden daha kolaydır çünkü daha somuttur. Ancak görsel bir dildeki grafik semboller oldukça soyutlayıcıdır ve anlaşılması, sıradan insanların kullandığı kelimelerden daha zordur.
Java, JavaScript, .Net Framework, vb. gibi endüstri dillerinin yaptığı gibi zengin bir yazılım kitaplığı olmadan, görsel bir dil ancak akademik değere sahip olabilir.
Öte yandan, metin kodlama IDE’leri çok zengin grafik kullanıcı arayüzlerine dönüşmüştür. Microsoft bu nedenle bilgisayar dillerini “görsel diller” olarak adlandırmıştır: Visual Basic, Visual C#, vb. Görsel dil araştırmacıları, bunların metin kodlama dilleri oldukları için görsel diller olmadığını söylüyorlar.
“Görsel” ile “metin” karşılaştırmasının bir alternatifi, “kodsuz programlama”dır. Metin kodlama kullanmaz, ancak kesinlikle görsel bir dil değildir. Metin kodlamasını görselleştirmeye çalışır. Genellikle nesne programlamaya dayanır ve nesne oluşturma ve nesne bağlamanın çeşitli yönlerini görselleştirmeye çalışır. Bu yöne giden birkaç sistem var. Bazıları hala bazı metin kodlamaları kullanıyor.
“Kodsuz programlamanın” bazıları etki alanına özgüdür ve belirli etki alanındaki güçlü yazılım kitaplıkları ve belirli etki alanındaki belirli görselleştirmeleri nedeniyle, örneğin elektronik cihaz tasarımı için LabView gibi oldukça başarılıdır. Genel amaçlı programlama için, “kodsuz” sistemlerin çoğu hala zengin yazılım kitaplıklarından yoksundur.
Umut verici bir “kodsuz” yaklaşım, bileşen programlamayı görselleştirmektir. Olay işlemeyi görselleştirerek ve nesne geliştirmeyi görselleştirerek mevcut endüstri bilgisayar dillerini görselleştirir. Windows bağımsız uygulamaları için .Net Framework nesne oluşturma ve olay işlemeyi görselleştirir. Microsoft’tan veya herhangi bir yazılım geliştirici birey ve şirketten alınan tam .Net Framework kitaplıkları, bu tür bir programlama yaklaşımının yerel yapı taşlarıdır. Böyle bir programlama yaklaşımının programlama sonuçları da yerel .Net Framework nesneleridir ve .Net Framework’ü destekleyen diğer bilgisayar dilleri tarafından doğrudan kullanılabilir.
Çoğu modern bilgisayar dili bileşen tabanlı olduğu için böyle bir yaklaşım uygulanabilir. Programlama varlıkları bileşenlerdir. Bir bileşen, özellikler, yöntemler ve olaylar tarafından tanımlanır. Bir metin dilinin rolü, prosedürel bileşen olmayan programlamadan çok daha az önemlidir. Bileşen tabanlı programlamada, bir metin dili, yeni yazılım oluşturmak için bileşenleri birbirine bağlamak için yapıştırıcı veya yapı taşlarını birbirine bağlamak için çivi ve perçin görevi görür.
Aynı zamanda yapılar oluşturmak için Lego bloklarını kullanmak gibidir. Ancak Lego konstrüksiyonlarının yapıştırıcıya, çiviye ve perçinlere ihtiyacı yoktur. Bunun nedeni, her Lego bloğunun diğer Lego bloklarına kenetlenecek pimler ve soketlerle yapılmış olmasıdır.
Modern yazılım bileşenleri ayrıca diğer bileşenlere kilitlenecek pimler ve soketlerle yapılır, çünkü bileşenler olay işleme ile birbirine kilitlenebilir. Olay işleme, nesne yönelimli programlamadan bir adım ileridir. Bu olay işleme nesneler kullanılarak yapılabiliyorsa, bileşenleri birbirine yapıştırmak için bir metin diline gerek yoktur. Bileşen programlamayı görselleştirerek kodsuz programlama fikri budur.
“Nesnelerin” anlaşılması metin dillerinden daha kolay olduğu için, nesneleri görsel olarak yaratarak ve olayları görsel olarak işleyerek programlama yapmak, metin bilgisayar dillerinden daha kolay kavranır. Microsoft .Net Framework kitaplığı, PHP, JavaScript vb. gibi endüstri gücü yüksek bileşen tabanlı diller için görselleştirme yapılırsa, bu tür bir yaklaşım, mevcut geniş ve sürekli büyüyen yazılım kitaplıklarının keyfini çıkaracaktır. Bu nedenle, böyle bir programlama yaklaşımı, iş gereksinimlerini karşılamada hem kullanımı kolay hem de güçlüdür. 3B kitaplıkları kullanan bazı örnek projeler, genel türlere sahip sınıfları kullanan bazı örnek projeler ve web sunucusu işleme için PHP kullanan web uygulamaları vardır.