Scratch grafik programlama dilleri arasında yer almaktadır. Çocukların yaratıcılıklarını öne çıkararak hayal ettikleri tasarımları geliştirebilecekleri, oyun, animasyon ve uygulamalar yapabilecekleri bir programdır. 7-16 yaş arasında öğrencilerin kullanımına uygun geliştirilmiş programlama dilidir.

Scratch programı https://scratch.mit.edu/download adresinden ücretsiz olarak bilgisayara indirilip kurulabilir veya https://scratch.mit.edu/ adresine girilerek online olarak (indirmeden) kullanılabilir. 

Eğlenceli bir ortamda resim, ses, müzik gibi çeşitli medya araçlarını bir araya getirebileceğimiz, kendi animasyonlarımızı, bilgisayar oyunlarımızı tasarlayabileceğimiz ya da etkileşimli hikayeler yazabileceğimiz bir grafik programlama dilidir.

Scratch, MIT Medya Laboratuarında geliştirilmiştir. ( Massachusetts Institute of Technology )

Scratch kelimesi her ne kadar “çizmek” ya da “kedi tırmığı” anlamlarına gelse de program ismi buradan türetilmemiştir. Scratch programı ismini DJ’lerin plakları ileri geri itip (scratching) müzik parçalarını yaratıcı bir şekilde bir araya getirmesinden alır.


SCRATCH PROGRAMI ARAYÜZÜ

Eklenen kuklalar ve arka plan resimlerinin görüntülendiği, projenin çalıştırıldığı alana Sahne denir.

Sahne içerisinde kullanılan karakterlere Kukla denir.

Koordinat sistemi yatay ve dikey 2 ekseni belirtir.

Ekrandaki her bir nokta yatay (x) ve dikey (y) bileşenlerinden oluşur. 

Örnek:

(3,-2) noktası; x değeri 3, y değeri -2 olarak anlaşılır. (0,0) noktası; ekranın merkezini gösterir.

KUKLA ALANI VE DEKORLAR

Bu alan içerisinde; 

*Sahneye kukla ekleme
*Sahneye dekor (arkaplan) ekleme
*Kuklaların sahne içerisindeki konumlarını ayarlama
*Kukla büyüklüğü ve kukla yönünü ayarlama
*Kuklaya isim verme gibi işlemler yapılmaktadır.


!!! Kukla alanında seçili olan kukla farklı renk ve çerçeveye sahiptir. Kod alanında bu kuklaya ait kod blokları görüntülenir. Diğer kuklalara kod bloğu eklemek için ilgili kukla seçilmelidir.

Kuklaların birden fazla farklı görünümleri bulunabilir. Kuklaların her bir görünümüne kostüm denir.

Karakterimizin başka görünümlerinin olmasını istiyorsak kamera ile çekilebilir, kendimiz çizebilir ya da içe aktarabiliriz. Var olan kostümleri silebiliriz, kostümü düzenleyebiliriz veya kostümün aynısından bir tane daha ekleyebiliriz.



Sesler bölümünden yeni sesler ekleyebilir, var olan sesi dinleyebilir veya silebiliriz. 



Scratch programında programlama için gerekli olan kodlar bloklar halinde bulunur. Bu kod blokları birbirine ekleyip birleştirerek projeler geliştirilir.

Hareket Blokları

Kuklaların sahnedeki konumu, hareket yönü, hareket miktarı, dönme dereceleri gibi 
komutların bulunduğu alandır.

Görünüm Blokları

Kuklaların boyutu, görünüp gizlenmeleri, farklı kostümlere geçişi, görsel efektleri, dekorlar ve dekor 
geçişleri gibi komutların bulunduğu alandır.

Ses Blokları

Bu kod blokları sayesinde proje içerisinde ses ekleme/düzenleme işlemleri yapılır. 
Kuklara ait sesleri «Sesler» bölümünden oynatabilir ve düzenleyebiliriz.

Olaylar Blokları

Komutların hangi olay gerçekleştiğinde çalışacağını belirleyen
kod blokları bu alanda bulunmaktadır.

Kontrol Blokları

Döngü: Kod bloklarının kaç kere tekrarlanacağını ifade eder.

Şart ( Koşul ) : Kod bloklarının hangi durumlarda çalıştırılacağını ifade eder.

*Kod alanına bir kuklaya ait birden fazla bağımsız kod blokları eklenebilir.

Algılama Blokları

Ses yüksekliği, zamanlayıcı, farenin x ve y koordinatları gibi tüm
algılama işlemlerini gerçekleştirmektedir.

Operatörler Blokları

Matematiksel ve mantıksal işlemlerin yapılmasına olanak olarak sağlayan kod
bloklarının bulunduğu alandır.

Değişkenler Blokları

Bu alanda bir değişken oluştur düğmesine tıklayarak istediğimiz isimde
yeni bir değişken oluşturabiliriz.

Bloklarım Bölümü

Bu alanlar içerisinde önceden oluşturulmuş kod blokları yoktur.
Blokları kullanıcı tarafından oluşturulur.

Eklenti Ekle

Eski sürümde bulunan bazı kod blokları ile yeni sürüme eklenen
bazı kod blokları bu alan içerisinde bulunmaktadır. 

Örnek Algoritma ve Kod Blokları

Adım 1 Başla
Adım 2 100 Adım Git 
Adım 3 Sola Dön
Adım 4 1 saniye bekle
Adım 5 100 adım git 
Adım 6 «Hedefe Ulaştım» mesajı yazdır
Adım 7 Bitir


Doğrusal Mantık Yapısı

Yapılacak işlemlerin sırasıyla, hiçbir koşul olmadan, basit bir şekilde belirtildiği yapılara doğrusal mantık yapısı denir. Doğrusal mantık yapılarında şarta bağlı herhangi bir işlem bulunmamaktadır.



Karar Yapısı

Kodların istenen durumlarda veya şartlarda çalışması istenebilir.
Bu tarz algoritmalarda kullanılan yapılar Karar Yapısı’dır.


Döngü Yapısı

Tekrarlanan işlemler ve kod bloklarında kullanılan yapılara döngü yapısı denir.