Yazılım Mühendisliğinde Çıkmaz Sokak Tarifleri: Anti-Patterns

0
FZ
Bilgisayar yazılımları geliştirmekle yıllardır uğraşılmakta. Son yarım yüzyılda ortaya çıkan bu alanda çeşitli paradigmalar (prosedürel, nesne tabanlı, fonksiyonel, vs) ve çeşitli modeller (code reuse, unit testing, component model, extreme programming, design patterns) ortaya atıldı. Daha çok "Özgür Yazılım'' ile birlikte dağıtık geliştirme yöntemleri gündeme geldi. Tasarım, uygulama ve test aşamalarını kapsayan geniş bir açıdan baktığımızda bize önerilen çeşitli "doğru'' geliştirme yöntemleri var.

Diğer her alanda olduğu gibi dengeli ve sağlıklı bir kavrayışa sahip olmak için doğruların yanında "yanlış'' yöntemler hakkında da bilgi sahibi olmak gereklidir. Bu konuda yaşanmış çok tecrübe olmakla birlikte, yazılı olarak birkaç kaynak dışında ciddi bir eksiklik bulunmaktaydı. Bu makale, ağırlıklı olarak yazılım mühendisliği ile ilgili birkaç Internet sitesinden derlenmiş, daha çok özgür yazılım alanını ilgilendiren bu tür çıkmaz yolları tanıtmaktadır. Ortak noktaları:

* Çoğu bir problemi çözmek isterken ortaya çıkar
* İlk bakışta harika bir fikir gibi gözükebilirler
* En çok tasarım aşamasında görülürler
* Sizden çok daha üretken ve başarılı grupları batırmışlardır!

Gürer Özen'in Anti-Patterns çevirisinin devamını burada okuyabilirsiniz.

Görüşler

0
ttk
Çok faydalı bir döküman ve çalışma olmuş bence, ingilizcesini görse ne olduğuna bile bakmadan geçecek benim gibiler için özellikle...
Hazırlayanların eline sağlık.

Adres ve bilgi için teşekkürler.
0
mentat
Öncelikle eline sağlık yazarın, içeriğine hemfikirim, iyi Türkçe referans oldu böylece elimizde.

Anti-Pattern terimi üzerine bir sorum olacak. Benim bildiğim, ya da yanlış hatırladığım belki, bu terim yazının başlarında listelenen "modellerden", "design patterns"'ın (DPs) karşıt düşünce kampı anlamına geliyor, yanılıyor muyum? Ve bu DPs, yazılım mühendisliğindeki genel, proje yönetimsel olanlar değil de, kodlardaki DPs, yani singleton, proxy ıvır zıvır gibi taklaların genel adı olan DPs'e karşıt akımı tanımlıyor diye biliyordum.

Bir de, eğer çeviriyse, çevirinin orijinaline nasıl ulaşabiliriz?
0
cagataycatal
Güzel ve aciklayici bir yazi olmus ancak son anti-patternin ismiyle iliskili olarak biraz daha aciklama verilebilir.
Anti-patternler gercekten de yazilim dunyasinda bilerek ya da bilmeyerek yapilan hatalari ortaya koyup, farketmedigimiz hatalarimizi karsimiza cikariyor.
0
skoylu
Ortak noktaları:

* Çoğu bir problemi çözmek isterken ortaya çıkar
* İlk bakışta harika bir fikir gibi gözükebilirler
* En çok tasarım aşamasında görülürler
* Sizden çok daha üretken ve başarılı grupları batırmışlardır!


Bu sorunun asıl kaynağı, tasarım aşamasının süreç olarak külliyeten yanlış olmasından kaynaklanır. Bu noktada da devreye gerekler analizinin doğru yapılmayışı girer. ama çoğu zaman, işe başlarken elinizde doğru anlamda bir gerekler listesi bile yoktur maalesef.

Bu konuda,

http://cekirdek.uludag.org.tr/~tekman/blog/index.php?p=51

adresindeki kitaba gözatmak faydalı olacaktır.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Açık Akademi'den Ajax kitabı: Sağlamlığı Kanıtlanmış Tekniklerle Web 2.0 AJAX

yenigul

New Riders yayınlarından çıkan Bulletprof AJAX kitabı, Açık Akademi yayınlarından Sağlamlığı Kanıtlanmış Tekniklerle Web 2.0 AJAX adıyla yayınlanmıştır.

Nereden Geldik, Nereye Gidiyoruz?

oktay

"Multics'in giderek daha fazla şişmesi ve kullanılamaz bir beyaz file dönüşme emareleri göstermesi üzerine Bell Labs projeyi durdurdu (sistem daha sonra Honeywell tarafından ticari olarak pazarlandı fakat başarılı olamadı). Ken Thompson, özlediği Multics ortamının bazı fikirleri ile kendi fikirlerini eski bir DEC PDP-7 üzerinde denemeye başladı."

Knoppix Rehberi

yuxel

Knoppix'e yeni başlayanlar için bir rehber : Knowing Knoppix.

GNU/Linux'un ne olduğundan, Knoppix'in ne olduğuna; açılış parametrelerinden, KDE'ye; yerel ağ kurulumundan, yazdırma işlemlerine kadar pek çok konuyu basit bir dille anlatan faydalı bir eser.

Editörün Notu: Knoppix ile ne kadar acayip şeylerin yapılabileceğini merak edenlere iki adres daha: Knoppix Hacks ve True Stories of Knoppix Rescues

e-bergi Ağustos Sayısı ve Programlama Sorusu

anonim

e-bergi ağustos 2008 sayısıyla yine sizlerle. Ayrıca artık e-bergi'de bir de programlama sorumuz var, tıklayın kodlayın :)

Linux Açılış Disketi NASIL

yalcink01

Hep hayalini kurduğum şey, kendi başıma imal ettiğim bir işletim sistemi idi. Baktım ki bu iş oldukça uzun bir zamana mal olacak, ben de hayalimi güncelledim ve kendi birleştirdiğim bir işletim sistemi yapmaya karar verdim. Hani legolar var ya onun gibi bir şey işte. Eh, Linux çekirdeği artı GNU araçları ve bilumum özgür yazılım etrafta cirit atıyor:) Al parçaları birleştirmeye başla dedim ama işte orada tıkandım kaldım. Parçaları bulmak kolay ama bir GNU/Linux İşletim Sistemi nasıl çalışır, temel parçalar nelerdir, kim kimi tetikliyor, kimin eli kimin cebinde konuları biraz karışık. Demokraside çare tükenmez deyip kendi yol planımı yaptım ve işe başladım: Öncelikle "bu sistem nasıl açılır, temel parçalar ve ana hatlar nelerdir?" sorununun yanıtını bulabilmek amacı ile The Linux Bootdisk HOWTO kılavuzunu hatim eyledik. Sırada Çekirdek Çitleme Kılavuzu (tldp tarafından şu an güncelleniyor) ve The Pocket Linux kılavuzu var.

Linux Açılış Disketi NASIL kılavuzu; bir açılış disketi yapımını anlatmakla birlikte -ki bu işin çok daha kolay bir yöntemi de mevcuttur:mkbootdisk- sistemin ilk ateşlemesini ve bu sistemin çalışması için gereken temel araçları açıklaması yönünden bence oldukça önemli bir başlangıç noktasını oluşturmakta. İyi bir başlangıç olmakla birlikte, sistem temellerini anlayabilmek için tek başına yeterli olmasını beklemeyin. Zaten kılavuzun ana hedefi de bu değil. Adı üstünde: açılış disketi nasıl yapılır, onu anlatıyor :)

Her halükarda okunması gereken ve Linux öğrenmeye çalışan benim gibiler için, uygulanması gereken bir kılavuz. Init'in ne olduğunu anlamadan önce, init'in herşeyin atası olduğunu anlamak gerekir, öyle değil mi?

http://www.geocities.com/yalcink01/bootdisk-howto/index.html adresinden belgeye ulaşabilirsiniz. Her zaman olduğu gibi: her türlü geribeslemeye kapımız açıktır