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

Dünya ile Rekabet Edecek Zehir Gibi Bir Bilgisayar Şirketi Kurmak

FZ

30 yıl maaşla çalışıp didinmek yerine zehir gibi bir bilgisayar şirketi kurup birkaç yıl geceli gündüzlü çalışıp çok zengin olmak... Herkese parmak ısırtacak çözümler sunmak... Rakipleri çatlatmak... İyi güzel ama nereden başlanır, nasıl başlanır? Ne gibi tehlikeler, tuzaklar vardır? Herkes o tür bir bilgisayar şirketi kurabilir mi? Bu işlere kaç yaşında başlanır? Şirketinize nasıl "hacker" seçersiniz? Peki ya parayı nereden bulacaksınız? Kısa sürede gelir elde etmeye nasıl başlarsınız? 100.000$ yeter mi? Ne kadar süreliğine? Geliştirdiği Viaweb'i birkaç yıl sonra Yahoo'ya 40.000.000$'a satan usta bir "hacker"ın deneyimlerini merak ediyor musunuz? O halde buyrun:

Bu belge Paul Graham'ın 2005 yılının Mart ayında yayınladığı "How To Start A Startup" başlıklı makalesinin çevirisidir. Çeviri Gülsün Arıkan tarafından gerçekleştirilmiş, son düzeltmeler Emre Sevinç ve Bülent Murtezaoğlu tarafından yapılmıştır. Paul Graham'a yazısının Türkçe çevirisini yayınlamamıza izin verdiği için teşekkür ederiz. Belgenin özgün adresi burasıdır.

Kitap Eleştirisi: Adım Adım LaTeX

FZ

Biz bilgisayarcılar için genellikle pek kaynak sıkıntısı yoktur, hemen hemen her türlü konuda diğer bilgisayarcılardan, USENET'ten, Google'dan, vs. kolayca bilgi edinebilir ve bunları pratik olarak uygulayabiliriz. Bununla birlikte bir konuya yeni başlayan birine derli toplu, sistematik olarak konuyu anlatan bir kitabın değeri ve pedagojik önemi tartışılmaz.

Adım Adım LATEX isimli kitap da yukarıdaki sebeplerden ötürü LaTeX konusunda önemli bir boşluğu dolduran belki de ilk ve tek Türkçe kaynak. Prof. Dr. Abdugafur Rahimov ve Orhan Kesemen tarafından yazılmış ve 2004 yılında kitabevlerinde satışa sunulmuş Adım Adım LaTeX kitabı, LaTeX isimli kaliteli belge oluşturma sistemine dair gerekli hemen hemen tüm bilgileri içeriyor. Kitabın ve LaTeX'in sadece matematikçilere ya da bilgisayarcılara hitap ettiğini düşünenler varsa, bu önyargılarını şimdiden silmelerinde fayda var. Psikolojiden, felsefeye, işletmeden hukuğa kadar, herhangi bir konuda ödev yazan, makale hazırlaması gereken ya da profesyonel görünümlü bitirme ödevi, yüksek lisans tezi, doktora tezi, kitap vs. yazmak isteyenlere bu kitabı rahatlıkla önerebilirim başucu kaynağı olarak.

Port Tarayıcıların Tehlikeleri, Yöntemleri, Karşı Savunma Stratejileri

FZ

Bilindiği gibi internet üzerindeki cihazların birbirleriyle konuşmasını sağlayan protokol ailesi TCP/IP'dir. Bu protokol grubunu düşündüğünüzde, asla herkese açık bir ağ üzerinden gizli bilgiyi gönderilmek amacıyla tasarlanmadığını görülür. Tasarlandığı dönemde, her zaman iletişimin özel ve güvenli hatlar üzerinde olacağı düşünüldüğünden bu yönden her hangi bir geliştirme düşünülmemiştir.

Serbülent ``Nightwalker´´ Ünsal´ın bu çalışmasında, bu gerçeği en ustaca kullanan araçlardan biri, port tarayıcılar incelenmiştir. Ancak burada şunu belirtmek gerekir ki; konun çok geniş bir kapsamı olması sebebiyle makalede büyük ağların ve ana bilgisayarların değil, genel olarak son kullanıcıların ve kişisel sistemler ile küçük ağların bu tehdit karşısındaki durumları incelenmiştir.

Her Yönüyle PARDUS Kitabı Çıktı!

anonim

Pardus, Tübitak’ın desteği ile hayat bulan tamamen Türkçe bir GNU/Linux dağıtımıdır. Kullananların internet ortamında her türlü desteği bulduğu, kullanıcı dostu, ilk çıktığından bu yana bilgisayar kullanıcıları arasında hızla kullanılıp yaygınlaşan, ücretsiz bir işletim sistemidir. Bu kitapla, hiç GNU/Linux kullanmamış okuyucuları başlangıç seviyesinden alıp üst seviyelere getirmek amaç edinilmiştir

Erciyes Üniversitesi Linux Topluluğu GNU/Linux Dergisi Çıkardı

anonim

Bilişim Kulübü altında faaliyet gösteren Erciyes Üniversitesi Linux Topluluğu (EULT) 2007 yılında kuruldu. Açık kaynak kodlu yazılıma katkıda bulunmak, GNU/Linux'a yeni başlayanlara rehberlik etmek amacıyla yola çıkan topluluk 2008 Ocak ayı itibarı ile e-dergisinin ilk sayısını yayınladı.

Dergiye http://universitem.erciyes.edu.tr/eult_e_dergi_1.pdf adresinden ulaşabilirsiniz.