Bilgi İşlem Tasarım Kalıpları

0
anonim
Tasarım Kalıpları (Design Patterns) adı verilen akım, özellikle bilgi işlem yazılımcıları tarafından son yıllarda çok ilgi görmüştür. Bir tasarım kalıbı basit bir açıklama ile bir nevi reçetedir. Bu reçete, sürekli karşımıza çıkan bir sorun tipine karşı bulunmuş, gene sürekli verilmiş olan ve işe yarar bulunmuş bir çözümdür.

Yazının devamı için buraya tıklayın.

Görüşler

0
FZ
Konu ile ilgilenenlere birkaç güncel makale-tartışma adresi:

Design Patterns Still Aren't: A Pattern of Misunderstanding: Fetishizing the Gang of Four

http://perlmonks.org/index.pl?node_id=285065



Software Design Resources

http://perlmonks.org/index.pl?node_id=285637

0
mentat
hmm, cehaletimi bagislayin oncelikle, java'ci degilim.. ancak o yazida ben hic pattern goremedim. bazi isleri yapmak icin kullanilabilecek yontemler anlatilmis ama bunlar java dili ile ilgili degil, java kutuphanelerinden hangileriyle en dogru cozume ulasilabilecegi ile ilgili sanki. bir gariplik var sanki.

benim pattern'dan anladigim sey, dilin klasik deyimleri ile (nesne, inheritance, vs) cozumlenemeyecek islerin yine dilin kaliplari kullanilarak cozulmesi.

mesela singleton en basitinden. global member variable'dir kendisi ama biraz daha guvenli ve temiz bir kullanim getirir (duruma gore). ama dil disindan baska hicbir kutuphane vs kullanmazsiniz.

class SingletonFoo{
static SingletonFoo* m_pThis;
SingletonFoo();
~SingletonFoo();
public:
static const SingletonFoo* getInstance() {
if (!m_pThis) // bunu cpp'de 0'a esitledik
m_pThis = new SingletonFoo;
return m_pThis;
}
// buraya da non-static member funclar vs..
};

budur, mesela singleton..

neysem, benden onceki mesaji atan arkadasin da belirttigi gibi, pattern'lar konusunda bitmeyen bir tartisma da var. iyi mi kotu mu seklinde. ozellikle de GoF'un patternlarina karsi ciddi elestiriler mevcut. (adini hic bir zaman tam dogru yazamayacagim) Alexandriescu'nun da Modern C++ Design'di galiba kitabi ise ciddi saygi duyulasi bir baska kitap..

pattern nedir konusna donersek de, bazilarina gore veri yapilari bile bir pattern'dir (bence abarti biraz), kriter, dilin kendisi icinde olmamasi. (orn, yigit, kutuk, vs)

bir baska ilginc nokta da, gucunden pek suphe edilmeyen c/c++ pattern'lara muhtac iken, genelde parantez sayisiyla alay konusu olan Lisp'in pattern'lara ihtiyac duymayan, en ilerlemeye ve gelistirmeye acik dil oldugu gorusu..

neyse, sabah sabah daha fazla uzatmayayim..

bir de bir rica, patternlarin bence de en onemli islevi, yazilimcilar arasinda dil ve iletisim birligini saglamasi. o nedenle, siz de yazidaki pattern'larin turkce'lerinin yanina da en azindan ingilizcelerini ekleyebilirseniz parantez icinde, biz de daha iyi ogrenmis ve standart pattern'larin (inatla kalip demiyorum, dogru turkcesi oldugundan supheliyim) turkce isimlendirilmesini de saglamis olursunuz.
0
malkocoglu
Kaliplari, dil haricindeki alanlar icin de kullanabilirsiniz. Son zamanlarda revacta olan kalip kitaplari, teknoloji secimi, yazilim gereksinimleri analizi (requirement analysis) gibi konulara bile uygulanmaya basladi.

LISP hakkindaki yorumunuz ilginc.. Hakli olabilirsiniz. :)

Bilgi islem dunyasi bir bilim alani hala degil; Mesela karsilastiracak olsak, iliskisel veri tabanlarinin altinda kapi gibi matematiksel teori vardir, bir XYZ iliskilsel modelin 'dogrulugu' ispat edilebiliyor. Yazilim muhendisliginde bir nesnesel modelin dogrulugunu ispat edebiliyor muyuz? Bu soruya hala cevap hala hayir. Boyle gri bir alanda o yuzden zevkle ve renkler konusuyor, ya da tecrubeye dayali 'receteler'.

Kaliplari, bir onceki yazarin soyledigi gibi, cok buyutmemek lazim; Bizim takip ettigimiz kaliplarin 'formatidir'. Sunum tarzi olarak bilgi islem cozumleri icin kaliplarin uygun oldugunu dusunuyorum. Ayrica, baskalarinin kullandigi receteleri takip amaci ile de iyi olabiliyor. Template Method, Singleton, Observer kullanmasak bile, fikir olarak yararlandigimiz gorus acilari.

Iyi calismalar,



Görüş belirtmek için giriş yapın...

İlgili Yazılar

Her Nesil Kendi Filozofunu Yaratır

barbaros

Richard Stallman'ın kitabı için Stanford Hukuk Fakültesi Hukuk Profesörü Lawrence Lessig tarafından yazılan giriş bölümü...

Her nesil kendi filozofunu yaratır-bir yazar, ya da zamanın görüntüsünü yakalayan bir sanatçı. Kimi zaman bu filozoflar böyle tanımlanır; çoğu zaman bu tespitin doğrulanması nesiller alan bir zamanda gerçekleşir. Tanımlansın ya da tanımlanmasın, tarih ideallerini konuşan insanlar tarafından şekillenir. Belki bir şiirin fısıltısında, belki de politik bir hareketin haykırışlarında.

Bizim neslimizin de bir filozofu var. O bir sanatçı ya da profesyonel bir yazar değil. O, bir programcı.

Açık Akademi'den yeni kitap: Kullanışlı Web Siteleri Yaratma!

anonim

Kaliteli bilişim kitaplarını Türkçe'ye kazandırma projesi çerçevesinde Açık Akademi yeni bir kitabı daha okuyucuyla buluşturdu.

New Riders Press tarafından çıkarılan ve özgün ismi "Don't Make Me Think: A Common Sense Approach to Web Usability" olan kitap Türkçe'ye tercüme edilip basılmıştır. 25 YTL etiket fiyatıyla raflara gönderilen kitap Açık Akademi web sitesinden 22 YTL'den (KDV + kargo dahil) satışa sunulmuştur.

Ve yine Kevin Mitnick, bu sefer basımdan önce kaldırılmış ilk bölüm

Phaedrus

Kevin Mitnick´in yazdığı Art of Deception adlı kitaptan Wiley yayınevi tarafından basımdan hemen önce çıkartılan ilk bölümü Bu adreste okuyabilirsiniz. Genel olarak bu bölüm Mitnick´in geçirdiği kaçak günleri, hapisteki zamanlarını ve medyada Mitnick´in adıyla ve düzenlediği asılsız, popülist haberlerle, ardından da yazdığı kitapla milyon dolarlar kazanan gazeteci John Markoff´u anlatıyor.

Açık Akademi'den qmail kitabı!

anonim

FreeBSD İşletim Sistemi kitabı ile yayın hayatına başlayan Açık Akademi Yayınevi, ikinci kitabı "qmail, E-Posta Sunucusu" nu çıkardı. qmail e-posta sunucusu hakkında başlangıçtan ileri düzeye hemen her konunun yer aldığı kitap, EnderUNIX Yazılım Geliştirme Grubu üyeleri İsmail Yenigül, Barış Şimşek ve Huzeyfe Önal tarafından kaleme alınmıştır. qmail hakkında tek türkçe kaynak olan kitap 25 YTL'den satışa sunulmuştur.

http://www.acikakademi.com

Teknoloji Seçerken

malkocoglu_2

Bu yazıyı Java bilgi işlem teknolojilerinden biri olan Entity Bean'lerin erken ölümü üzerine yazdık. Zamanında büyük şaşa ile ortaya çıkan bu teknoloji niye böyle erken tedavülden kalktı? Ayrıca bu tecrübeden ders çıkarmak bağlamında, ileride bu tür geleceği olmayan ve külfetli teknolojilerin kokusunu nasıl alabiliriz? Bu yazı bilgi işleme daha çok hitap eden bir yazıdır çünkü 3-4 senede bir yeni bir dehşet teknolojiyle çalkantılar yaratan grup bu olmaktadır. Bu dinamizm tabii ki iyidir fakat bilgi işlem müdürleri ve proje yöneticileri için bu teknoloji enflasyonunda bir seçici turnusol testi lazımdır. Aksi halde sonuç InfoWeek Dergisi Pazartesi Günü Sendromudur; (Masasındaki Infoweek dergisinin yeni sayısını pazartesi günü okuyan yönetici) "XML diye bir şey cıkmış bütün dertlere devaymış! Hemen kullanalım!" . [Proje teknik lideri burada somurtur].

http://www.bilgidata.com/yazi.jsp?dosya=a_ejb_postmortem.xml