C# Feature Toggle Kullanımı

Feature Toogle,Feature Flags, Feature Bits, or Feature Flippers adlarıyla da bilinen,sistem davranışlarını değiştirmeden kodumuzu geliştirmeye yarayan bir tekniktir.Var olan kod repomuzda ekipteki diğer kişiler çalışmaya devam ederken,sizin yaptığınız geliştirmenin,refactoring belki,aylar alacaktır.Bu süreçte kod bloğunu master veya ana repomuz hangisiyse ondan güncel tutmaya çalıştıkça,baş edilemeyen merge issue ları çıkacaktır.Bu gibi durumları aşabilmek için Martin Fowler ın […]

Command Design Pattern

Command Design Pattern,Behavioral(Davranışsal) tasarım kalıplarından birisidir. Genellikle,algoritmayı ,nesneler arasındaki ilişki ve sorumlulukları yönetmek için kullanılır. GOF kitabında tanım olarak aşağıdaki ifade verilmiştir. Encapsulate a request as an object, thereby letting you parameterize clients with different requests, queue or log requests, and support undoable operations.

C# BenchmarkDotNet Kullanımı

Aslında bu yazıyı Entity Framework,Dapper ve Ado.Net karşılaştırmasını yazmak için düşünüyordum ama benchmarkdotnet kullanımına evrildi. Projemizi oluşturduktan sonra Nuget den Install-Package BenchmarkDotNet ile yüklüyoruz.Aşağıdaki kod örneğindeki gibi performans karşılaştırması yapacağımız methodları yazıyoruz.Methodlara Benchmark attribute ini ekliyoruz. Bu iki methodun karşılaştırmasını yapmak için BenchmarhRunner sınıfının Run methodunu kullanıyoruz. Debug modda çalıştırdığınızda sadece konsola yazdırmasına rağmen,release modda derlediğiniz exe […]

Linked List Nedir

Linked list (bağlantılı liste) nedir ve neden kullanılma ihtiyacı doğmuştur.Bunu açıklamaya çalışacağım. Linked list,doğrusal olarak verilerin tutulduğu koleksiyon(collection) yapısı diyebiliriz.Her node kendinden sonraki node un bağlantısını tutar.C dilinde pointer yardımıyla C# gibi object-oriented dillerde bunu nesnenin referansı sayesinde birbirleriyle ilişkilendirebiliriz.

C# Object To Json

Merhaba, C# nesnesini Json a çevirmek isterseniz,aşağıdaki örnek işinize yarayacaktır. JavaScriptSeriliazer class ı System.Web.Script in altında ve .Net 3.5 sürümü ile birlikte gelmiş. Not:System.Web.Script kütüphanesini kullanabilmek için,System.Web.Extension ı referanslarınıza eklemeniz gerekmektedir.