Problemi görürüm
Gerçek darboğazı, kullanıcı ihtiyacını ve teknik riski ayırırım.
01. Ürün, veri ve yapay zekâ
Yaklaşık 20 yıldır .NET, veri ve mimari problemlerini üretilebilir sistemlere dönüştürüyorum. Burada denediklerimi yazıyor, karmaşık kararları açıkça anlatıyorum.
Nasıl çalışırım
Gerçek darboğazı, kullanıcı ihtiyacını ve teknik riski ayırırım.
Mimariyi, veri akışını ve sınırları birlikte tasarlarım.
Bakımı kolay, ölçülebilir ve güvenli uygulamalar geliştiririm.
Performansı, geri bildirimi ve yeni araçları sisteme geri bağlarım.
Notlar ve deneyler
C#’ta using var kullanırken asıl dikkat etmemiz gereken konulardan biri, nesnenin ne zaman dispose edileceği. Bir kodu if bloğuna taşımak küçük bir düzenleme gibi görünse de nesnenin yaşam süresini beklenmedik şekilde değiştirebiliyor. Bu yazıda OpenTelemetry ile çalışırken karşıma çıkan bir örnekten yola çıkarak TracerProvider yapısını, IDisposable kullanımını ve scope yönetimini anlattım. Ayrıca benzer hataların önüne geçmek için tercih ettiğim kod düzenini örneklerle gösterdim.
AI kod asistanlarıyla çalışırken yanlış API kullanımı, eski dokümantasyon ve eksik proje bağlamı gibi sorunlarla karşılaşabiliyoruz. MCP (Model Context Protocol), bu asistanların GitHub, NuGet, Microsoft Learn ve test araçları gibi harici kaynaklarla iletişim kurmasını sağlıyor. Bu yazıda .NET geliştiricilerinin günlük işlerinde kullanabileceği MCP sunucularını, hangi durumlarda tercih edilebileceklerini ve güvenlik açısından dikkat edilmesi gereken noktaları inceledim. Amacım her aracı kurmak değil, gerçekten işimize yarayanları seçebilmek.
Singleton, Scoped ve Transient, .NET Dependency Injection sisteminin en temel konularından biri olsa da gerçek projelerde aralarındaki farkı doğru uygulamak her zaman kolay değil. Bir servisin ne zaman oluşturulduğunu, ne kadar süre yaşadığını ve hangi nesnelerle aynı örneği paylaştığını anlamak, doğru yaşam döngüsünü seçmenin temelini oluşturuyor. Bu yazıda üç yaklaşımı çalışan kod örnekleri, nesne kimlikleri ve gerçek proje senaryolarıyla karşılaştırdım. Ayrıca DbContext, BackgroundService, IDisposable ve thread safety üzerinden yanlış servis kaydının nasıl sorunlara yol açabileceğini inceledim.

Şu anda araştırıyorum
Yeni araçları yalnızca takip etmiyor; mimari, veri kalitesi ve ekip pratiğiyle birlikte sınamaya çalışıyorum.
Yeni bir ürün, zorlayan bir entegrasyon veya daha hızlı çalışan bir veri katmanı için konuşabiliriz.
İletişime geç