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. Dependency Inversion prensibi, Robert C. Martin aracılığıyla hayatımıza girmiş ve gevşek bağ (loosely...

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 Interface Segregation prensibi temel olarak şişman interface’leri hedef almaktadır. No code should be forced to depend...

liskov-substitution-principle 0

Liskov Substitution (LSP) Prensibi

Solid prensiplerinin üçüncü maddesi Liskov Substitution prensibi ile yine birlikteyiz, bir önceki madde Open Closed Prensibinde de bu konuya biraz değindik. Derived classes must be substitutable for their base classes. Robert C. Martin Liskov’un...

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 Open Closed prensibi ele alınacaktır. Bir önceki makalede Single Reponsibility Prensibini incelemiştik. Software entities (classes, modules, functions,...

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 prensibi Türkçesiyle kendini tekrarlama anlamına gelmektedir. Anlamı itibariyle kod tekrarının önüne geçmeyi hedeflemektedir. DRY prensibi mevcut kodların işlevsel...