Producer–Consumer, concurrency (eşzamanlı) programlama mimarilerin en temel desenlerinden biridir. Bu pattern bize üreten (producer) ve bunu tüketen (consumer) bir çalışma modeli sunar.
Bilindiği üzere .NET, uygulamanın kendi ihtiyaçlarını karşılayacak düzeyde oldukça sade bir DI container yer alır. Bu built-in container Microsoft.DependencyInjection NuGet paketinin içinde bulunur ve yalnızca temel özellikleri sunar.
Kodlar, otomasyonlar, sistemler derken yenilikleri kaçırmak kolay ama benimle bazı yeni konuları ele alabilirsin. Her hafta güncel yazılım ve sistem yapılarıyla ilişkili makaleleri e-posta ile ulaştırabiliriz.
Klasik "metin bazlı" arama yöntemleri artık tarih oldu. LLM ve GPT uygulamaları sayesinde artık anlamsal olarak da aratabiliyoruz. Bu modern bilgi erişim sistemlerinin temelini oluşturan iki ana arama paradigmasını karşılaştıralım.
Arama motorlarının temelinde yatan veri yapısı ve sıralama yöntemleri, "inverted index" ve TF-IDF tekniklerine dayanıyor. Bunları anlamak için örnekler yapacağız.
.NET Framework olan bir projede publish sırasında çok anlamsız hata alabilirsiniz. Bilin ki ucu başka yerlere bağlanıyordur ama bu günlerinize sebep oluyor.
.NET 10 çıktı ve beraberinde C#14 ile birlikte yeni özellikler geldi. Bunların arasından geliştirici deneyimini ve kod kalitesini doğrudan etkileyen daha ilginç yeniliklerden bazılarını aktaracağım.
Elasticsearch’e gönderilen her döküman, arama performansını en üst düzeye çıkarmak ve doğru sonuçlar üretebilen bir indeks yapısı oluşturmak için, indekslenmeden önce çeşitli işlemlerden geçirilir.
C#’ta await kullanmak sadece bir bekleme demek değildir. Derleyici metodu arka planda yeniden yazıyor ve dönüş tipi Task oluyor. Ne demek istediğimi daha iyi anlamak için örnekler üzerinden anlatacağım.