ActionScript bir programlama dili olduğundan, ilk önce birkaç genel bilgisayar programlama kavramını anlarsanız, ActionScript’i öğrenmeniz kolaylaşacaktır.
Bilgisayar programları ne yapar
Öncelikle, bilgisayar programının ne olduğuna ve ne yaptığına dair kavramsal bir fikir edinilmesi yardımcı olacaktır.
Bilgisayar programının iki yönü vardır:
- Program, bilgisayarın gerçekleştirmesi için tasarlanmış talimatlar veya adımlar serisidir.
- Her adım bazı bilgi veya verilerin işlenmesini içerir.
Genel anlamda bilgisayar programı, bilgisayara verdiğiniz ve bilgisayar tarafından birer birer gerçekleştirilen adım adım talimatlar listesidir. Talimatların her birine deyim denir. Bu kılavuzda da göreceğiniz gibi, ActionScript’te her deyim, sonunda bir noktalı virgül olacak şekilde yazılır. Temelde, bir programdaki talimatın yaptığı tüm şey, bilgisayarın belleğinde saklanan bazı veri bitlerini işlemekten ibarettir. Basit bir örnek vermek gerekirse, bilgisayara iki sayı eklemesini ve sonucu belleğinde saklamasını talimat olarak verebilirsiniz. Daha karmaşık bir örnek vermek gerekirse, ekranda çizili bir dikdörtgen olduğunu ve bu dikdörtgeni başka bir yere taşımak için bir program yazmak istediğinizi varsayalım. Bilgisayar, dikdörtgenle ilgili belirli bilgileri izler, örn. dikdörtgenin konumlandırıldığı x, y koordinatları, genişliği, uzunluğu, rengi, vb. Bu bilgi bitlerinin her biri bilgisayarın belleğinde bir yerde saklanır. Dikdörtgeni farklı bir konuma taşıma programı, “x koordinatını 200 olarak değiştir; y koordinatını 15 olarak değiştir” (başka bir deyişle, x ve y koordinatları için kullanılacak yeni değerleri belirten) gibi adımlar içerecektir. Elbette bilgisayar bu sayıları gerçekten bilgisayar ekranında görüntülenen görüntüye dönüştürmek için bu verilerle bir şeyler yapar; ancak şu an için bizi ilgilendiren ayrıntı düzeyine göre, “ekrandaki dikdörtgeni taşıma” işleminin gerçekten bilgisayar belleğindeki veri bitlerinin değiştirilmesiyle gerçekleştiğinin bilinmesi yeterlidir.
Değişkenler ve sabitler
Programlama temel olarak bilgisayar belleğindeki bilgilerin değiştirilmesini içerdiğinden, programda tek bir bilgiyi temsil etmenin bir yolunun olması gerekir. Değişken, bilgisayar belleğindeki bir değeri temsil eden addır. Değerleri işlemek için deyimler yazdığınızda, değerin yerine değişkenin adını yazarsınız; bilgisayar değişken adını programınızda her gördüğünde, belleğine bakar ve orada bulduğu değeri kullanır. Örneğin, her biri bir sayı içeren, value1 ve value2 adında iki değişkeniniz varsa, bu iki sayıyı eklemek için şu deyimi yazabilirsiniz:
value1 + value2
Bilgisayar gerçekten adımları uygularken, her değişkendeki değerlere bakar ve bunları birbirine ekler.
ActionScript 3.0’da, bir değişken üç farklı bölümden oluşur:
- Değişkenin adı
- Değişkende saklanabilen veri türü
- Bilgisayarın belleğinde saklanan gerçek değer
Bilgisayarın, değerin yer tutucusu olarak adı nasıl kullandığını açıkladık. Veri türü de önemlidir. ActionScript’te bir değişken oluşturduğunuzda, bu değişkenin barındıracağı belirli veri türünü belirtirsiniz; bu noktadan sonra, programınızın talimatları değişkende yalnızca o veri türünü saklayabilir ve siz de o veri türüyle ilişkilendirilmiş belirli özellikleri kullanarak değeri işleyebilirsiniz. ActionScript’te, bir değişken oluşturmak için (değişkeni bildirmek de denilebilir), var deyimini kullanırsınız:
var value1:Number;
Bu durumda, bilgisayara yalnızca Number verilerini (“Number”, ActionScript’te tanımlı belirli bir veri türüdür) barındıracak value1 adında bir değişken oluşturması talimatını verdik. Değişkende hemen bir değeri de saklayabilirsiniz:
var value2:Number = 17;
Adobe Flash CS4 Professional’da bir değişken bildirmenin başka bir yolu vardır. Sahne Alanı’na bir film klibi sembolü, düğme sembolü veya metin alanı yerleştirdiğinizde, Özellik denetçisinde buna bir örnek adı verebilirsiniz. Flash uygulaması, sahne alanının arkasında örnek adıyla aynı ada sahip bir değişken oluşturur ve bu Sahne Alanı öğesini
ifade etmek için ActionScript kodunuzda bu değişkeni kullanabilirsiniz. Böylece, örneğin Sahne Alanı’nda bir film klibi sembolünüz olursa ve buna rocketShip örnek adını verirseniz, ActionScript kodunuzda rocketShip değişkenini her kullandığınızda, aslında bu film klibini işliyor olursunuz.
Sabit, bilgisayarın belleğinde belirli bir veri türüyle bir değeri temsil eden bir ad olması açısından değişkene çok benzer. Tek farkı, sabite bir ActionScript uygulaması sırasında yalnızca bir kere değer atanabilmesidir. Sabitin değeri atandıktan sonra tüm uygulamada bu değer aynı kalır. Sabit bildirme sözdizimi, değişken bildirme sözdizimiyle aynıdır, tek farkı, var anahtar sözcüğü yerine const anahtar sözcüğünün kullanılmasıdır:
const SALES_TAX_RATE:Number = 0.07;
Bir proje boyunca birden çok yerde kullanılan ve normal koşullarda değişmeyecek bir değeri tanımlamak için sabit kullanışlıdır. Değişmez değer yerine bir sabit kullanılması, kodunuzu daha okunaklı hale getirir. Örneğin, bir fiyatı SALES_TAX_RATE değeriyle çarpan bir kod satırının anlaşılması, fiyatı 0.07 değeriyle çarpan bir kod satırına göre daha kolaydır. Ayrıca, bir sabit tarafından tanımlanan değerin değişmesi gerekmiyorsa, projeniz boyunca o değeri temsil etmek için bir sabit kullanırsanız, sabit kodlu değişmez değerleri kullandığınızda yaptığınız gibi çeşitli yerlerde değeri değiştirmek yerine yalnızca bir yerde (sabit bildiriminde) değeri değiştirmeniz gerekir.
Veri türleri
ActionScript’te, oluşturduğunuz değişkenlerin veri türü olarak kullanabileceğiniz birçok veri türü vardır. Bunlardan bazıları “basit” veya “temel” veri türleri olarak değerlendirilebilir:
- Dize: bir ad veya kitabın bir bölümü gibi, metin değeri
- Sayısal: ActionScript 3.0, sayısal veriler için üç özel veri türü içerir:
- Sayı: kesirli veya kesirsiz sayılar da dahil olmak üzere herhangi bir sayısal değer
- int: bir tam sayı (kesirsiz bir tam sayı)
- uint: “işaretsiz” tam sayı, başka bir deyişle negatif olamayan bütün bir sayı
- Boolean: bir düğmenin etkin olup olmadığı veya iki değerin eşit olup olmadığı gibi, doğru veya yanlış değeri
Basit veri türleri tek bir bilgiyi temsil eder: örneğin, tek bir sayı veya tek bir metin sırası Ancak, ActionScript’te tanımlı veri türlerinin çoğunluğu, birlikte gruplandırılabilen değerler kümesini temsil ettiğinden, karmaşık veriler olarak açıklanabilir. Örneğin, Date veri türüne sahip bir değişken, tek bir değeri (tek bir zamanı) temsil eder. Ancak, bu değer gerçekte birçok değer olarak temsil edilir: gün, ay, yıl, saat, dakika, saniye, vb. ve bunların her biri ayrı ayrı bir sayıdır. Böylece, biz tarihi tek bir değer olarak düşünürken (ve Date değişkenini oluşturarak tek bir değer olarak değerlendirebilirken), bilgisayar dahili olarak bunu birçok değerden oluşan bir grup olarak değerlendirir, bir araya getirir ve tek bir tarihi tanımlar.
Programcıların tanımladığı veri türlerinin yanı sıra, yerleşik veri türlerinin çoğu da karmaşık veri türleridir.
Tanıyabileceğiniz karmaşık veri türlerinden bazıları şunlardır:
- MovieClip: bir film klibi sembolü
- TextField: dinamik bir alan veya girdi metni alanı
- SimpleButton: bir düğme sembolü
- Date: tek bir zaman (tarih ve saat) hakkındaki bilgi
Sınıf ve nesne sözcükleri genellikle veri türü için eşanlamlı olarak kullanılır. Sınıf, veri türünün tanımıdır, veri türünün tüm nesneleri için bir şablon gibidir, örn. “Example veri türünün tüm değişkenleri bu özelliklere sahiptir: A, B ve C.” söylemine benzer. Nesne ise sınıfın gerçek bir örneğidir; veri türü MovieClip olan bir değişken, MovieClip nesnesi olarak açıklanabilir. Aşağıda, aynı şeyi söylemenin birkaç farklı yolu verilmiştir:
- myVariable değişkeninin veri türü Number’dır.
- myVariable değişkeni bir Number örneğidir.
- myVariable değişkeni bir Number nesnesidir.
- myVariable değişkeni, Number sınıfının bir örneğidir.