Tur:Bloklarım

Özel Bloklar birinin kendi proglamlama bloklarını yapmasını sağlar. Özel bloklar kullanılarak, büyük, benzer kodlar bir yeniden kullanılabilir blok olur. Bazı diğer programlama dillerinde, özel bloklara "prosedürler," "fonksiyonlar," veya "metodlar" denir. Bu blok aynı blok sırasını farklı kod bölümlerinde tekrar etmeden tekrar kullanmak için kullanışlıdır.



Scratch'te Özel Bloklar
Özel bloklar "Bloklarım" paletinde bulunur. Bu bir "atlama" bloğu örneğidir: tanımla atla (ne kadar uzak :: custom-arg) y'yi (ne kadar uzak :: custom-arg) arttır :: motion (.5) saniye bekle :: control y'yi ((0) - (ne kadar uzak :: custom-arg) :: operators) arttır :: motion

yeşil bayrak tıklandığında atla (10) :: custom (20) adım git :: motion atla (20) :: custom Palet boş bir yer ile başlar ve sadece bir "Bir Blok Oluştur" dügmesi gösterir (bu "Değişkenler" paletindeki "Bir Değişken/Liste Yap" düğmesine benzer). Her "Tanımla" bloğu için, bir özel blok palette gösterilir. Bu özel blok sadece özel bloğun "Tanımla" bloğu olan kukla için vardır.

Özel bloklar sadece bir yığın bloğu olabilir. Haber verici veya boole bloğu olamaz (ama belki sonra ekleyebilirler). Yinelenmeyi desteklerler, böylece kendi kendilerini tetikleyebilirler (Haberler bloklarının aksine, şimdiki bloğun kodu çalıştırmasını durdurmaz. Bu fraktallar oluşturulmasına ve bir sayının faktörünü bulunmasına izin verir).

Özel Bir Blok Oluşturmak
Özel bir blok yaratmak için, "Bloklarım" kategorisini açın ve "Bir Blok Yarat" butonuna basın.Yeni bir blok menüsü açılacak, burada özel blok isimlendirebilir. "Ayarlar"a basarak, bloğa bir string, sayı, veya boolean girdisi eklenebilir. Bloğa daha fazla etiket yazı eklenebilir, veya ekranı yenilemeden çalıştırılması sağlanabilir. İsim koyulup argümanlar eklendikten sonra, bir tanımla bloğu oluşturulur. Bir özel bloğun özellikleri, daha sonra tanımla bloğuna veya bloğun kendisine sağ tıklanıp "düzenle" seçeneğine tıklanarak düzenlenebilit. Aşağıda gösterildiği gibi, özel bloğun çalıştırılınca ne yapacağı tanımla bloğuna kod ekleyerek düzenlenebilir..

(360) derece sağa dön :: custom

tanımla (miktar :: custom-arg) derece sağa dön :: custom (miktar :: custom-arg) defa tekrarla (1) derece sağa dön end

Scratch 1.x'te yerine geçen kod
yeşil bayrak tıklandığında [ne kadar uzak v], [50] olsun :: variables [atlama v] haberini sal ve bekle :: events

[atlama v] haberi gelince :: events y'yi (ne kadar uzak) arttır :: motion (.5) saniye bekle :: control y'yi ((0) - (ne kadar uzak) :: operators) arttır :: motion

BYOB/Snap!'te Prosedürler
Snap!, önceki adıyla BYOB (Build Your Own Blocks), bir Scratch modifikasyonudur, ve yardımıyla prosedürler oluşturulabilir. Snap!'in prosedürleri, veri girdileri (arguments), yinelemeyi (recursion), ve tüm 3 çeşit blokların yapılmasına izin verir.

Bakınız

 * (Custom block)
 * Define
 * Procedures in Squeak
 * How to Use Custom Blocks