28 Tem

Prime Factors Kata C# – Kod Kata

Prime Factors Türkçe olarak Asal Çarpanlar şeklinde tercüme edilebilir. Prime Factors Kata’sını geliştirirken bir sayının asal çarpanlarının bulunması hedeflenmektedir. Bir sayının asal çarpanları bulunup liste şeklinde kullanıcıya verilmektedir. Aşağıdaki listede örnek olarak verilen sayıların çarpanları listelenmiştir. Prime Factors (Asal Çarpanlar)...
Read more »
30 Haz

ASP.NET MVC Projesinde Dependency Injection Uygulanması

Daha önce hazırladığım Dependency Injection Tasarım Deseni başlıklı yazıda, yazılım tasarımında sınıfların birbirine olan bağımlılıklarını esnetmeyi ve bağımlılıkların sınıf dışından enjekte edilmesini incelemiştik. Bu yazımızda ise konunun bir örnek uygulaması niteliğinde olan ASP.NET MVC uygulamalarında Dependency Injection uygulamasını inceleyeceğiz. Bu...
Read more »
27 May

Operatörlerin Aşırı Yüklenmesi (Operator Overloading C#)

Bu yazımızın konusu geliştiriciler tarafından oluşturulan sınıflar veya yapılar(struct) üzerinde operatörlerin aşırı yüklenmesidir. Operatörlerin aşırı yüklenmesi, bir operatörün bir nesne için bizim istediğimiz şekliyle çalışabilecek hale getirilmesidir diyebiliriz. Örneğin bir (+) operatörü varsayılan olarak iki sayının toplamı bulmak için veya...
Read more »
11 Mar

LINQ sorgularında Karşılaşılan NotSuportedException

LINQ sorguları kolleksiyon temelli yapılarda sorgulamalar ve seçimler yapmak için bize imkan sağlar. Döngülerle diziler içerisinde boğuşmadan istediğimiz formatta sonuç almamıza yardımcı olurlar. Bazen ihtiyaçlarımız doğrultusunda bir tipte oluşturulmuş kolleksiyon içerisinden başka bir tipte seçimler yapmak durumunda kalabiliriz. Bu noktada...
Read more »
23 Şub

C# if İfadesi Yerine Dictionary Kullanmak

Proje geliştirirken karşılaştığımız sorunlardan biri de “if” kullanımı sırasındaki kod fazlalığından dolayı kodun okunabilirliğinin azalmasıdır. Buna örnek olarak aşağıdaki gibi bir örnek verebiliriz. Bu örnekte matematiksel bir işleme karar vermek için belirlenmiş bir dizi “if” sınaması gerçekleştirilmektedir. Bunun yerine daha...
Read more »
29 Oca

Bir “if” sınamasına farklı bakış

Kodalama yaparken karşılaştığım uzunca bir “if” sınaması için farklı bir yaklaşımı sunmak istedim. Yukarıdaki ifadenin alternatifi olarak aşağıdaki gibi bir çözüm üretebiliriz. Okunabilirliği arttıran bir yöntem gibi görünüyor. Kod satırları azaldığından göze daha hoş gelen bir yazım biçimi...
Read more »
22 Oca

async/await ile Asenkron Programlama

Asenkron işlmeler Asenkron çalışma prensibi, yürütülen süreçlerin uzun sürmesinden dolayı, yürütülmesi gereken diğer süreçlerin beklemeden çalışmasına devam edebilmesi için geliştirilmiştir. Bazen wab ortamındaki bir kaynağa erişip istekte bulunmak ve cevap almak uzun sürebilmektedir. Senkron çalışma prensibinde örneğin bir web kaynağından...
Read more »
24 Ara

Task Parallel Library TLP C#

İşlemci dünyasının gelişimi ve değişimi, işlemcilerin çekirdek sayısı transistör sayısını ne zaman yakalar diye düşündürüyor insana. Bilgisayarlarımızın işlemcileri geliştirkçe programlarımızın daha da hızlandığı aşikardır. Ancak programların hızlanması sadece bilgisayarların fiziksel özellikleriyle alakalı bir durum değildir. Diğer taraftan yazılımların da işlemcileri...
Read more »
22 Ara

C# Action ve Action ön tanımlı delege türü

Delegeler ile ilgili yazımızda delegeleri tanımlamayı ve kullanmayı incelemiştik. Delegelerin metodları temsil ettiğini ve hangi tür metodların temsil edileceğini ise delegeler oluşturulurken belirlendiğini görmüştük. Ardından Func<T> ile ilgili yazımızda önceden tanımlanmış delege türü olan Func<T> delege türlerini incelemiştik. Func<T> ile...
Read more »