Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
5 yazı bulundu #context
Go'da Concurrency Pattern'leri: context, sync, errgroup, Worker Pool ve Goroutine Leak
Backend SERİ 08

Go'da Concurrency Pattern'leri: context, sync, errgroup, Worker Pool ve Goroutine Leak

Go'da eşzamanlı erişilen veri ya bir mutex ile korunur ya da bir channel ile sahibine bırakılır; korunmayan map process'i çökertir, korunmayan sayaç ise sessizce aynı sipariş ID'sini üretir. Bookstore'da concurrent map writes ve race detector, Service ile memstore'un mutex ile düzeltilmesi, context ile iptal ve deadline, WaitGroup.Go, errgroup ile 10.000 faturalık worker pool, Go 1.27'nin goroutineleak profili ve synctest ile 15 dakikalık testi anında çalıştırmak.

15 Kas 2026 14 dk 6
React'te Global State: Context'in Sınırları, Zustand ve Ne Zaman Redux Toolkit?
Frontend SERİ 11

React'te Global State: Context'in Sınırları, Zustand ve Ne Zaman Redux Toolkit?

Çoğu "global state" aslında server, URL ya da form state'idir; gerçekten global olan küçük client state için Zustand'ın selector'lı store'u Context'in her okuyanı render etme sorununu çözer, Redux Toolkit ise action log ve büyük ekip kuralları gerektiğinde gelir. Bookstore'da son bakılan kitapları ve sepet id'sini persist edilen bir store'a taşıyıp selector'sız okumanın 1 yerine 13 render ürettiğini ve yeni object döndüren selector'ın Zustand 5'te sonsuz döngüye girdiğini gösteriyoruz.

15 Kas 2026 12 dk 4
useRef, Context ve Custom Hook'lar: DOM Erişimi, DI Yerine Context ve Hook Kuralları
Frontend SERİ 07

useRef, Context ve Custom Hook'lar: DOM Erişimi, DI Yerine Context ve Hook Kuralları

useRef render tetiklemeyen bir kutudur (DOM node'u ya da timer id'si), Context ise bir değeri ağacın derinlerine props'suz taşır ve değişince onu okuyan her component'i render eder. Bookstore'da sepet, tema ve kullanıcıyı Context'e taşıyıp tema değişiminin 2 yerine 28 component render ettirdiği sürümü ölçüyor, inline ref callback'inin odak kaçırdığını, koşullu hook'un uygulamayı çökerttiğini ve aramayı custom hook'lara ayırmayı gösteriyoruz.

15 Kas 2026 19 dk 4
Copilot Chat ve Context: Ask, Edit, Agent ve Plan Akışları, #-referansları, Workspace Index'i ve Context'i Yönetmek
Yapay Zeka SERİ 03

Copilot Chat ve Context: Ask, Edit, Agent ve Plan Akışları, #-referansları, Workspace Index'i ve Context'i Yönetmek

Copilot Chat'e bütün repoyu değil, cevabın olduğu dosyaları #-referanslarıyla verip yanlışlanabilir bir soru sormak gerekir: Bookstore'da context'in yarısı tek bir package-lock.json çıktı, iptal sorusunun cevabı ise beş bin token'lık dilimdeydi ve cevap 'iptal akışı yok'. Ask, Plan ve Agent; workspace index, search.exclude ve compaction.

15 Kas 2026 10 dk 5
Agent'a Doğru Context Vermek: AGENTS.md, copilot-instructions.md, CLAUDE.md ve Path-specific Talimatlar
Yapay Zeka SERİ 02

Agent'a Doğru Context Vermek: AGENTS.md, copilot-instructions.md, CLAUDE.md ve Path-specific Talimatlar

Coding agent'a repo'yu anlatmanın araçtan bağımsız yolu kökte kısa bir AGENTS.md yazmaktır: build ve test komutları, klasör yapısı, ekip kuralları ve önce sorulacak konular. Hangi aracın hangi dosyayı okuduğunu, nested ve path-specific talimatları, Bookstore için gerçek bir AGENTS.md'yi, aynı görevin üç farklı context'le verdiği sonuçları ve talimat dosyasının bayatlamasını yakalayan bir kontrolü ele alıyoruz.

14 Kas 2026 13 dk 8
Blog Haritası