Arda Çetinkaya Yazılım ve arada kendim ile ilgili karaladıklarım…

Microsoft Patterns&Practices ekibi Application Architecture Guideline’nın son versiyonunu yayınladı. .Net ile bir uygulama geliştirirken mimari tasarımlarda nelere dikkat etmek gerekir ve nasıl bir mimari oluşturulmalıdır gibi konuların ele alındığı bu guideline’a http://www.codeplex.com/AppArchGuide adresinden ulaşabilirsiniz. 

Live Write ile WordPress uyumlu calisiyor mu.Ne yazik ki Turkce karakterlerde sorun yasayabiliyorsunuz.Bakiniz bu yazi.

Hevesim kursagimda kaldi. ):

Agile geliştirme yöntemlerinden Scrum ile ilgili 10 dakikalık bu videoyu izlemenizi tavsiye ederim.

10 dakikada Scrum

ViewState kavramı dinamik kontroller yaratırken çok önemlidir. Yaratılan dinamik kontrollerin durumlarını ViewState sayesinde koruyabilir, bu kontroller üzerinde işlemler yaparken ViewState’deki datayı kullanabiliriz.
Ancak bu noktada dinamik olarak yarattığımız ve sayfaya eklediğimiz kontrollerin hiyerarşik yapısından emin olmamız lazım.  Nedir bu yapı peki?
Sayfaya eklediğimiz kontroller, belli bir düzene göre o sayfada yer alır. Bu yapıya Control Tree denir. Dinamik yada statik olarak eklediğimiz kontrollerin bu ağaç yapısındaki yerlerinden biz sorumlu oluruz. Controls.Add(Control c) şeklinde bu kontrol ağacına yeni kontroller ekleyebiliriz. ViewState kavramı bu noktada çok önem kazanıyor. Aşağıdaki gibi bir örnekle bunu açıklamaya çalışacağım.
Şimdi bir tane Button olduğunu farzedelim.Buna basınca yeni 2 tane kontrol ekleyelim.

protected void Button1_Click(object sender, EventArgs e)
{
            TextBox mail = new TextBox();
            this.form1.Controls.Add(mail);

            TextBox phone = new TextBox();
            this.form1.Controls.Add(phone);
}

Bir çoğumuz ilk olarak böyle yapıyoruz eminim ki. Button’a tıkladığımızda sayfa postback olur, ASP.NET Page LifeCycle sırayala çalışır ve son olarak bu event çalışır ve ekranda 2 tane textbox görürüz. Buraya kadar her şey çok güzel. Ancak sayfada başka bir postback olduğunda bu kontrollerin kaybolduğunu ya da durumlarının korunmadığını görürüz.
Ve ilk olarak aklımıza ViewState gelir. Ancak ViewState gelmeden önce kontrol ağacını düşünmemiz gerekir. Çünkü ViewState, kontrol ağacındaki kontrollerin durumundan sorumludur. Kontrol ağacının kendisinden sorumlu değildir. Controls.Add() şeklinde kontrol ağacına eklemediğimiz kontrollerin ViewState’lerini korumamak pek mümkün değildir. Bu durumda 2. bir postback olduğunda kontrol ağacında hiç bir kontrol olmadığı için, kontrollerin ViewState’leri de olmaz.

MicrosoftMicrosoft Türkiye,3 Aralık 2008 günü Yazılım Geliştiriciler Zirvesi etkinliği ile yazılım geliştiriciler ile buluşuyor. Ayrıntılı bilgi ve kayıt için http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032396783&Culture=TR-TR adresini ziyaret edebilirsiniz.