Mediatr
MediatR, uygulama bileşenleri arasında gevşek bağlantıyı teşvik ederken basit ve esnek istek/yanıt işleme, komut işleme ve etkinlik bildirimleri sağlamak için Mediator desenini uygulayan popüler bir açık kaynak .NET kütüphanesidir.
https://mediatr.app/?utm_source=aipure
Ürün Bilgisi
Güncellendi:09/11/2024
Mediatr nedir
MediatR, .NET uygulamalarında Mediator tasarım desenini uygulamak için Jimmy Bogard tarafından geliştirilen hafif ama güçlü bir kütüphanedir. Uygulama bileşenlerini, istekleri, komutları, sorguları ve bildirimleri sistemin farklı parçaları arasında yönlendirerek doğrudan bağımlılıkları ortadan kaldırmaya yardımcı olan bir ara katman olarak işlev görür. Kütüphane, Komut Sorgu Sorumluluğu Ayrımı (CQRS) desenini uygulamak ve süreç içi mesajlaşmayı temiz ve sürdürülebilir bir şekilde yönetmek için özellikle yararlıdır.
Mediatr'in Temel Özellikleri
MediatR, bağımlılık olmadan işlem içi mesajlaşmayı basit bir şekilde yönetmek için Mediatör desenini uygulayan hafif bir .NET kütüphanesidir. İstek/yanıt desenlerini, komutları, sorguları, bildirimleri ve olayları hem senkron hem de asenkron olarak destekler. Kütüphane, bileşenler arasında gevşek bir bağlantı sağlar ve .NET uygulamalarında CQRS (Komut Sorgu Sorumluluk Ayrımı) mimarisinin uygulanmasına yardımcı olur.
Pipeline Davranışları: Geliştiricilerin mevcut kodu değiştirmeden işlevsellik eklemesine olanak tanıyan, günlüğe kaydetme, doğrulama ve önbellekleme gibi kesişen endişeler için middleware benzeri davranışları destekler.
Otomatik İşleyici Keşfi: Uygulamada işleyicileri otomatik olarak tanımlar ve kaydeder, böylece açık yapılandırma ihtiyacını azaltır ve kurulumu basitleştirir.
Birden Fazla Mesaj Türü: İstek/yanıt, komutlar, sorgular, bildirimler ve olaylar dahil olmak üzere çeşitli mesaj türlerini, C# genel varyansı aracılığıyla akıllı yönlendirme ile destekler.
Çapraz Platform Uyumluluğu: .NET Framework 4.6.1 ve netstandard2.0 dahil olmak üzere farklı .NET platformlarında çalışır, bu da çeşitli proje türleri için çok yönlü hale getirir.
Mediatr'in Kullanım Alanları
Web API Geliştirme: İş mantığını denetleyicilerden ayırarak ve CQRS desenini uygulayarak temiz, sürdürülebilir ASP.NET Core API'leri oluşturmak için idealdir.
Kurumsal Uygulamalar: Gevşek bağlantılı özellik odaklı modüllere kodu organize ederek büyük ölçekli kurumsal uygulamalardaki karmaşıklığı yönetmeye yardımcı olur.
Olay Tabanlı Sistemler: Uygulama içinde bildirimleri ve olayları yöneterek olay tabanlı mimarilerin inşasını kolaylaştırır.
Artıları
Temiz mimariyi ve endişelerin ayrımını teşvik eder
Uygulama bileşenleri arasındaki bağımlılığı azaltır
Minimum kurulum ile uygulaması ve entegre etmesi basittir
Eksileri
Yüksek verimlilik senaryolarında performans yükü getirebilir
Küçük uygulamalar için gereksiz karmaşıklık ekleyebilir
Sadece işlem içi iletişimle sınırlıdır
Mediatr Nasıl Kullanılır
Gerekli NuGet Paketlerini Yükleyin: .NET projenize MediatR ve MediatR.Extensions.Microsoft.DependencyInjection NuGet paketlerini ekleyin
Startup'ta MediatR'ı Yapılandırın: Handlers'ı otomatik olarak kaydetmek için ConfigureServices yönteminde services.AddMediatR() kullanarak hizmet koleksiyonuna MediatR ekleyin
İstek Sınıfı Oluşturun: İade değeri olmayan komutlar için IRequest veya veri döndüren sorgular için IRequest<T> uygulayan bir sınıf oluşturun
İşleyici Sınıfı Oluşturun: IRequestHandler<TRequest> veya IRequestHandler<TRequest,TResponse> uygulayan ve Handle yöntemini gerçekleştiren bir işleyici sınıfı oluşturun
IMediator'ı Enjekte Edin: İstek göndermeniz gereken denetleyicilere veya hizmetlere IMediator arayüzünü enjekte edin
İstekleri Gönderin: İstek/yanıt için Send() veya bildirimler için Publish() kullanarak enjekte edilen IMediator'ı kullanarak istek gönderin
İsteğe Bağlı: Davranışlar Ekleyin: IPipelineBehavior<TRequest,TResponse> kullanarak günlüğe kaydetme, doğrulama ve yetkilendirme gibi kesişen endişeler için boru hattı davranışlarını uygulayın
Mediatr SSS
MediatR, uygulama mantığını sunum katmanından ayırmaya yardımcı olan, arabulucu desenini uygulayan bir .NET kütüphanesidir. Bileşenler arasındaki işlem içi iletişimi yönetmek için genellikle ASP.NET Core uygulamalarında kullanılır.
Popüler Makaleler
Black Forest Labs FLUX.1 Tools'u Tanıttı: En İyi Yapay Zeka Görsel Oluşturma Araç Seti
Nov 25, 2024
Microsoft Ignite 2024: Azure AI Foundry'nin Tanıtımı ile Yapay Zeka Devriminin Kilidi Açılıyor
Nov 21, 2024
2024'te İnanamayacağınız İşletmeniz İçin 10 Harika Yapay Zeka Aracı
Nov 21, 2024
OpenAI Web'de ChatGPT Advanced Voice Mode'u Kullanıma Sundu
Nov 20, 2024