Kamis, 22 Desember 2016

 Pemrograman Berbasis Blok

         Pemrograman berbasis blok mucul pada akhir dekade 2000-an. Konsep dari pemrograman ini adalah seperti blok yang dipakai anak-anak untuk menyusun berbagai model seperti bangunan dan ada juga yang berbentuk seperti puzzle. Untuk membuat program, dalam pemrograman berbasis blok ini kita tidak menggunakan penulisan kode kode program (koding) seperti pada bahasa pemrograman java, c++, pascal dll, tetapi kita cukup dengan merangkai blok-blok penyusun program yang disediakan oleh masing-masing bahasa pemrograman yang berbasis blok. Dengan hal tersebut tentunya akan memudahkan siapa saja yang ingin belajar membuat program baik anak-anak, remaja, maupun dewasa dan dari berbagai macam latar belakang apapun.
·         Contoh bahasa pemrograman berbasis blok
1.     Scratch
Scratch adalah bahasa pemrograman yang didesain untuk memperkenalkan konsep pemrograman komputer secara sederhana sehingga dapat dipahami oleh siapa saja dari berbagai latar belakang. Bahasa pemrograman ini juga bisa digunakan untuk anak-anak dimana mereka bisa membuat program tanpa harus mempelajari penulisan kode teks. Untuk membuat sebuah program, mereka cukup merangkai blok-blok penyusun program, yang tersedia di scratch. Bahasa pemrograman scratch dapat dipakai untuk membuat aplikasi permainan (game), animasi, dan program-program kreatif lainnya dan scartch juga dapat digunakan untuk mengendalikan robot.
Bahasa pemrograman Scratch menampilkan antar muka yang sangat sederhana dan mudah digunakan. Konsep pemrograman scratch divisualisasikan dalam bentuk blok-blok program seperti memasang sebuah puzzle. Scratch merupakan aplikasi open source yaitu program komputer yang dapat dipakai secara gratis tanpa harus membayar lisensinya. Kelebihan open source ini memberi kebebasan dalam penggunaan dan pengembangan program tersebut. Program ini dikembangkan oleh Grup TK di MIT Media Lab, dengan dukungan keuangan dari National Science Foundation, Microsoft, Intel Foundation, Yayasan MacArthur, Google, Iomega dan MIT Media Lab konsorsium penelitian.
Program ini dapat didownload pada http://scratch.mit.edu/ 
Tampilan Scratch

 Kelebihan Scratch 
1) Scratch memiliki ukuran yang kecil dibandingkan bahasa pemrograman yang lain. 
2)  Antar muka (interface) yang sangat sederhana dan mudah digunakan untuk anak-anak. 
3) Anak-anak lebih mudah belajar logika pemrograman tanpa harus dirumitkan dengan penulisan sintaks dalam bahasa pemrograman pada umumnya. 
4) Scratch membantu anak-anak dalam membuat cerita interaktif, animasi dan game. 
5)  Scratch memungkinkan setiap orang dengan mudah menggabungkan gambar, suara maupun video tanpa harus memiliki kemampuan khusus di bidang pemrograman. 
6)     Animasi dapat dibentuk, dijalankan dan dikontrol.
7) Scratch mampu dijalankan pada sistem operasi Windows, Linux maupun Macintosh. 

2.     App Inventor
App Inventor adalah perangkat aplikasi yang dipakai untuk mengembangkan aplikasi untuk ponsel dan tablet yang berjalan di sistem operasi android. App inventor ini disediakan oleh googlelabs. App Inventor ini menggunakan teknik visual programming, berbentuk seperti susunan puzzle-puzzle yang memiliki logika tertentu. 
Tampilan App Inventor


Pada lingkungan kerja App Inventor ini terdapat beberapa komponen yang terdiri dari :

1)     Komponen Desainer, Komponen desainer berjalan pada browser yang digunakan untuk memilih komponen yang dibutuhkan dan mengatur property nya. Pada komponen desainer sendiri terdapat 5 bagian, yaitu palette, viewer, component, media dan properties.
a.       Palette : list komponen yang bisa digunakan
b.   Viewer : untuk menempatkan komponen dan mengaturnya sesuai tampilan yang  diinginkan
c.       Component : tempat list komponen yang dipakai pada project kita
d.      Media : mengambil media audi atau gambar untuk project kita
e.   Properties : mengatur properties komponen yang digunakan, seperti width, height, name, dll

2)     Block Editor, Block Editor berjalan di luar browser dan digunakan untuk membuat dan mengatur behaviour dari komponen-komponen yang kita pilih dari komponen desainer.

3)     Emulator, Emulator digunakan untuk menjalankan dan mengetest project yang telah kita buat. Jadi yang blom punya android pun tetep bisa belajar karna app inventor menyediakan emulatornya juga.

3.     Alice
Alice merupakan perangkat lunak yang dikembangkan di University of Virginia, Carnegie Mellon sejak tahun 1997, oleh kelompok penelitian yang dipimpin oleh Randy Pausch. Software ini ditujukan untuk mempelajari pembuatan aplikasi grafik berdimensi 3. Alice adalah bahasa pemrograman pendidikan berbasis objek freeware dengan lingkungan pengembangan terpadu (IDE). Alice menggunakan drag dan drop lingkungan untuk membuat animasi komputer menggunakan model 3D.
Tampilan Alice

Fungsi Alice
Alice dikembangkan untuk mengatasi lima masalah inti dalam program pendidikan, yaitu:
1)      Alice dirancang semata-mata untuk mengajarkan teori pemrograman tanpa semantik kompleks bahasa produksi seperti C ++. Pengguna dapat menempatkan objek dari galeri Alice ke dalam dunia virtual yang mereka bayangkan, dan kemudian mereka dapat memprogram dengan menyeret dan menjatuhkan ubin yang mewakili struktur logis. Selain itu, pengguna dapat memanipulasi kamera Alice dan pencahayaan untuk membuat perangkat tambahan lebih lanjut. Alice dapat digunakan untuk antarmuka pengguna 3D.
2)     Alice adalah siam dengan IDE-nya. Tidak ada sintaks untuk mengingat. Namun, mendukung pemrograman berbasis obyek penuh, model acara didorong pemrograman.
3)     Alice dirancang untuk menarik subpopulasi tertentu biasanya tidak terkena pemrograman komputer, seperti siswa usia sekolah menengah, dengan mendorong bercerita. Alice juga digunakan di banyak perguruan tinggi dan universitas di Pengantar kursus Pemrograman.
4)             Dalam studi terkontrol di Ithaca College dan Universitas Saint Joseph melihat siswa tanpa pengalaman pemrograman sebelumnya mengambil kursus ilmu komputer pertama mereka, nilai rata-rata meningkat dari C ke B, dan retensi meningkat dari 47% menjadi 88%.
5)     Alice dirilis di bawah lisensi open-source yang memungkinkan redistribusi kode sumber, dengan atau tanpa modifikasi, untuk penggunaan non-komersial saja.    

Varian Alice
1)     Animasi tingkat tinggi yang memungkinkan pengguna untuk program interaksi sosial antara karakter.
2)   Sebuah tutorial berbasis cerita yang memperkenalkan pengguna untuk pemrograman melalui membangun sebuah cerita.
3)     Sebuah galeri karakter 3D dan pemandangan dengan animasi yang dirancang untuk memicu ide cerita.

     Tools dalam program Alice
1)     Alice
2) AgentSheets, mudah digunakan permainan authoring dan alat authoring ilmu komputer
3) App Inventor, alat untuk membuat aplikasi untuk Android Google, berdasarkan Blockly dan Kawa
4)     Etoys scripting
5)     Flowgorithm, menciptakan diagram alur eksekusi yang dapat dikonversi ke beberapa bahasa.
6) Hopscotch, bahasa pemrograman visual untuk perangkat touchscreen mobile (tersedia di iPad).
7)     LARP, menciptakan diagram alur eksekusi, untuk platform Windows.
8)     Open Roberta, Pemrograman online dari Fraunhofer IAIS dirancang untuk anak-anak
9)     Raptor, menciptakan diagram alur eksekusi.
10)Scratch, produk MIT dirancang untuk anak-anak di K-12 dan setelah program sekolah
11)Snap!, perpanjangan Scratch dengan prosedur kelas pertama dan daftar yang digunakan untuk mengajar oleh UC Berkeley (implementasi ulang berbasis browser BYOB (bahasa pemrograman))
12)Stagecast Creator, sebelumnya Apple Kakao: Authoring Internet untuk Anak
13)StarLogo, bahasa simulasi berbasis agen dikembangkan oleh Mitchel Resnick, Eric Klopfer, dan lain-lain di MIT Media Lab. Ini adalah perpanjangan dari bahasa pemrograman Logo, dialek Lisp.
14)ToonTalk, sistem pemrograman untuk anak-anak
15)Visual Logic, menciptakan diagram alur eksekusi.

Sumber :
http://appinventor.mit.edu/explore/start-first-time.html
https://play.google.com/store/apps/details?id=edu.mit.appinventor.ai2
https://ulfahputribisbapti.wordpress.com/2014/12/15/perangkat-lunak-aplikasi/
https://grizenzio.blogspot.co.id/2015/08/pengertian-visual-block-progamming-dan.html
http://id.netlog.com/santisaridewi/blog/blogid=142079
http://kuliahitsingkat.blogspot.co.id/2013/04/app-inventor.html
https://phinueisal.wordpress.com/2014/06/21/mengenal-software-alice-pemrograman-berbasis-objek-3d/
http://rumahpintar-kembar.com/2013/08/05/belajar-pemrograman-untuk-anak-menggunakan-scratch/