Anasayfa / Yazılım / Action Script 3.0 / Action Script Programlama Stratejileri

Action Script Programlama Stratejileri

Her bir işlemi küçük ölçekli düşünün!

Programlamanın en altın kurallarından biridir, her şeyi mümkün olduğunca en küçük parçalara ayırmak. Yani bir projede, bir uygulamada her bir adımı küçük kod parçacıkları ile yazmak en doğrusu olacaktır. Başlangıç seviyesindeki programcılar ve hatta bir çok deneyimli programcı dahi bu altın kuralı unutmaktadır, buna bizler de dahiliz 🙂 Hatta çoğu zaman bir uygulamayı en küçük hangi parçalara ayırabilirim diye düşünmeden, direkt olarak yüzlerce, binlerce satırı bir araya alıp bir sınıf ve hatta bir projeyi bitirebiliyoruz. Oysaki küçük parçalar halinde, ayrı ayrı sınıflarda, metotlarda işlemlerimizi yapmak bize çok büyük kolaylıklar sağlayacaktır.

Örneğin şöyle düşünelim, sahnemizde bir adam mevcut ve bu adam sağa, sola, yukarıya, aşağıdya hareket edebilecek. Bunu yapabilmek için klavyeden yön tuşlarını kullanacağız. Burada bizim için ne önemli, kullanıcı hangi tuşa bastı, bunu anlamak gerek, sonra adam hangi yöne gidecek bunu da yaptırmak gerek. İşte biz burada örneğin bir kod parçacağında kullanıcının hangi tuşa bastığını buluruz. Bir diğer kısımda sağ oka bastı ise sağa yönlendiririz. Bir diğer kısımda sola bastı ise sola gidecek. Aynı şekilde yukarı ve aşağı da. Yani her bir işlem durumunu küçük küçük düşünmek gerek. Böylelikle bize zor gibi gelen bir işlemi gerçekleştirebiliriz.

Yorum satırlarını kullanmak!

Yazmış olduğumuz kodları anlamlı bir şekilde yorum satırları ile açıklamamızın inanılmaz derecede faydası vardır. Her ne kadar kodlarımızı yazarken bize bu iş angarya gibi gelse de alışkanlık haline getirmekte fayda var. Herhangi bir durumda geriye dönüp bir kod satırı değiştirmek istediğinizde o satırda ne yaptığınızı hatırlatıcı şekilde yorum satırları size çok faydalı olacaktır. Böylelikle binler satırdan oluşan bir projenizde “ya ben burda bunu niye böyle yapmıştım” gibi sorularla düşünmekle vakit kaybetmeyeceksiniz. Veya diyelim ki bir işyerinde bir kaç ekip üyesi ile birlikte bir proje üzerinde çalışıyorsunuz. Herkes projenin belirli bir kısmını yazıyor. Bir takım metotlar yazdınız, ama hiç bir açıklama mevcut değil. Bir diğer ekip üyesi size danışmadan herhangi bir fikir sahibi olması çok güç olacak belki de mümkün dahi olamayacaktır. Dolayısı ile proje ekip işi olmaktan çıkacak ve ilerleme kaydedilemeyecektir. Açıklama satırı yazmayı aslında bir kural haline getirmeliyiz ve üşenmemeliyiz. Action Script kodlarında iki tür açıklama (yorum satırı) yapabilme şekli vardır. Bunlar satır şeklinde olanlar ve blok şeklinde olanlardır. Satır şeklindeki açıklamalar herhangi bir kod satırı öncesi veya sonrasında kısa açıklamalar için kullanılabilir. Blok şeklindeki açıklamalar ise birden fazla kod satırı, metotlar ya da bir sınıfı genel olarak açıklamak için kullanılabilir. Örneğin aşağıdaki kullanımları görebilirsiniz:

GuzelBirMetot(); // Bu satır şeklinde olan yorum, açıklama satırı
// Bu da satır şeklinde olan yorum, açıklama satırı
GuzelBirMetot(); 
/* Blok şeklindeki yorum, açıklama.
Görüleceği üzere birden fazla satır olabiliyor.
Ve kodların açıklamalarını içerebilir, bla bla falan filan şeklinde.. */

Yorumlarımız tabi anlamlı ve kısa olması mümkün olduğunca iyi olur. Örnek aşağıdaki gibi:

//10 defa dönecek döngümüz
for (var i:int=0;i<10;i++) {

Değişken isimlerinin, metotların, sınıfların mümkün olduğunca açıklayıcı nitelikte olmasına özen gösterin!

Değişkenler, sınıflar, metotlar vb için asla vereceğiniz isimlerin uzunluğundan korkmayınız. Mümkün olduğunca açıklayıcı isimler vermeye çalışınız. Örneğin son derece belirsiz bir kod yazalım:

public function BirSeyEkle() {
for(var i:int=0;i<10;i++) {
var a:Sey = new Sey();
a.x = i*10;
a.y = 300;
addChild(a);
}
}

Şimdi bu uygulama da ne yapılıyor. Tamam belki kodları anlıyoruz ama i,a, sey falan nedir bunlar? İşte böyle belirsiz isimler kullanılması aslında tamamen sıkıntı. Oysaki şöyle bir kod yazsak daha anlaşılır olur:

public function ToplariEkle() {
for(var TopSayisi:int=0; TopSayisi<10; TopSayisi++) {
var Top:TopTipi = new TopTipi();
Top.x = TopSayisi*10;
Top.y = 300;
addChild(Top);
}
}

Görüleceği üzere daha anlaşılır. Yani burda fonskiyonumda bir top eklendiği belli. Bir döngümüz mevcut, bu döngü sayesinde toplarımızı ekliyoruz. Topların döngüdeki sırasına göre ekranda konumlanacağı yerleri belirliyoruz. Gayet daha açık ve net.

Tabi özellikle diğer programlama dillerinde olduğu gibi döngüler için istisnalar yapabiliriz. Genelde hızlı kod yazmak adına döngülerde sayaç mantığı olarak i, j, k gibi değerler kullanılır. Bunu da belirtmeden geçemeyeceğim.

Tüm tekrarlanan işlemleri fonksiyonlar ile gerçekleştirin!

Bir projede, bir programda bir işlemi birden fazla kez yapmanız gerektiği durumlarda mutlaka fonksiyonlar oluşturun. Örneğin diyelim ki bir oyun yaptınız ve oyunda kullanıcı futbol maçını bitirdiğinde, futbol maçını durdurduğunda, bilgi almak istediğinde, ilk yarı bittiğinde ekrana skoru yazdırmak istiyorsunuz. Ve bunun içinde aşağıdaki gibi bir kod yazdınız:

SkorGoruntule.text = "Skor: "+OyuncuSkor;

Bunu her bir işlem sonucunda ayrı ayrı yazmak yerine bir fonksiyon olurşturup, fonksiyon içinde yazıp daha sonra ilgili yerlerde sadece fonksiyonu çağırabilirsiniz. Bizim burada örneğimiz tabi tek satırdan oluşan basit bir örnek oldu ama bu tekrarlanan kodların uzun satırlar sürdüğünü hayal edin. Büyük bir kolaylık sağlayacaktır. Neyse örneğimize dönelim:

SkorGoster() diye bir kod tanımlayıp, şöyle bir işlem yapalım:

public function SkorGoster() {
SkorGoruntule.text = "Skor: "+OyuncuSkor;
}

Böylelikle çok daha rahat bir şekilde işlem yapabiliriz. Hatta diyelim ki yanlışlık yaptınız ama fonskiyon kullanmadan onlarca satır yazdınız ve hep tekrar etti. İşte o zaman vay halinize 🙂 Her birini arayıp, bulmak falan uzun iş. Oysa böyle metotla (fonksiyonla) yaparsanız sadece ilgili fonksiyonu değiştirmeniz yeter, sonuç itibari ile diğer yerlerde fonksiyon adı ile çağırılıyor ve içindeki kodlar işletiliyor.

Program kodlarınızı sürekli test edin!

Mümkün olduğunca kodlarınızı küçük parçalar halinde sürekli test edin. Böylelikle eğer hatalı kod, mantıksal hatalar vb yapılmışsa daha kolay bir şekilde ve zamanında farkedebilir ve gerekli düzenlemelerinizi yapabilirsiniz. Örneğin diyelim ki ekranda 20 tane daire oluşturacaksınız, bu daireler rastgele konumlarda, rastgele renklerde ve rastgele boyutlarda olacak. İşte bu programı yazarken önce dairelerin rasgele konumlarda olduğunu yazın ve hemen test edin, baktınız doğru çalışıyor, sonra boyutlarını rastgele yapın yine test edin, sonra baktınız doğru bu sefer rastgele renklerinizi verin. Bunları asla angarya vakit kaybı olarak görmeyin, herhangi bir problemi başında yakalamak daha sonrasında onu aramaktan çok daha karlı bir işlemdir asla vazgeçmeyin.

Genel olarak programlama stratejilerimiz bunlar daha çok var ama genel olarak bunlar, bununla bitirmek istiyorum. Tabi sadece action script için geçerli değil, bu tüm programlama dilleri için geçerlidir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir