- Claude Code ve Codex gibi kodlama ajanları çağındaki geliştirme yaklaşımını derleyen bir rehber; ajanlarla işbirliği yapmaya yönelik yeni mühendislik kalıpları sunuyor
- Kod yazma maliyetinin keskin biçimde düştüğü bir ortamda geliştirme alışkanlıkları ve iş akışlarının nasıl değişmesi gerektiğini çeşitli kalıplarla açıklıyor
- İlkeler, test, kodu anlama, prompt tasarımı gibi ajan merkezli geliştirmenin temel alanlarını yapısal olarak düzenliyor
- Her kalıp; gerçek kod örnekleri, çalışma biçimleri ve prompt kullanım örneklerini içeren pratik odaklı kalıp belgeleri biçiminde sunuluyor
- Kodlama ajanları çağında geliştiricilerin ajan tabanlı kodlama ortamını sistemli biçimde tasarlayıp kaliteyi koruması için somut bir başvuru kaynağı
Agentic Engineering Patterns genel bakış
- Kodlama ajanlarıyla (Claude Code, OpenAI Codex vb.) birlikte geliştirme yaparken etkili mühendislik yöntemlerini derleyen bir rehber
- Writing about Agentic Engineering Patterns tanıtım yazısına bakın
- Klasik “Design Patterns” formatı gibi, zaman içinde birden fazla kalıbın (chapter) eklendiği bir belge yapısı
- Kod yazma maliyetinin büyük ölçüde düştüğü ortamda geliştiricinin iş akışı ve karar verme biçimindeki değişimi ana tema olarak ele alıyor
- Blog yazısı değil, güncellenebilir bir rehber formatında içerik olarak yürütülüyor ve zamanla genişletilmesi planlanıyor
1. İlkeler
-
- Yapay zeka kodlama ajanlarının ortaya çıkışıyla ilk kod yazma maliyeti neredeyse sıfıra yakın seviyeye indi
- Geçmişte kod yazmak pahalı olduğu için geliştirme tasarım ve planlama merkezliydi; artık fikri doğrudan kodla deneme yaklaşımı mümkün
- Kod üretim maliyeti düşse de iyi kodun (test, bakım yapılabilirlik vb.) hâlâ bir maliyeti var
-
- Geliştiricinin önemli varlıklarından biri, “nelerin mümkün olduğunu bilme bilgisinin birikimi”
- Farklı problem çözme örneklerini ve küçük kod deneylerini saklanıp yeniden kullanılabilecek şekilde biriktirme alışkanlığını vurguluyor
- Bu şekilde biriken kod ve örnekler, kodlama ajanına yeni özellikler geliştirmesini söylerken güçlü bir girdi materyali olarak kullanılabiliyor
-
- Ajanın ürettiği kod olsa bile inceleme yapmadan paylaşmak veya PR göndermek kaçınılması gereken bir anti-pattern
- Ajanın yazdığı PR açıklamalarının da insan tarafından doğrudan doğrulanıp düzeltilmesi gerekiyor
- Kod inceleyicisinin zamanını boşa harcamamak için testler, doğrulama süreci ve uygulama tercihinin gerekçeleri birlikte sunulmalı
2. Testing and QA
-
- Test güdümlü geliştirme (TDD), kodlama ajanlarıyla birlikte kullanıldığında özellikle etkili bir geliştirme kalıbı
- Testler önce yazıldığında ajan, testleri karşılayacak yönde kod üretebilir
- En az düzeyde prompt ile bile doğru ve güvenilir kod üretimine yardımcı olur
-
- Kodlama ajanlarıyla çalışırken otomatik testler bir seçenek değil, zorunlu bir unsur
- Test yazma maliyetinin düştüğü ortamda ajan testleri hızlıca üretebilir ve düzeltebilir
- Kod gerçekten çalıştırılana kadar çalışıp çalışmadığı garanti edilemeyeceği için testler kritik önem taşır
3. Kodu anlama
-
- Ajanın oluşturduğu kodu veya projeyi baştan sona sırayla okuyarak yapıyı anlama kalıbı
- Basit bir projede bile kod akışını takip ederek yeni teknikleri ve yapıları öğrenmek mümkün
- Yapay zeka ile kod üretiminin öğrenme hızını düşürdüğü endişesine karşı, kod keşfinin kendisi bir öğrenme fırsatı olabilir
-
- Kod veya sistemi anlamak için ajanla konuşarak açıklama isteme yöntemi
- Soruları yineleyerek kodun çalışma prensibini ve yapısını kademeli olarak kavrama
- Kod anlama sürecini etkileşimli öğrenme yaklaşımına genişleten bir kalıp
4. Açıklamalı promptlar
-
- WebAssembly ve Gifsicle tabanlı bir GIF optimizasyon aracı oluşturmaya yönelik prompt örneği içeriyor
- HTML, JavaScript, CSS içeren tek sayfalık araç uygulama yaklaşımını sunuyor
- Gerçek prompt ve kod örnekleri üzerinden kodlama ajanlarının nasıl kullanılacağını açıklıyor
5. Ek
-
- Gerçekte kullanılan kodlama ajanı prompt örneklerinden oluşan bir derleme
- Farklı işlerde kullanılabilen pratik prompt kalıplarını düzenliyor
- Ajanla işbirliği yaparken kullanılabilecek uygulanabilir şablonlar sunuyor
1 yorum
Hacker News görüşleri
Yine aynı şeyi tekrarlamaya çalışıyor gibiyiz
"Önce testi yaz", "küçük ve birleştirilebilir modüller kur" gibi basit ve makul fikirleri karmaşık isimlerle paketleyip bunun üzerinden bir danışmanlık sektörü çıkaracak gibiyiz
Ama bu kez hedef "konuşan makineler". Sadece konuşarak komut verilebildiği bir dünyadayız
Simon'a şunu sormak isterim — "Kodun ucuzladığı bir dünyada" code review nasıl yapılmalı?
Ekiptekiler yapıyı anlamadan "çalışıyor ya, yeter" diye yaklaşıyor. Review'lar giderek büyüyor ve ben darboğaz haline geliyorum. Vekil olarak AI reviewer kullanma fikrini de düşündüm ama işin insani tarafının kaybolmasını istemiyorum
Ben AI'ı daha çok boilerplate kod ya da dokümantasyon sorunlarını çözmek için kullanıyorum
Ajan tarzı işleri de denedim ama çıkan sonuçlara hâlâ güvenmek zor. Buna rağmen bazı insanlar "artık neredeyse hiç kod yazmıyorum" diyor. Aradaki fark ilginç
Son dönemde ajan tabanlı coding loop deniyorum
Örneğin fesh projesinde hedefim "Linux binary'lerini daha küçük sıkıştırmak" oldu. Testi net olan bir problem olduğu için AI döngüsüne uygundu
Çıkardığım dersler şunlar:
rejections.mddaha değerliydi. "Bu yaklaşım neden terk edildi?" bilgisini bırakmak, AI'ın aynı hatayı tekrar etmesini engelliyorTest bölümünde LLM'in ürettiği "kendini doğrulayan testler" sorununa değinilmesini isterdim
Bazen testler gerçekte hiçbir şeyi doğrulamıyor, hatta hardcoded değerlerle geçiyor. AI'ı katı test alışkanlıklarına yönlendirmek insanın görevi
Her yeni LLM nesli geldiğinde önceki derslerin tamamı geçersizleşiyormuş gibi hissettiriyor
LangChain gibi, eski modellerin sınırlarını aşmak için kurulmuş karmaşık yapılar GPT-3.5 sonrasında gereksiz hale geldi. Yakında tek bir ajan bile her şeyi yapmaya yeterli olabilir
İlgili yazı
Ajan mühendisliği tartışmalarında sık sık eksik kalan bir nokta var
Derslerin çoğu evrensel doğrularmış gibi anlatılıyor, ama gerçekte bunlar ekip boyutuna, codebase olgunluğuna, test düzeyine ve risk toleransına göre değişiyor. Asıl önemli olan, "bu pattern hangi durumda işe yarar" sorusunu netleştirmek
Son zamanlarda her gün onlarca ajan ekip framework'ü ortaya çıkıyor
Tıpkı yazılım mühendisliğinin ilk dönemleri gibi kaotik bir deney aşamasındayız. Ama sonuçta birkaç pattern standart hale gelecek.
Bizim ekipte insan takımı gibi yaklaşmak işe yaradı — önce ürün spesifikasyonu (spec) yazıyoruz, sonra bunu AI ile parlatıp, ardından rolleri ayrılmış ajan akışına veriyoruz
Bugün lisans dersinde CPU ve GPU mimarisinin evrimini anlattım
Eskiden Moore's Law sayesinde donanım her şeyi çözerdi, şimdi ise mesele paralellik.
Simon'ın söylediği "kod ucuzdur" fikri de buna benzer bir paradigma değişimi.
Paralel donanım çağında verimli kodun anlamı nasıl tamamen değiştiyse, AI çağında da geliştirme sürecinin kendisi değişecek. Bunu önce anlayanlar 10–100 kat avantaj elde edecek
Bizim ekipte "arada insan doğrulaması eklenen döngü" en pratik yaklaşım oldu
Tam otonom ajanlar testleri geçse bile sık sık örtük değişmezleri bozuyor.
Bu yüzden geri döndürülemez kararlar alınmadan hemen önce insan devreye giriyor.
Ama AI'ın "neyin geri döndürülemez olduğunu" anlamasını sağlamak da başlı başına başka bir sorun.
CLAUDE.mdgibi belgelerin ötesinde, örtük codebase kurallarını aktarmanın sistematik bir yolunu arıyoruz