Category: C#

C# ile ilgili yazıları içerir.

Ocelot .Net API gateway 0

Ocelot API Gateway: Routing & Aggregation & Authentication

API Gateway, client ile mikro servisler arasında yer alarak bir reverse proxy olarak çalışır. Client tarafından aldığı istekleri bir takım kurallar doğrultusunda ilgili servislere dağıtır. Bu sayede çeşitli güvenlik zaafiyetlerinin önüne geçerken aynı zamanda...

MassTransit RabbitMQ Messaging 0

MassTransit ile RabbitMQ Messaging

Enterprise seviyede, çeşitli platformlarda dağıtık şekilde çalışan servisler birbiriyle iletişim halindedirler. Genellikle bu iletişim gevşek ve asenkron olarak bir message broker aracılığıyla sağlanır. Bu sayede iş parçacıklarından koparılan bağlılıklar sonucu istenilen flexibility ve scalability...

rabbitmq 0

RabbitMQ Routings, Message Patterns

RabbitMQ, dağıtık sistemler için çeşitli asenkron yapılar kullanır. Bu yazımızda hem routing ile ilgili detaylı konulara (Exchange to Exchange Binding, Alternate Exchange) hem de bu message pattern’lere (Work Queues, Round-Robin, Publish-Subscribe, Push-Pull, Request-Reply) göz...

rabbitmq 0

RabbitMQ Nedir? Queues ve Exhange Types

RabbitMQ, en basit tabiriyle iletişim halindeki sistemler arasındaki asenkron mesaj kuyruk sistemidir, bir mesaj oluşturulur ve oluşturulan mesaj kabul edilerek, ilgili yere (kuyruğa) tüketilmek üzere iletilir. Çoğu yerde postane örneği verilmektedir; gönderilmek istenen mektup...

grpc-nedir 0

gRPC Nedir? Protocol Buffer, Stream ve Dahası

gRPC açık kaynaklı ve uzak prosedür çağrılarıyla istemci ile sunucu arasında iletişim kurulmasını sağlayan bir framework olmakla birlikte sağladığı multi-language, HTTP/2, REST’e göre x8 kat daha hızlı olması, Binary serileştirmesi gibi özellikleriyle öne çıkmaktadır.

dependency-inversion-principle 0

Dependency Inversion (DIP) Prensibi

Solid prensiplerinin sonuncusu bağımlılıkların tersine çevrilmesinide ele alarak ilk serinin sonuna geliyoruz. Bir önceki prensip Interface Segregation Prensibi incelemediyseniz bağlantıdan ulaşabilirsiniz. DIP, Robert C. Martin aracılığıyla hayatımıza girmiş ve gevşek bağ (loosely coupled) terimini...

interface-segregation-principle 0

Interface Segregation (ISP) Prensibi

Bir önceki makale Liskov Substitution Prensibinde de yine bu prensibe aslında ışık tutmuş olduk. Solid prensiplerinin dördüncü maddesi Arayüz ayrımı ilkesi temel olarak şişman interface’leri hedef almaktadır. Bir arayüz (interface) düşünün ki; loglama, performans,...

liskov-substitution-principle 0

Liskov Substitution (LSP) Prensibi

Derived classes must be substitutable for their base classes. Robert C. Martin Solid prensiplerinin üçüncü maddesinde yine birlikteyiz, bir önceki madde Open Closed Prensibinde de bu konuya biraz değindik. Liskov’un yerine geçme prensibi aslında...

open-closed-principle 0

Open Closed (OCP) Prensibi

Bu makalede SOLID prensiplerinin ikinci ayağı olan ve Robert C. Martin’in en önemli prensip olarak kabul ettiği Açık Kapalı Prensibini ele alacağız. Bir önceki makalede Single Reponsibility Prensibini incelemiştik. Bir yazılım projesinin geliştirilme ve...

dont-repeat-yourself 0

DRY Prensibi

Anlaşılması ve uygulanması en kolay prensiplerdendir. İlk kez The Pragmatic Programmer kitabıyla birlikte hayatımıza girmiştir. DRY (Don’t Repeat Yourself), kendini tekrarlama anlamına gelmekte ve buradan hareketle kod duplikasyonunun önüne geçmeyi hedeflemektedir. Bu prensibi ihlal...