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

Phishing Rehberi - Sivrizeka Para Tırtıklama Yöntemleri ve Korunma Şekilleri

FZ

Phishing, günümüzde yaygın olarak kullanılan bir saldırı yöntemidir. Görsel ve yazılı basında son zamanlarda online dolandırıcılık adı altında sık sık haberler duymaktayız. Phishing yönteminde temel kullanıcıyı kandırarak, kullanıcıya ilişkin kredi kartı bilgileri, banka hesap numaralarından bu hesaba ait internet şifresine kadar birçok özel bilgileri ele geçirmektir.

Kullanılan yöntemlerin başında e-posta ile gönderilen sahte mesajlar gelmektedir. Bu e-posta sanki bir ticari kurumdan(bankalar, alışveriş siteleri vb.) geliyormuş gibi bir izlenim yaratır. Bu, kullanıcının kendisine ilişkin bilgilerini girmesi için kuruma ait bağlantıya(link) tıklamasını içeren bir e-posta olabilir. E-posta içeriği kişisel bilgilerin güncellenmesi, sistemdeki yeniliklerin hesabınızda aktif olması için şifrenizi girin gibi mesajlardır.

Bunu gören kullanıcı e-posta ile gelen mesajdaki bağlantıya tıkladığında kurumun web sitesinin birebir kopyası olan başka bir sayfaya yönlendirilir. Burada girilen şifre gibi özel bilgiler artık başkasının eline geçer.

Tacettin Karadeniz'in FM camiası ile paylaştığı yazısının devamını burada okuyabilirsiniz.

Aşık Olacağınız Paylaşım Şekli: shfs

pismikrop

shfs için böyle bir başlık koydum çünkü ben aşık oldum. Artık elimdeki tüm sunucuları güvenli bir şekilde klasörlerimin içine bağlayıp eş-zamanlı iş yapabilirim. Ve iptables'ta tek izinli port ile.

Uzaktaki sunucuda ortak çalışma için öncelikle nfs'i denedik. NFS yerel ağda bir harikaydı. Ama uzaktan erişimi oldukça yavaş ve güvensizdi. Daha güvenli bir paylaşım için shfs biçilmiş bir kaftan. portmap, rpc gibi ek hizmetler gerektirmeyen harika bir paylaşım ortamı.

shfs için sunucu tarafındaki malzemelerimizi sayıyorum: bir adet ssh sunucusu :) istemci tarafındaki malzemelerimiz ise güncel çekirdek sürümünüze ait kernel başlıkları, shfs utils, shfs-source, gcc, module-assistant

Şimdi Debian GNU/Linux ile (ki ben Ubuntu kullanıyorum :) kuruluma sıra geldi...

Matematik Dünyası Dergisi

FZ

Prof. Dr. Ali Nesin yönetiminde çıkmaya başlayan Matematik Dünyası dergisi dolu dolu içeriği ile karşınızda.

Kapak konusu "Fonksiyonlar" olarak seçilmiş son sayıda, bunun yanı sıra, aramızdan ayrılan matematikçiler, topoloji köşesi, Fibonacci sayıları, bilgisayar bilimi köşesi (robotik ve diğer ilginç konular), geometri köşesi, paradoks ve satranç köşeleri gibi birçok başka bölüm de var.

Yabancı Sözcüklerin Dilimize Aktarımı

realist

IRC'de, forumlarda ya da günlük konuşmalarımızda iş gereği, haddinden fazla yabancı sözcük kullanıyoruz. Kurallara uygunluğundan vazgeçtim, galat-ı meşhura razıyken aramızda bütünlük oluşturmayı dahi başaramadığımızı görüyorum.

Güle Güle Arthur C. Clarke

tongucyumruk

Başta 2001: Bir uzay efsanesi ve Rama serisi gibi klasikler olmak üzere birçok bilim kurgu kitabının yazarı, iletişim uyduları teknolojisinin fikir babası Sir Arthur C. Clarke, bugün, Sri Lanka'da hayatını kaybetti.

Aslında o ölmedi, yıldız çocuk oldu sadece...