Görsel programlama dili - Visual programming language
Bilgi işlemde , bir görsel programlama dili ( VPL ), kullanıcıların program öğelerini metinsel olarak belirtmek yerine grafiksel olarak değiştirerek programlar oluşturmasını sağlayan herhangi bir programlama dilidir . Bir VPL, sözdizimi veya ikincil gösterim öğeleri olarak kullanılan görsel ifadeler, metin ve grafik sembollerin uzamsal düzenlemeleri ile programlamaya izin verir . Örneğin, birçok VPL ( veri akışı veya diyagramatik programlama olarak bilinir ), kutuların veya diğer ekran nesnelerinin, ilişkileri temsil eden oklar, çizgiler veya yaylarla birbirine bağlı varlıklar olarak ele alındığı "kutular ve oklar" fikrine dayanır.
Tanım
VPL'ler ayrıca, kullanılan görsel ifadenin türüne ve kapsamına göre, simge tabanlı diller, form tabanlı diller ve diyagram dilleri olarak sınıflandırılabilir. Görsel programlama ortamları, program yapımı için bazı özel uzamsal dilbilgisine göre kullanıcılar tarafından etkileşimli bir şekilde manipüle edilebilecek grafik veya ikonik öğeler sağlar.
VPL'lerin genel amacı, programlamayı acemiler için daha erişilebilir kılmak ve programcıları üç farklı düzeyde desteklemektir.
- Sözdizimi : VPL'ler, iyi biçimlendirilmiş programlar oluşturmak için programlama ilkellerinin düzenlenmesine yardımcı olan sözdizimsel hataların potansiyelini azaltmaya veya hatta ortadan kaldırmaya çalışan simgeler/bloklar, formlar ve diyagramlar kullanır.
- Semantik : VPL'ler, programlama ilkellerinin anlamını açıklamak için bazı mekanizmalar sağlayabilir. Bu, programlama dillerinde yerleşik olarak belgeleme işlevleri sağlayan yardım işlevlerini içerebilir.
- Pragmatik : VPL'ler, belirli durumlarda programların ne anlama geldiğinin araştırılmasını destekler. Bu destek düzeyi, kullanıcıların, programın bu duruma nasıl tepki vereceğini keşfetmek için bir VPL ile oluşturulan yapay nesneleri belirli bir duruma koymasına olanak tanır. Örnekler: AgentSheets veya AgentCubes'ta kullanıcılar, programın nasıl tepki vereceğini görmek için oyunları veya simülasyonları belirli bir duruma ayarlayabilir. İle Thymio programlama dili kullanıcılarının sensörler devreye alınacak olan yani o nasıl tepki vereceğini görmek için belli bir duruma bir robot getirebilir.
Güncel gelişmeler , program durumuna anında erişim sağlamak için görsel programlama yaklaşımını veri akışı programlama dilleriyle bütünleştirmeye çalışır , bu da çevrimiçi hata ayıklama veya otomatik program oluşturma ve belgeleme ile sonuçlanır. Dataflow dilleri ayrıca , geleceğin en büyük programlama zorluklarından biri haline gelmesi muhtemel olan otomatik paralelleştirmeye de izin verir .
Visual Basic , Visual C # , Visual J # vb dilleri Microsoft Visual Studio IDE görsel programlama dilleri değildir: algoritmalar vb temsili IDE zengin bir kullanıcı arayüzü ile düzenleme ve hata ayıklama faaliyetleri embellishes metinsel halde olduğunu. Benzer bir değerlendirme , tipik olarak bir form tasarımcısını destekleyen ve bazen de kontrol akışını ve veri bağımlılıklarını göstermek için (ancak tanımlamayan) grafiksel araçlara sahip olan diğer hızlı uygulama geliştirme ortamlarının çoğu için geçerlidir .
Görsel programlama dilleri için ayrıştırıcılar , grafik gramerleri kullanılarak uygulanabilir .
görsel dillerin listesi
Aşağıdaki dikkate değer görsel programlama dillerinin bir listesini içerir.
eğitici
- AgentCubes , 3D ve 2D oyun tasarımı ve simülasyon tasarımı hesaplamalı düşünme araçları.
- AgentSheets , oyun geliştirme ve hesaplamalı bilim geliştirme aracı.
- Alice , 3B ortamları programlamak için kullanılan nesne tabanlı bir dildir.
- Analytica , karar ve risk analizi için nicel modeller oluşturmak ve analiz etmek için.
- Android için App Inventor , oluşturmak için bir araç Android dayalı uygulamalar, Blockly ve Kawa .
- Blockly , blok tabanlı görsel programlama dilleri (VPL'ler) ve düzenleyiciler oluşturmak için JavaScript programlama diline yönelik bir istemci tarafı kitaplığı
- Bubble , üretime hazır web uygulamaları oluşturmak için .
- Catrobat , animasyonlar, oyunlar için blok tabanlı görsel programlama dili
- Flowgorithm , birkaç dile dönüştürülebilen yürütülebilir akış şemaları oluşturur.
- Seksek , bir iPad uygulaması ve dokunmatik ekran odaklı mobil uygulamalar oluşturmak için görsel programlama dili.
- Kodu , Logo için görsel bir programlama aracı .
- Kojo , bir programlama dili, IDE ve öğrenme ortamı.
- mBlock , Scratch for Arduino donanım arayüzlerinin bir uzantısıdır . Makeblock tarafından geliştirilmiştir .
- Açık Roberta , Fraunhofer IAIS'den çocuklar için tasarlanmış çevrimiçi programlama ortamı .
- Yürütülebilir akış şemaları çizmek için USAF'nin bir ürünü olan Raptor .
- Bir MIT ürünü olan Scratch , K-12 ve okul sonrası programlarındaki çocuklar için tasarlanmıştır.
- ScratchJr , başka bir ürün MIT 5-7 yaşındaki çocuklar için tasarlanmış.
- Patlatmak! Bir tarayıcı tabanlı bir reimplementation byob ve uzatma çizilmeye birinci sınıf prosedürleri ve listeleri. UC Berkeley'de öğretim için kullanılır .
- Java tabanlı bir öğretim sistemi olan Stagecast Creator .
- StarLogo , Mitchel Resnick , Eric Klopfer ve MIT Media Lab'deki diğerleri tarafından geliştirilen aracı tabanlı bir simülasyon dili . Bir uzantısı Logo programlama dili (bir lehçesi arasında Lisp ).
- ToonTalk , çocuklar için programlama sistemi.
- Yürütülebilir akış şemaları oluşturmak için Visual Logic .
- VIPLE Visual IoT/Robotics Programlama Dili Ortamı
Multimedya
- AudioMulch , bir ses sinyali akışı tabanlı ses ve müzik oluşturma ortamı
- Bidule , etkileşimli bilgisayar müziği ve multimedya (Windows, MacOS) oluşturmak için modüler bir düğüm ve bağlantı kablosu ortamı.
- Açık kaynaklı 3D grafik paketi olan Blender (yazılım) , gölgelendiriciler , kompozitler ve dokular , tahribatsız geometri oluşturmak için düğüm grafikleri içerir .
- Cameleon , grafiksel işlevsel dil
- Clickteam'in oyun fabrikası/Multimedya füzyon serisi, görsel olarak oyun geliştirmek için yapılmış ortamlar
- Autodesk Revit için üretken bir modelleme arayüzü olan Dynamo
- Görüntü işleme için Filtre Forge Node tabanlı filtre üretimi.
- Houdini (yazılım) vfx, modelleme ve animasyon yazılımı.
- Bentley Systems tarafından geliştirilen parametrik bir CAD yazılımı olan GenerativeComponents
- Grasshopper 3d , Rhinoceros 3D için üretken bir modelleme arayüzü
- Kyma (ses tasarım dili) , müzisyenler, araştırmacılar ve ses tasarımcıları tarafından kullanılan ses tasarımı için görsel bir programlama dilidir.
- Mama (yazılım) – 3D animasyonlar ve oyunlar oluşturmak için bir programlama dili ve IDE
- Max (yazılım) , etkileşimli, gerçek zamanlı müzik ve multimedya uygulamaları oluşturmak için görsel programlama ortamı
- Nodal , müzik kompozisyonu için düğüm tabanlı bir üretken programlama yazılımı uygulaması
- Nuke , bir nesne tabanlı görsel programlama yazılımı görsel efektler kompozisyon tarafından Foundry'den Tcl, Python ve Blink-komut dosyası tarafından desteklenmektedir.
- OpenMusic , müzik besteleme ( Common Lisp Object System (CLOS) tabanlı ) uygulamaları ve mobil uygulamalar için görsel bir programlama dili
- Pure Data (Pd), etkileşimli bilgisayar müziği ve multimedya çalışmaları oluşturmak için geliştirilmiş görsel bir programlama dilidir.
- Quartz Composer , grafiksel verileri işlemek ve işlemek için bir dil ( macOS )
- Reaktor , Native Instruments tarafından geliştirilen bir DSP ve MIDI işleme dili
- AmigaOS ve Windows için Scala Multimedia Authoring paketi ve eksiksiz multimedya sistemi
- ICE Etkileşimli Yaratıcı Ortam ile Softimage .
- SynthEdit , VPL kullanan bir Synthesizer oluşturma aracı.
- TouchDesigner , gerçek zamanlı multimedya içeriği için görsel programlama dili
- Virtools , etkileşimli 3B deneyimler oluşturmak için kullanılan bir ara yazılım
- vvvv , gerçek zamanlı video sentezine ve fiziksel arayüzler, gerçek zamanlı hareketli grafikler, ses ve video ile büyük medya ortamlarını programlamaya özel odaklanan genel amaçlı bir araç takımı.
- WireFusion , etkileşimli 3D web sunumları oluşturmak için görsel programlama ortamı
Video oyunları
- Babylon.js , gölgelendiriciler, prosedürel dokular, parçacık sistemleri ve işlem sonrası efektler oluşturmak için kullanılabilecek bir düğüm malzemesi düzenleyicisine sahiptir.
- Blender Oyun Motoru (Grafik mantık editörü)
-
Construct 2 , Scirra Ltd. tarafından geliştirilen HTML5 tabanlı bir 2D oyun düzenleyicisidir.
- Construct Classic , Construct'ın önceki, DirectX tabanlı açık kaynaklı sürümüdür.
- CryEngine , FlowGraph adlı düğüm tabanlı bir görsel programlama diline sahiptir.
- GameMaker Studio , YoYo Games tarafından geliştirilen bir sürükle ve bırak oyun oluşturma sistemine sahiptir.
- GameSalad , GameSalad, Inc. tarafından geliştirilen görsel bir oyun oluşturma aracıdır.
- GDevelop , Florian Rival (4ian) tarafından oluşturulmuş görsel bir oyun oluşturma aracıdır.
- Godot , şirket içi açık kaynak kodlu MIT Lisanslı oyun geliştirme yazılımıdır.
- Human Resource Machine , Tomorrow Corporation tarafından geliştirilen görsel programlama tabanlı bir bulmaca oyunudur .
- Kodu , Microsoft Research tarafından geliştirilen bir 3D Arayüz ile oyunları programlamak için tasarlanmış bir yazılım.
- Pixel Game Maker MV , arayüz tabanlı bir 2D video oyunu geliştirme aracıdır.
- Rec Room , Circuits adlı düğüm tabanlı bir görsel programlama diline sahip bir oyun oluşturma sistemi içerir.
- Kardelen görsel bir komut dosyası sistemine sahiptir.
- Stencyl , bir video oyunu oluşturma aracı.
- Unity , ECS sürümünden itibaren görsel bir betik sistemine sahiptir.
- Unreal Engine 4 , Blueprints adlı düğüm tabanlı bir görsel programlama diline ve ayrıca gölgelendiricilere sahiptir.
- Clickteam SARL tarafından geliştirilen, başlangıçta Klik n' Play, The Games Factory ve Multimedia Fusion 2 olarak bilinen, etkinlik düzenleme sistemine sahip bir 2D oyun oluşturma yazılımı olan Clickteam Fusion
- Oyun Oluşturucu Garaj , için 3D ve 2D oyun oluşturma aracı Nintendo Geçiş tarafından geliştirilen, Nintendo .
Birçok modern video oyunu , prensipte oyuncu olmayan karakterler için davranışları modellemek üzere tasarlanmış basit programlama dilleri ailesi olan davranış ağaçlarını kullanır . Davranışlar ağaç olarak modellenir ve genellikle grafik düzenleyicilerde düzenlenir.
Sistemler / simülasyon
- Analytica , etki diyagramlarına dayalı karar modelleri için ticari bir görsel dil .
- BPEL (Business Process Execution Language) , şu anda veri ve web hizmetleri için orkestrasyon mantığı oluşturmak için kullanılan Grafiksel kullanıcı tabanlı bir Programlama Dilidir. XML tabanlıdır, ancak daha hızlı kodlama için grafiksel bir arayüze sahiptir.
- DRAKON , grafiksel bir algoritmik dil
- EICASLAB , kontrol mimarilerinin tasarımını desteklemek için bir grafik dili içeren bir yazılım paketi
- Flowcode , gömülü mikroişlemcileri programlamak için bir grafik programlama dilidir.
- Programlanabilir mantık denetleyicilerinde kullanılan fonksiyon blok şemaları
- GNU Radio , yazılım tanımlı radyoları ve sinyal işleme sistemlerini uygulamak için sinyal işleme blokları sağlayan bir geliştirme araç seti
- KNIME , Konstanz Information Miner, açık kaynaklı bir veri analizi, raporlama ve entegrasyon platformudur.
- LabVIEW , mühendisler ve bilim adamları için tasarlanmış bir grafik dil
- Merdiven mantığı , programlanabilir mantık denetleyicilerinde yaygın olarak kullanılan röle mantığını simüle eden bir dil
- MeVisLab , tıbbi görüntü işleme ve bilimsel görselleştirme için platformlar arası uygulama çerçevesi
- Microsoft Visual Programming Language , Microsoft Robotics Studio'nun bir bileşeni olan robotik programlama için veri akışı dili
- MindRover , veri akışı "kablolama" dilini içeren bir robot programlama oyunu
- Minibloq , robotik ve Arduino uyumlu panolar için görsel programlama dili
- Matematiksel çözümler, hızlı prototipleme, iki boyutlu ve üç boyutlu grafik uygulamaları oluşturmak için etkileşimli bir görsel programlama dili olan MST Workshop
- Node-RED : yazılım sistemi hızlı geliştirme araç takımı
- NXT-G , Lego Mindstorms NXT robotik kiti için görsel bir programlama dili
- Görsel bir programlama dili ve veri akışı modeli kullanarak OpenDX bilimsel veri görselleştirme
- OpenWire - Görsel Bileşen Kitaplığı (VCL) bileşenleri ve bir grafik düzenleyici aracılığıyla Delphi'ye görsel veri akışı programlama yetenekleri ekler (eşsesli ikili protokol ilgisizdir)
- Orange - Veri madenciliği , istatistiksel veri analizi ve makine öğrenimi için açık kaynaklı , görsel bir programlama aracı
- OutSystems dili, iş merkezli web uygulamalarının tüm katmanlarını geliştirmek ve değiştirmek için görsel bir modelleme dili
- Prograph - veriler üzerinde gerçekleştirilecek eylemleri temsil etmek için ikonik semboller kullanan nesne yönelimli bir programlama dili
- Ptolemy Projesi - gerçek zamanlı gömülü sistemleri modellemeyi ve tasarlamayı amaçlayan bir proje .
- Elektronik devre sinyali ve gürültü davranışının simülasyonunu kurmak için Qucs grafik arayüzü
- Reallusion - iClone , Lua diline ve görsel programlama tasarımına sahip bir 3D yazılım
- ROBO Pro , fischertechnik robotik kiti için görsel bir programlama dili
- Scicos sayısal analiz paketi ile ilişkili bir grafik dili ScicosLab (orijinal scilab )
- Sıralı fonksiyon şeması , programlanabilir mantık kontrolörleri için Petri-net benzeri bir programlama dili
- Simulink , çok alanlı dinamik sistemleri modellemek, simüle etmek ve analiz etmek için grafiksel programlama ortamı
- Stateflow , yürütülebilir durum geçiş şemaları, akış çizelgeleri, durum geçiş tabloları ve doğruluk tablolarını içeren bir grafik dil
- STELLA , sistem dinamiği modellemesi için bir VPL
- Softimage ICE , 3D modeller oluşturmak ve değiştirmek , parçacıkları simüle etmek ve çeşitli diğer görevleri gerçekleştirmek için kullanılan düğüm tabanlı bir sistemdir.
- VEE
- Modelleme ve simülasyon dili olan VisSim , matematiksel modellerin hızlı bir şekilde oluşturulmasını ve gerçek zamanlı olarak yürütülmesini sağlar.
Otomasyon
- otomatikleştirici
- CiMPLE , ThinkLAB'ler tarafından robotik öğretimi için Görsel Programlama Dili
- Flow , webMethods platformunda kullanılan bir grafik entegrasyon dili
- Pipeline Pilot , bilimsel bir görsel ve veri akışı programlama dili ve Accelrys Enterprise Platform için geliştirme aracıdır .
Veri ambarı / iş zekası
- Ab Initio , grafikler oluşturarak ETL işleme için bir araç
- Alteryx Designer , SQL , R ve Python'u içeren veri işleme ve analitik için bir araç .
- Apache Nifi , yazılım sistemleri arasındaki veri akışını otomatikleştirmek için yazılım projesi.
- IBM Cognos Business Intelligence , RDBMS veritabanlarına karşı çalıştırılacak SQL sorguları oluşturmak için kullanılan Business Intelligence uygulamalarındaki ön uç programlarına bir örnektir.
- Bir ETL aracı olan IBM InfoSphere DataStage
- Informatica Powercenter , Veri Ambarı sistemlerinde veri yükü için eşlemeleri grafiksel olarak tasarlamak için bir ETL aracıdır.
- Microsoft SQL Server Entegrasyon Hizmetleri (SSIS) , veri entegrasyonu ve iş akışı uygulamaları için bir platform
- Eskiden Kettle olarak adlandırılan Pentaho Veri Entegrasyonu (PDI) , açık kaynaklı bir ETL aracı
Çeşitli
- Alan Stillman tarafından yaratılan bir izotip görsel çevirmen olan Kwikpoint
- Lava , deneysel bir nesne yönelimli RAD dili
- Limnor , genel amaçlı bir programlama sistemidir. Limnor Studio, hızlı yazılım geliştirme için bir IDE'dir.
- Morphic (yazılım) , doğrudan manipülasyon yoluyla ve programların içinden grafik nesneleri oluşturmayı ve düzenlemeyi kolaylaştırır; Tüm Self (programlama dili) programlama ortamı Morphic kullanılarak oluşturulmuştur.
- Piet , ezoterik bir dil, program, pikselleri dilin öğeleri olan bir görüntüdür.
- PWCT , Yazılım geliştirme için ücretsiz açık kaynaklı görsel programlama dili
- StreamBase Systems , StreamBase EventFlow, akış olaylarını işlemek için görsel bir programlama dilidir
- WebML , otomatik olarak oluşturulabilen karmaşık veri yoğun Web uygulamaları tasarlamak için görsel bir dildir.
- Yahoo! Pipes , web verilerini işlemek için görsel bir veri akışı programlama sistemidir.
- YAWL , grafik iş akışı dili
Miras
- MicroBrew olarak da bilinen AppWare, klasik Mac OS ve Microsoft Windows için simge tabanlı programlama
- Macromedia Authorware - akış şeması tabanlı programlama dili
- Helix ve Double Helix, 1983'te oluşturulan Apple Macintosh platformu için öncü bir veritabanı yönetim sistemidir.
- Aydınlatma Yazılımı Oluşturucu , görsel olarak masaüstü ve mobil yazılım oluşturmak için bir dil ve IDE
- ThingLab
Görsel stiller
- DRAKON (Dragon) , Sovyet/Rus Buran (Kar Fırtınası) yörüngeli uzay aracının otomatik uçuşu ve inişi için yerleşik sabit gerçek zamanlı yazılım sistemini geliştirmek için tasarlanmış , SDL ve AADL'den etkilenen bir görsel 2D programlama dilidir.
- Çalıştırılabilir UML , bir profil arasında Evrensel Modelleme Dili UML'den bir alt kümesi için çalıştırılabilir anlambilim tanımlayan şartname
- Akış çizelgesi
- alt metin
Ayrıca bakınız
- argüman haritası
- Notasyonların bilişsel boyutları - Görsel ve görsel olmayan diller için notasyon değerlendirmesi
- Konsept harita
- Veri akışı programlama
- Deutsch limit , görsel bir gösterimde dil ilkellerinin bilgi yoğunluğu hakkında bir aforizma
- Etki alanına özel modelleme
- Sürükle ve bırak
- Akış tabanlı programlama
- Grafik çizimi
- Düşük kod geliştirme platformu
- Kodsuz geliştirme platformu
- programlama oyunu
- Birleştirilmiş Modelleme Dili
- görsel dil
- Görsel düşünme
Referanslar
- Bu makale orijinal olarak Ücretsiz Çevrimiçi Bilişim Sözlüğü'nden alınan ve izin alınarak kullanılan materyallere dayanmaktadır . Gerektiği gibi güncelleyin.