Cumartesi, Şubat 05, 2005

Persistence Layer

Şu aralarda büyük proje "kod adı opera" nın Persistence Layer'i üzerinde çalışıyorum. Opera firmamızın önem verdiği ve gelecekte Ticaret Programcılığına yeni bir boyut katma iddiası taşıyan bir proje. Çocuğun asıl adı ne olur bilemem ama biz şimdilik Opera diyoruz.

Bundan 7 ay kadar önce, Opera daha aklımda fikir olarak bile yoktu ve ben Business Object'lerimi nasıl kaydedeceğimin derdine düşmüştüm. Aslında benim açımdan bu iş nesneleri konusu bir muamma idi çünkü genellikle düşünsel açıdan başladığım zamanki amaçlarımdan farklı bir noktaya gelmiştim. Bir akşam Martin Fowler imzalı "Patterns of Enterprise Application Architecture" kitabını okuyordum. "Nesne = Sorumluluk taşıyan data parçacığı" kavramına geldiğim zaman düşünmeye başladım.

Normalde data parçasını structure olarak düşünüyoruz. Bu data parçasına bir sorumluluk yüklemek istediğimizde bunu sınıf haline getiriyoruz. Sınıfımıza yaşama şansı verdiğimizde ise bu bir nesne oluyor. Sıcaklık adında bir data parçamız varsa ve sıcaklığı değişik birimlere çevirmek gibi bir iş yapmak istiyorsam data parçama ilgili çevrim metodumu yazıyorum ve bu data parçası artık bir sınıf oluyor. Veya int sınıfını string sınıfına çevirmek istiyorsam int sınıfımın ToString() metodunu çağırıyorum. Buraya kadar tamam ama nesneyi bir business nesnesi gibi düşündüğümde bazı şeyleri bu kadar net açıklayamıyorum.

Müşteri ve sipariş arasında geçen bir iş mantığımızın olduğunu düşünelim. Müşteri ve Sipariş diye iki tane nesnemiz var. Bunlar arasında da birden çoğa bir ilişki var. Sipariş konusu içinde "siparişleri sevketmek" gibi bir işimiz olduğunu düşünelim. Bu sorumluluğu kim alacak? Veya müşterimin sevkedilmemiş siparişlerini öğrenmek istiyorum. Bu sorumluğu müşteri nesnesine mi vereceğim yoksa sipariş nesnesine mi? Farklı fikirler olabilir ancak bence böyle bir sorumluğu her iki nesneye de vermek yanlış. Hatta bu tür nesnelere sorumluluk dahi vermek yanlış. Business nesnelerinin yegane sorumluluğunun datayı tutmak olması gerektiğini düşünüyorum...

Evet opera sisteminin ana mantığına kısaca giriş yaptım ancak şimdilik yoruldum. Buraya kadar yazdıklarımı bir iki gün sonra tekrar okuyacağım ve hoşuma giderse devam edeceğim...

GMail

Aslında itiraf etmek gerekirse buraya GMail davetiyesi dağıtılıyor diye geldim. Neyseki sevgili arkadaşım beni GMail'e davet etti de ben de bundan kurtuldum. Tamam tamam artık şaşkoloz modunu hızla terkedip normal moda dönüş yapmanın zamanı geldi.

Diğer bazı "başarılı" programcı arkadaşlar gibi *in English* yazmayacağım. Türk programcısı olaraktan Türkçe yazacağım. Belki English bilen baba firmalar engin fikirlerimden dehşete kapılıp kapımı aşındırmayacaklar ama eminim kendimi Türkçe daha iyi ifade edeceğim. Peki.

Geri döndüm

Burada bir yerim olduğunu hatırladığımda geri dönüp birşeyler yazmak istedim. Bakıyorum ki bundan 6 ay önce "delphi kullanıyorum" demişim. Delphi'yi evet bıraktım ve C# tayfasının arasında katıldım. Bu blog ne işe yarar diye düşünüyordum :) Ama evet en az 6 aydır C# ile program yazdığımı görüyorum. Delphi'nin sıcak ortamını özlemeyeceğim diyemiyorum ama "implements" keyword'u haricinde hiçbirşeyini özlemiyorum. Delphi Deli Eder.

Pazar, Haziran 27, 2004

Delphi kullanıyorum.

Delphi kullanıyorum. Bazen hasta etse de vefalı sevgili gibi bir türlü peşimi bırakmıyor. Sigara gibi. Bir gün ikisini de bırakacağım galiba :))

Salı, Haziran 08, 2004

Valla fotoğraf bile koydum. Allah allah yaaa birşeyler yapıyorum sonra da gelip buraya yazıyorum. Deli miyim acaba?

Hehe vallahi iyi bişeymiş bu blog.

Biraz evvel borland newsgrouplarında dolanırken baktım ki Borlandcı vatandaşlar moda yapmışlar blog olayını. Eee biz geri kalır mıyız? Ben de bakiim dedim neymiş bu blog? Güzel birşeymiş. Yazalım bakalım bizde birşeyler bir gelen olursa belki ayıp olmasın. Şimdi şiir felan da döktüremem ki saat sabahım beşi olmuş zaten. Neyse biraz milletin bloglarını kurcalayım bakalım belki ilham alırız.

Müthiş başlangıç

Blogu başlattık bakalım. Neyse bu?