Scratch (bahasa pemrograman)

Bahasa pemrograman


Scratch adalah sebuah bahasa pemrograman visual untuk lingkungan pembelajaran yang memungkinkan pemula (entah murid, guru, pelajar, atau orangtua) untuk belajar membuat program tanpa harus memikirkan salah-benar penulisan sintaksis. Layanan ini dikembangkan oleh MIT Media Lab, dan telah diterjemahkan ke lebih dari 60 bahasa, termasuk Bahasa Indonesia. Scratch diajarkan dan digunakan di sekolah, perguruan tinggi, serta lembaga pengetahuan publik lainnya. Pada September 2020, statistik kunjungan di situs web resmi menunjukkan lebih dari 59 juta proyek dibagikan oleh lebih dari 58 juta pengguna, dan terdapat hampir 36 juta kunjungan ke situs web per-bulan.[5]

Scratch
ParadigmaPemograman berbasis peristiwa, visual, dan Pemograman blok
Rilis perdana2002 (2002) (prototipe pertama)
2005 (2005) (prototipe kedua)
15 Mei 2007; 17 tahun lalu (2007-05-15) (rilis perdana)[1]
9 Mei 2013; 11 tahun lalu (2013-05-09) (Scratch 2.0)
2 Januari 2019; 5 tahun lalu (2019-01-02) (Scratch 3.0)
Rilis stabil
  • Scratch 3.0 (editor online) / 2 Januari 2019; 5 tahun lalu (2019-01-02)
  • Scratch 3.29.1 (editor offline) / 27 Februari 2022; 2 tahun lalu (2022-02-27)
Implementasi dariSqueak (Scratch 0.x, 1.x)
ActionScript (Scratch 2.0)
JavaScript (Scratch 3.0)
Sistem operasiMicrosoft Windows, macOS, Linux, HTML5
LisensiGPLv2 dan Lisensi Kode Sumber Scratch
Ekstensi nama berkas.scratch (Scratch 0.x)
.sb, .sprite (Scratch 1.x)
.sb2, .sprite2 (Scratch 2.0)
.sb3, .sprite3 (Scratch 3.0)
Situs webscratch.mit.edu
Repositoriscratch.mit.edu
Terpengaruh oleh
Logo, Smalltalk, HyperCard, StarLogo, AgentSheets, AgentCubes, Etoys
Mempengaruhi
ScratchJr,[2] Snap!,[3][4] mBlock
Sunting kotak info
Sunting kotak info • L • B
Info templat
Bantuan penggunaan templat ini

Scratch 3.2

sunting

Antarmuka pengguna

sunting

Antarmuka Scratch dibagi menjadi tiga bagian utama: area panggung, palet blok, dan area pengkodean untuk menempatkan dan mengatur blok menjadi skrip yang dapat dijalankan dengan menekan bendera hijau atau mengklik kode itu sendiri. Pengguna juga dapat membuat blok kode mereka sendiri dan mereka akan muncul di "Blok Saya".

Area panggung menampilkan hasil (misalnya, animasi, baik dalam ukuran kecil atau normal, dengan opsi layar penuh juga tersedia) dan semua thumbnail sprite dicantumkan di area bawah. Area panggung menggunakan koordinat x dan y, dengan 0,0 sebagai pusat panggung.[6]

Dengan sprite yang dipilih di bagian bawah area panggung, blok perintah dapat diterapkan padanya dengan menyeretnya dari palet blok ke dalam area pengkodean. Tab Kostum memungkinkan pengguna untuk mengubah tampilan sprite untuk menciptakan berbagai efek, termasuk animasi.[6] Tab Sounds (suara) memungkinkan untuk memasukan suara dan musik ke sprite.[7]

Saat membuat sprite dan latar belakang, pengguna dapat menggambar sprite mereka sendiri secara manual,[6] memilih Sprite dari perpustakaan, atau mengunggah gambar.[7]

Tabel di bawah ini menunjukkan kategori blok pemrograman:

Kategori Catatan    Kategori Catatan
  Motion Pergerakan sprite seperti sudut dan posisi      Sensing Memungkinkan sprite berinteraksi dengan lingkungan sekitar
  Looks Mengontrol kenampakan sprite   Operators Operator matematika, perbandingan
  Sound Memutar audio dan efek   Variables Membuat variabel dan daftar
  Events Penanganan peristiwa   My Blocks Mengizinkan membuat fungsi yang tidak memiliki nilai kembali
  Control Kondisional, perulangan dll.   Extensions Dijelaskan dibawah

Pengeditan offline

sunting

Editor desktop offline tersedia untuk Microsoft Windows 10 di Microsoft Store dan Apple macOS 10.13.[8] Hal ini memungkinkan untuk membuat program Scratch secara lokal, tanpa koneksi Internet. Editor offline juga dapat diunduh dalam versi sebelumnya, seperti Scratch 2.0 dan Scratch 1.4.

ekstensi

sunting

Di Scratch, ekstensi dapat menambahkan blok dan berbagai fitur tambahan yang dapat digunakan dalam proyek. Di Scratch 2.0 dan 3.0, semua ekstensi berbasis perangkat keras. Ekstensi berbasis perangkat lunak ditambahkan di Scratch 3.0, seperti text-to-speech, bersama dengan beberapa ekstensi berbasis perangkat keras baru seperti mikro: bit. Semua ekstensi tercantum di bawah ini:

Ekstensi fisik

sunting
  • LEGO Mindstorms EV3, mengendalikan motor dan menerima data sensor dari Lego Mindstorms EV3
  • Makey Makey, menggunakan Makey Makey untuk mengontrol proyek
  • LEGO Education WeDo 2.0, mengendalikan motor dan menerima data sensor dari Lego WeDo
  • Lego Education SPIKE Prime, bahasa pemrograman utama untuk Lego SPIKE Prime, termasuk mengontrol motor dan penerimaan data sensor
  • BBC micro:bit, menggunakan BBC micro: bit untuk mengontrol proyek
  • Lego BOOST
  • Go Direct Force & Acceleration, merasakan dorongan, gerakan, dan berputar.

Ekstensi digital

sunting

Banyak ekstensi digital di Scratch 3.0 dulunya merupakan blok biasa yang dipindahkan ke bagian ekstensi untuk merapihkan palet kode.

  • Musik, memainkan instrumen digital (drum, terompet, biola, piano, dan lainnya)
  • Pen, menggambar di panggung dengan berbagai ketebalan dan warna
  • Video Sensing, mendeteksi gerakan dengan kamera.

Berbagai ekstensi digital baru juga telah ditambahkan dalam kolaborasi dengan perusahaan komersial:

  • Text to Speech, mengonversi kata-kata dalam teks menjadi suara (disediakan oleh Amazon)
  • Translate, menggunakan Google Terjemahan untuk menerjemahkan teks dari satu bahasa ke berbagai bahasa lain, termasuk bahasa Arab, China, Belanda, Inggris, Prancis, Yunani, dan Jepang.

Pengguna juga dapat membuat ekstensi mereka sendiri untuk Scratch 3.0 menggunakan JavaScript.[9]

Komunitas pengguna

sunting

Scratch digunakan di banyak tempat yang berbeda: sekolah,[10] museum,[11] perpustakaan,[12] pusat komunitas, dan rumah. Meskipun kelompok usia pengguna Scratch yang ditargetkan adalah 8–16 tahun,[13] tetapi digunakan oleh semua usia. Scratch juga telah dibuat untuk pendidik dan orang tua. Jangkauan yang luas ini telah melahirkan banyak komunitas pengguna, baik fisik maupun digital.[5] Pada bulan April 2020, peringkat Tiobe untuk bahasa pemrograman dunia memasukkan Scratch ke dalam 20 besar. Menurut Tiobe, ada 50 juta proyek yang ditulis di Scratch, dan setiap bulan satu juta proyek baru ditambahkan.[14]

Pendidikan

sunting

Scratch populer di Inggris dan Amerika Serikat melalui ekskul pemograman. Scratch digunakan sebagai bahasa pengantar karena pembuatan program di Scratch menarik relatif mudah, dan keterampilan yang dipelajari dapat diterapkan pada bahasa pemrograman lain seperti Python dan Java.

Scratch tidak hanya digunakan untuk membuat game. Programmer juga dapat membuat animasi, teks, cerita, musik, dan lainnya. Sudah banyak program yang dapat digunakan siswa untuk mempelajari topik matematika, sejarah, dan bahkan fotografi. Scratch memungkinkan guru membuat pelajaran konseptual dan visual serta tugas lab sains dengan animasi yang membantu memvisualisasikan konsep yang sulit. Dalam ilmu sosial, instruktur dapat membuat kuis, permainan, dan tutorial dengan elemen interaktif. Menggunakan Scratch memungkinkan kaum muda untuk memahami logika pemrograman dan bagaimana mereka berkolaborasi dengan sesama secara kreatif.[15]

Scratch diajarkan oleh lebih dari 800 sekolah dan 70 perguruan tinggi organisasi DAV di India dan di seluruh dunia.[16][17]

Di pendidikan tinggi, Scratch digunakan pada minggu pertama kursus pengantar ilmu komputer CS50 di Universitas Harvard.[18][19]

Komunitas online

sunting
 
"Jumper", contoh game yang dibuat dengan Scratch

Di Scratch, pengguna memiliki kemampuan untuk membagikan proyek mereka dan mendapatkan umpan balik. Proyek dapat diunggah langsung dari lingkungan pengembangan ke situs web Scratch dan setiap anggota komunitas dapat mengunduh kode sumber lengkap untuk dipelajari atau digabungkan ke dalam proyek baru.[20][21] Anggota juga dapat membuat studio proyek, memberi komentar, memberi tag, favorit, dan "menyukai" proyek orang lain, mengikuti anggota lain untuk melihat proyek dan aktivitas mereka, dan berbagi ide. Proyek berkisar dari permainan, animasi, hingga alat praktis. Selain itu, untuk mendorong kreasi dan berbagi di antara pengguna, situs web ini sering membuat tantangan yang bernama "Scratch Design Studio".[22]

Tim Scratch MIT bekerja untuk memastikan bahwa komunitas ini memelihara lingkungan yang bersahabat dan menghormati semua orang.[23][24]

Pendidik memiliki komunitas online mereka sendiri yang disebut ScratchEd, dikembangkan dan didukung oleh Sekolah Pascasarjana Pendidikan Harvard. Dalam komunitas ini, pengajar Scratch berbagi cerita, bertukar pikiran, dan mengajukan pertanyaan.[25]

Scratch wiki

sunting

Scratch Wiki adalah sumber informasi Scratch, situs webnya, sejarah, dan fenomena yang mengelilinginya. Meskipun didukung oleh Scratch Team (pengembang Scratch), Scratch wiki terutama ditulis oleh Scratchers (pengguna Scratch) untuk informasi mengenai program dan situs web.

Pengembang

sunting

Baik Scratch 2.0 dan 3.0 adalah open source di GitHub, dan pengembang dapat berkontribusi untuk Scratch.

Referensi

sunting
  1. ^ https://en.scratch-wiki.info/wiki/Scratch_Timeline#May
  2. ^ https://www.scratchjr.org/
  3. ^ https://snap.berkeley.edu/
  4. ^ https://snap.berkeley.edu/about
  5. ^ a b "Community statistics at a glance". scratch.mit.edu. Diarsipkan dari versi asli tanggal 2016-04-06. Diakses tanggal 2019-05-18. 
  6. ^ a b c Marji, Majed (2014). Learn to Program with Scratch. No Starch Press. hlm. xvii, 1–9, 13–15. ISBN 9781593275433. 
  7. ^ a b "Science Buddies: Scratch User Guide: Installing & Getting Started with Scratch". ScienceBuddies.org. Diarsipkan dari versi asli tanggal 2019-05-18. Diakses tanggal 2019-05-18. 
  8. ^ "Scratch Desktop". Diakses tanggal 19 September 2019. 
  9. ^ "Scratch 3.0 Extensions". Github. MIT. Diakses tanggal 19 September 2019. 
  10. ^ Oliveira, Michael (2014-04-30). "Canadian schools starting to teach computer coding to kids". CTV.ca. Diarsipkan dari versi asli tanggal 2019-05-18. Diakses tanggal 2019-05-18. 
  11. ^ "Scratch Day". Science Museum of Minnesota. Diarsipkan dari versi asli tanggal 2013-04-08. Diakses tanggal 2019-05-18. 
  12. ^ Lamb, Annette; Johnson, Larry (April 2011). "Scratch: Computer Programming for 21st Century Learners" (PDF). Teacher Librarian. 38 (4): 64–68. Diakses tanggal 2019-05-18. 
  13. ^ "Scratch - About". scratch.mit.edu. Diakses tanggal 2020-10-07. 
  14. ^ Fay, Joe (2020-04-06). "Kids programming language Scratch nails top 20 in latest dev rankings • DEVCLASS". DEVCLASS. Diakses tanggal 2020-04-27. 
  15. ^ Martin, Neil (2015-06-25). "What is Scratch? Is it AV or IT?". AV Magazine. Diarsipkan dari versi asli tanggal 2019-05-18. Diakses tanggal 2019-05-18. 
  16. ^ "DAV CS Syllabus" (PDF). Diarsipkan dari versi asli (PDF) tanggal 2018-07-13. Diakses tanggal 2019-05-18. 
  17. ^ "DAV Jharkhand Syllabus". Diakses tanggal 2019-05-18. 
  18. ^ Young, Jeffrey R. (2007-07-20). "Fun, Not Fear, Is at the Heart of Scratch, a New Programming Language". Diarsipkan dari versi asli tanggal 2019-05-18. Diakses tanggal 2019-05-18. 
  19. ^ "CS50 Syllabus". Diarsipkan dari versi asli tanggal 2015-03-17. Diakses tanggal 2019-05-18. 
  20. ^ Monroy-Hernandez, Andres; Hill, Benjamin Mako; Gonzalez-Rivero, Jazmin; Boyd, Danah (2011). "Computers Can't Give Credit: How Automatic Attribution Falls Short in an Online Remixing Community". Proceedings of the 29th International Conference on Human Factors in Computing Systems (CHI '11). ACM. hlm. 3421–30. arXiv:1507.01285 . doi:10.1145/1978942.1979452. 
  21. ^ Hill, B.M.; Monroy-Hernández, A.; Olson, K.R. (2010). "Responses to remixing on a social media sharing website". ICWSM 2010 : Proceedings of the Fourth International Conference on Weblogs and Social Media, May 23–26, 2010. Washington, D.C.: AAAI Press. arXiv:1507.01284 . Bibcode:2015arXiv150701284M. ISBN 9781577354451. OCLC 844857775. 
  22. ^ "Scratch Design Studio". wiki.scratch.mit.edu. Diarsipkan dari versi asli tanggal 2019-05-18. Diakses tanggal 2019-05-18. 
  23. ^ "For Parents". scratch.mit.edu. Diarsipkan dari versi asli tanggal 2019-04-04. Diakses tanggal 2019-05-18. 
  24. ^ "Scratch Community Guidelines". scratch.mit.edu. Diarsipkan dari versi asli tanggal 2019-04-07. Diakses tanggal 2019-05-18. 
  25. ^ "Scratch for Educators". scratch.mit.edu. Diarsipkan dari versi asli tanggal 2008-10-05. Diakses tanggal 2010-05-18.