Pemrograman
Visual
Visual Programming Language
– Kesalahan umum
– VPL tidak menghilangkan text
– Banyak VPL mengandung text dengan batasan tertentu
– Tujuan VPL yang utama adalah berusaha melakukan peningkatan dalam desain
Bahasa pemrograman.
– Keuntungannya adalah VPL mempunyai sintaktik yang lebih sedikit, mekanisme
pemrograman yang bebas walaupun belum pernah mencoba membuat
program sebelumnya.
Tujuan Utama VPL
1. Concreteness
2. Directness
3. Explicitness
4. Immediate visual feedback
Concreteness
– Tidak abstrak
– Menjelaskan (ekspresi) beberapa aspek dari program menggunakan objek yang
sesuai fakta-fakta
– The feeling that one is directly manipulating the object (B. Shneiderman)
– Dari sudut pandang kognitif, komputasi secara langsung adalah kedekatan
antara sebuah tujuan dan tindakan yang dibutuhkan pengguna untuk
mencapainya.
Memungkinkan pemrogram untuk memanipulasi objek atau nilai khusus secara langsung
daripada menjelaskan semantic-semantic tekstual.
B. Shneiderman, Direct manipulation: a step beyond programming languages. Computer 16(8): 57-69, August 1983.
Explicitness (ketegasan)
Tanimoto, S., VIVA: a visual language for image processing. Journal of Visual Languages Computing2(2): 127-139, June
1990.
Immediate Visual Feedback
(tingkatan liveness)
1. Tidak ada semantic yang tersirat dalam computer.
sehingga tidak ada umpan balik tentang program yang disediakan untuk
programmer.
Contoh : diagram entity – relationship untuk dokumentasi
2. Programmer dapat memperoleh umpan balik semantic tentang sebagian
program namun tidak disediakan secara otomatis.
Kompilator mendukung tingkat 2 sangat rendah, dan interpreter mendukung
lebih banyak karena tidak terbatas pada nilai output akhir.
Immediate Visual Feedback
(tingkatan liveness)
3. Umpan balik semantic tambahan yang secara otomatis tersedia setiap kali
melakukan pemrograman, seperti pengeditan dan semua nilai yang terkena
dampak akan kembali ditampilkan secara otomatis.
memastikan konsistensi tampilan dan system apabila pemicu perubahan
tersebut adalah pengeditan program.
Fitur perhitungan otomatis spreadsheet mendukung tingkat ketiga liveness ini.
– Dari keempat strategi tersebut, diterapkan pada empat contoh VPL yang
didemonstrasikan dalam beberapa cara.
1. Imperative visual programming by demonstration
2. Form/spreadsheet based visual programming
3. Dataflow visual programming
4. Rule-based visual programming
Imperative visual programming
D. Kurlander, Chimera: example-based graphical editing. In A. Cypher (ed.),Watch What I Do: Programming by
Demonstration, MIT Press, Cambridge, Mass, 1993.
Imperative visual programming
(Chimera Con’t)
– Domain Chimera adalah graphical editing.
– Sebagai pengguna akhir yang bekerja pada grafis, mungkin akan menemukan
pengeditan yang dibangun berulang,
– urutan manipulasi hanya dilakukan pada layar / tampilan, seharusnya dapat
digeneralisasi.
Imperative visual programming
(Chimera Con’t)
Forms/3
– merupakan contoh VPL yang mengikuti paradigm form.
– Pemrogram membuat program dengan menentukan bentuk dan isi.
– Ini adalah paradigma yang sering dilihat dalam spreadsheet yang bentuknya
berbentuk grid, isinya ditentukan oleh formula (persamaan) sel.
– Mendefinisikan formula setiap sel menggunakan kombinasi penunjuk
(pointing), mengetik (typing), dan isyarat (gesturing) yang fleksible.
Form/spreadsheet pada VPL
(Forms/3 con’t)
– Contoh dari jenis kotak yang ditentukan
oleh sketsa grafis, dengan spesifikasi
yang dapat dirubah dengan peregangan
kotak tanpa manipulasi langsung
– Concreteness -> box segera terlihat
ketika cukup persamaan
– directness -> manipulasi langsung
menentukan kotak.
Form/spreadsheet pada VPL
(Forms/3 con’t)
– Forms/3 adalah sebuah Bahasa lengkap – Turing.
– Meningkatkan penggunaan spreadsheet biada dengan konsep lengkap,
sehingga mendukung fitur grafik, animasi, dan rekursi tanpa memodifikasi
bahasa pemrograman tradisional.
– Pengguna ideal forms/3 adalah future programmer (yang belum menekankan
pada Bahasa pemrograman tradisional)
– Tujuan Forms/3 adalah mengurangi jumlah dan kompleksitas dari mekanisme
yang dibutuhkan untuk melakukan pemrograman aplikasi.
Dataflow pada VPL
Prograph (1989)
– Dataflow (aliran data)
– Programmer professional.
– Paradigma dataflow
– adalah pendekatan pemrograman visual yang digunakan paling banyak dalam industri
untuk semua tingkatan dari tingkat rendah hingga rinci yang dikelompokkan ke dalam
prosedur dan objek.
– Digunakan oleh VPE dengan domain khusus tingkat rendah,
– Contohnya, Sistem visualisasi ilmiah
Cox, P., F. Giles, T. Pietrzykowski, Prograph: a step towards liberating programming from textual Conditioning. 1989 IEEE Workshop on
Visual Languages, Rome, Italy, Oct. 4-6, 1989
Dataflow pada VPL
(Prograph Con’t)
– Mendukung debugging kuat dengan menggunakan teknik visualisasi dinamis.
– Level liveness (2)
– Programmer secara eksplisit meminta tampilan nilai setiap kali ingin melihatnya.
– Namun aktivitas runtime atau urutan node dapat dilihat di seluruh eksekusi
– Pin koneksi
Rule-Based pada VPL
Cocoa (1994)
– Sebelumnya dikenal dengan KidSim
– VPL berdasarkan aturan spesifikasi programmer melalui postcondition pada precondition.
– Cocoa merupakan Bahasa lengkap – turing, namun fitur-fitur belum dirancang untuk membuat pemrograman
yang luas, didesain agar anak-anak bebas menggunakan program simulai dengan kemampuan mereka sendiri.
– Concreteness
– Hampir sama dengan Chimera
D. Smith, A. Cypher, and J. Spohrer, Kidsim: programming agents without a programming language. Communications of the ACM 37(7): 54-67, July
1994.
Rule-Based pada VPL
(Cocoa Con’t)
– Cocoa wall climber
– Setiap aturan ditunjukkan
dengan precondition grafis di
sebelah kiri dan postcondition
grafis pada sebelah kanan.
Terima kasih
Tugas
– Analisa program scratch yang anda buat (Tugas I) dengan strategi pemrograman
visual yang ada, dan jelaskan.
– Hasilnya, dikumpulkan maksimal tiga hari dari sekarang.
– Melalui edmodo