Tur:Değişken

Bir değişken, Scratch'in hafızasında tutulan değiştirilebilir bir veridir. Listelerin tersine değişkenler tek seferde sadece bir değer alabilir. Bu değer sayılar veya stringler olabilir herhangi bir yazı. Kodlama alanındaki bir değişken bloğuna tıklamak, değişkenin değerini bildiren bir baloncuk görüntüler. Diğer pek çok programlama dilinin aksine, değişkenler proje gerçekten çalıştırılmadan önce oluşturulmalıdır. Bu, proje gerçekten çalıştığında sadece küçük bir miktar RAM kullanımı ile sonuçlanır. Değişkenler, değişken kategorisindeki butonuyla oluşturulur.

Değişken Blokları
Değişkenlerle ilgili beş blok vardır:
 * (bu blokta değişkenin ismi yazar, ve değişkenin değerini bildirir)
 * i yap
 * i kadar değiştir
 * değişkenini göster
 * değişkenini gizle

Türleri
Scratch 1.4'te, iki tip değişken vardı, public (küresel), and private (yerel). Scratch 2.0'da, başka bir tür eklendi bulut. Bulut verisi değişkenleri sunucuda saklanır, bu da onların aynı değerlerine, projeyi görüntüleyen bütün kullanıcıların erişmesini sağlar.

Küresel değişkenler
Varsayılan olarak, bir değişken oluşturulduğunda, o bir küresel değişkendir. Küresel değişkenler, bütün kuklalar, veya Sahne tarafından değiştirilebilir. Tüm değişkenler RAM'de saklanır ve varsayılan olarak .sb veya .sb2 dosyasındaki değerlere kaydedilir.

Yerel değişkenler
Yerel, (veya özel/kişisel) değişkenler küresel gibi oluşturulur, ama değişken oluşturma diyaloğunda "Sadece bu kukla için" seçeneği seçilir. Yerel değişkenler sadece ait oldukları kukla tarafından değiştirilebilir, ama nin i bloğu kullanılarak diğer kuklalar tarafından erişilebilir. Sahne yerel değişkene sahip olamaz.

Yerel değişkenler, kopyalanıp düzenlenilmesi gereken kuklalar için aşırı derecede kullanışlıdır.. Örneğin, oyuncunun baloncukları patlatması gereken bir oyunda, "baloncuk" kuklasının "hız" gibi yerel değişkenleri olmalıdır ve bağımsız olarak programlanmalıdır. Sonra yeterince baloncuk olana kadar kopyalanmalıdır. Her baloncuğun ayrı bir "hız" değişkeni olduğu için, "hız"ın bir küresel değişken olmasının aksine, birbirine müdahale edemezler.

Bulut değişkenleri
Bulut değişkenleri sunucuda saklanan değişkenlerdir, yine de tek seferde bir değer alabilirler. Bir bulut değişkeninin değeri güncellendiğinde, bunu projenin açık olan bütün kopyaları için günceller, aynı zamanda projenin sonraki açılışı için kaydedilir. Bulut değişkenlerinin isimlerinin yanında küçük bir bulut sembolü vardır.

Kullanım
Değişkenler, bir değer saklanmak istendiğinde kullanılır mesela, eğer bir proje kullanıcıdan ismini yazmasını istediğinde ve o ismin proje tarafından hatırlanması istendiğinde, isim bir değişken olarak saklanmalıdır. Bu sayede, isim istenen zaman kullanılabilir; projenin yapması gereken tek şey onun değerini almaktır (yani isim).

Değişkenin görünüşü üç forma çevrilebilir: Normal görünüş, geniş görünüş, ve kaydırıcı görünüşü. Değişkenin görünüşü çift-tıklayarak veya sağ-tıklayarak istenen seçeneği seçerek, veya büyütme/küçültme aletiyle tıklayarak değiştirilebilir.

Değişkenin görünüp görünmeyeceği, blok paletindeki onay kutucuğuyla veya ona sağ-tıklayıp "gizle"ye tıklayarak seçilebilir.

Eğer değişken kaydırıcı görünümünde ise, değişkenin değerini gösteren kutucuğa sağ-tıklamak yeni bir seçenek gösterir: "kaydırıcı en az ve en çok sınırını belirle". Bunu seçmek kullanıcıya değişkenin en az ve en çok kaç olabileceğini belirlemesini sağlar.

Değişken Hataları
İsimlerini şöyle şeyler koyarak arızalı değişkenler yapabilirsiniz: %d (açılır menü/sayı girişi), %s (yazı girişi), %m (değişken açılır listesi), %b (mantıksal girdi), %n (sayı girişi), or %c (renk girişi), bu şekilde soldaki gibi görünecekler. Bunu sebebii Scratch'in yüzde işareti ve belirli harfleri argüman olarak algılamasıdır. Bir değişkenin ismini @greenFlag veya @stop koymak onları bir yeşil bayrak veya durdur tuşu sembolüne dönüştürür, sırayla sağdaki gibi. Aynı zamanda @turnRight ve @turnLeft kodları döndürme işaretleri yapar, sağa ya da sola.

Bu numaralar sadece Scratch 2.0'da çalışır. Bu hata Scratch'in v423 sürümünde düzeltilmiştir ve artık çalışmaz.

Listeler
Bir liste öğelerden oluşur değişkenler gibi şeyler. Listeler fazla değişken gerektiğinde veya proje çalıştırılmadan önce programcının saklanacak verinin miktarını belirleyemediğinde kullanışlıdırlar.

Örnekler
Değişkenler skor tutmak, sağlığı göstermek, oyuncularla bağlanmak, ya da birkaç arkadaşı listelemek gibi şeyler için tonlarca projede kullanılır. İşte değişken kullanan birkaç proje örneği:

https://scratch.mit.edu/projects/46587498/ - griffpatch'in çok oyunculu "Terraria" oyunu oyunculara bağlanmak için bulut verisi kullanıyor

https://scratch.mit.edu/projects/52484548/ - LBMCompany'nin sanal teleskop projesi ekranda kaç yıldız olduğunu göstermek için değişken kullanıyor

https://scratch.mit.edu/projects/26547147/ - MooShoeGaming'in "The Front" projesi kullanıcın hayatta olup olmadığını anlatmak için "Doğru veya Yanlış(True/False)" durumları olan bir değişken kullanır.

https://scratch.mit.edu/projects/34429446/ - djpro'nun platform oyunu yapma rehberinde yerçekiminin topun hareket ve zıplamasına etkisini gösteren değişkenler var.

Bunlar programlarda kullanılan sadece birkaç örnekti, değişkenler Scratch'teki pek çok projede farklı amaçlar için kullanılır.

Bakınız

 * Veri blokları
 * Liste
 * Sahne monitörü

Dış Linkler

 * Vikipedi'de değişken
 * Giriş Tipi Belirteçleri