• Tidak ada hasil yang ditemukan

Scratch vs Blockly

Dalam dokumen Buku Informatika 2022 SMP/MTs KELAS IX (Halaman 89-97)

Bab 7 Algoritma dan Pemrograman

A. Scratch vs Blockly

Kalian sudah pernah memprogram dengan menggunakan Bahasa Scratch.

Dalam Bahasa Scratch, kalian selalu mempunyai stage (panggung), backdrop, dan Sprite (yang dinyatakan dalam bentuk gambar kucing, manusia, ular, atau benda apapun). Sprite dapat kalian “mainkan” seperti kalian memainkan wayang melalui perintah (digerakkan/diubah posisinya, bersuara,

mengatakan sesuatu dalam bentuk tekstual). Dalam sebuah program Scratch, kalian dapat membuat karya interaktif, yaitu Sprite dapat merespons event yang diberikan, misalnya melalui klik mouse, ketukan keyboard, atau lewat interface lainnya seperti konduktor (buah, copper plate atau lainnya) yang dihubungkan ke Makey-Makey sebagai interface ke komputer.

Sprite dapat bereaksi terhadap event, atau digerakkan melalui perintah-perintah yang tersedia. Program pun baru akan mulai dijalankan saat kalian memberikan event. Pada dasarnya, pemrograman dalam Scratch berbasis event. Artinya, objek-objek yang tersedia siap menerima event dan dapat dieksekusi atau dijalankan kode programnya “bersama-sama”. Sebagai catatan, objek-objek tersebut kelihatannya dijalankan bersama-sama, padahal sebetulnya, dilakukan secara bergiliran. Itulah sebabnya, misalnya kalian dapat mempunyai sebuah game, di mana ada dua sprite (objek) kucing yang berkejar-kejaran, atau bahkan dua kucing berebut ikan asin yang berjatuhan dari atas. Kalian harus menulis kode program untuk setiap sprite yang dibuat. Jika sudah belajar dengan baik, kalian tentu dapat memahami bagian ini.

Beberapa blok Scratch sama dengan blok yang tersedia di Blockly.

Mari, pelajari kesamaannya. Akan tetapi, patut dicatat bahwa blok yang dicantumkan di sini adalah blok Blockly yang dasar, yang belum diperkaya dengan blok yang digunakan untuk keperluan tertentu. Perbandingan ini didasari tools yang ada di:

1. Scratch: https://scratch.mit.edu/ 

2. Blockly : https://developers.google.com/blockly 

Scratch: https://scratch.mit.edu/ 

Create Stories, Games, animation!

Blockly : https://developers.google.

com/blockly 

75

Bab 7 Algoritma dan Pemrograman

Dari gambar di atas, terlihat bahwa blok dalam Blockly dasar lebih sedikit dibandingkan Scratch. Scratch memang dirancang untuk membuat cerita (komik), permainan, dan animasi. Fitur dasar Scratch dirancang untuk membuat aplikasi yang lebih interaktif dibanding Blockly. Fitur yang disediakan Blockly lebih sedikit, yaitu berupa fitur dasar (primitif) saja. Akan tetapi, dengan fitur dasar tersebut, kalian dapat membuat produk-produk seperti yang dapat dibuat dengan Scratch, meskipun membutuhkan waktu yang lebih lama.

Cara yang dipakai untuk memprogram dalam kedua lingkungan tersebut juga berbeda. Scratch merupakan program visual yang berbasis event dan aplikasi hasil memprogram Scratch lebih interaktif. Adapun Blockly merupakan program yang menerapkan teknik pemrograman prosedural, tetapi perintahnya menggunakan blok yang sangat mirip dengan Scratch.

Tahukah kalian bahwa Scratch 3.0 dikembangkan dengan menggunakan Blockly? Jadi, sebuah bahasa pemrograman dikembangkan menggunakan bahasa pemrograman yang sudah ada. Kalian dapat membaca mengenai hal ini pada tautan berikut ini: https://developers.googleblog.com/2019/01/

Scratch-30s-new-programming-blocks.html.

Lalu, mengapa kalian perlu mempelajari Scratch dan juga juga Blockly?

Mengetahui dan dapat memakai banyak bahasa itu perlu, seperti dalam kehidupan nyata. Mau tidak mau, kalian juga perlu mengetahui banyak bahasa.

Sebagai contoh, di Indonesia kalian menggunakan bahasa Indonesia, bahasa daerah, serta bahasa Inggris karena bahasa Inggris saat ini paling banyak dipakai sebagai bahasa komunikasi internasional. Semakin banyak bahasa yang kalian pelajari, kalian akan semakin bisa berkomunikasi dengan lebih banyak kalangan. Dalam dunia informatika, juga sama. Sebaiknya, kalian juga mengenal lebih dari satu bahasa pemrograman seperti Scratch dan Blockly.

Tabel berikut ini menunjukkan perbandingan blok-blok dalam Scratch dan Blockly.

Tabel 7.1 Perbandingan Blok-Blok dalam Scratch dan Blockly

Kelompok

Blok Blok Scratch Kelompok

Blok Blok Blockly

Control Nama Blok: repeat Loops Nama Blok: repeat n times

Nama Blok: repeat until Nama Blok: repeat while Simbol Visual:

Nama Blok: forever Nama Blok: repeat_

forever

Nama Blok: for each item in list

Nama Blok: if then Logic Nama Blok: if.. do

Nama Blok: if then else Nama Blok: if.. do..

else

77

Bab 7 Algoritma dan Pemrograman

Kelompok

Blok Blok Scratch Kelompok

Blok Blok Blockly

Operators Nama Blok: + Math Nama Blok: +

Nama Blok: - Nama Blok: -

Nama Blok: * Nama Blok: ×

Operators Nama Blok: / Math Nama Blok: ÷

Nama Blok: mod Nama Blok: remainder of

Nama Blok: length of Text Nama Blok: length of

Variables Nama Blok: set variable to

V a r i -

ables Nama Blok: set variable to

Nama Blok: change

variable by Nama Blok: change

variable by

Nama Blok: show

variable Nama Blok: return

variable value

Nama Blok: hide varible

Kelompok

Blok Blok Scratch Kelompok

Blok Blok Blockly

MyBlock Nama Blok: Make a Block Function Nama Blok: to do something

Nama Blok: Make a Block

– Add an input Nama Blok: to do

something input name:x

Nama Blok: to do something…return

Catatan penting

Karena Scratch adalah bahasa yang berbeda dengan Blockly, tentu saja ada blok Scratch yang tidak ada pada Blockly. Sebaliknya, ada blok pada Blockly yang tidak ada pada Scratch.

Uji Pemahaman

Sebelum mulai membuat program, ayo, uji terlebih dahulu pemahaman kalian tentang perbedaan Blockly dan Scratch yang sudah dijelaskan di atas!

1. Pemrograman dalam Bahasa Scratch adalah pemrograman berbasis event.

Apa yang dimaksud dengan pemrograman berbasis event?

2. Mengapa kalian perlu menguasai banyak bahasa pemrograman?

3. Tuliskanlah dua nama blok yang ada di Scratch, tetapi tidak ada di Blockly!

4. Tuliskanlah dua nama blok yang ada di Blockly, tetapi tidak ada di Scratch!

79

Bab 7 Algoritma dan Pemrograman

Ayo, Kita Kerjakan

Aktivitas Individu

Aktivitas AP-K9-01: Bilangan Prima

Tujuan: Mengenal dan membandingkan blok-blok yang ada pada Scratch dan Blockly

Tingkat Kesulitan: 1

Syarat Pengetahuan: Konsep Bilangan Prima

Untuk mengingat kembali blok yang ada pada Blockly dan Scratch serta melihat perbandingannya, kalian dapat melakukan aktivitas ini. Pada aktivitas ini, kalian akan membuat program dalam Blockly dan Scratch untuk menentukan apakah sebuah bilangan bulat positif, yaitu N, adalah sebuah bilangan prima atau bukan.

Input: Sebuah bilangan bulat positif, yaitu N.

Output: Tulisan di layar berupa

• Prima jika N adalah sebuah bilangan prima.

• Bukan Prima jika N bukan sebuah bilangan prima.

Contoh Input dan Output:

Nomor Contoh Input Contoh Output

1. 2 Prima

2. 150 Bukan Prima

3. 173 Prima

Analisis

1. Untuk dapat memeriksa apakah sebuah bilangan bulat positif adalah bilangan prima atau bukan, kalian perlu mendefinisikan sebuah variabel, yaitu bilangan bulat positif N, sebagai input.

2. Selanjutnya, untuk dapat menentukan apakah sebuah bilangan adalah bilangan prima atau bukan, kalian perlu mengingat kembali definisi dari bilangan prima. Sebuah bilangan bulat positif N disebut prima jika N hanya memiliki dua buah faktor pembagi, yaitu 1 dan N. Oleh karena itu, perlu diperiksa apakah ada faktor pembagi selain 1 dan N. Kalian tentu

mengetahui bahwa faktor pembagi dari N pasti ada di antara 1 sampai dengan N.

3. Untuk itu, kalian perlu membuat sebuah variabel, yaitu variabel i.

Variabel ini akan bernilai 2 sampai dengan N-1. Jika ada nilai i yang merupakan faktor pembagi dari N, maka N pasti bukan bilangan prima.

Jika sebaliknya, maka pasti N adalah bilangan prima.

Algoritma/ Kerangka Program Input: bilangan bulat N

Output: Prima jika N adalah bilangan prima, atau Bukan Prima jika N bukan bilangan prima.

Langkah:

1)Untuk semua nilai i = 2 sampai i = N:

2)Periksa apakah N habis dibagi dengan i:

3)Jika iya, maka N bukan bilangan prima

4)Jika tidak ada i yang habis membagi N, maka N adalah bilangan prima

Berdasarkan analisis di atas, ayo, buatlah program Blockly dan Scratch untuk memeriksa apakah sebuah bilangan adalah sebuah bilangan prima atau bukan!

Simpan program yang sudah kalian buat ke dalam sebuah file. Berilah file tersebut nama dengan format berikut: AP-K9-01-<Nomor Absen><Nama>.

Catatan: Kalian juga dapat memberi nama file sesuai instruksi dari guru kalian.

Ayo, Kita Renungkan

Setelah melakukan aktivitas tersebut, lakukan refleksi dan jawablah pertanyaan ini pada jurnal kalian!

1. Apakah kalian senang belajar materi ini?

2. Apakah kalian dapat menjelaskan mengapa kalian perlu menguasai berbagai bahasa pemrograman?

3. Apakah kalian dapat menjelaskan perbedaan apa saja yang ada pada kode program dalam Bahasa Scratch dan Blockly untuk aktivitas di atas?

4. Apakah materi ini dirasa sulit?

5. Apakah kalian dapat menyelesaikan tugas praktik dari guru tepat waktu?

81

Bab 7 Algoritma dan Pemrograman

Dalam dokumen Buku Informatika 2022 SMP/MTs KELAS IX (Halaman 89-97)