Aylık Arşiv: Nisan 2016

Liskov'un Yerine Geçme Prensibi(Liskov Substitution Principle - LSP) 1

Liskov’un Yerine Geçme Prensibi(Liskov Substitution Principle – LSP)

Merhaba, Önceki yazılarımda SOLID prensiplerinden S–Tek Sorumluluk Prensibi(Single Responsibility Principle – SRP)‘ni ve O–Açık Kapalı Prensibi(Open Closed Principle – OCP) incelemiştik. Bu yazımızda ise sıradaki L timsaline denk gelen Liskov’un Yerine Geçme Prensibi(Liskov Substitution Principle –...

Açık Kapalı Prensibi(Open Closed Principle - OCP) 1

Açık Kapalı Prensibi(Open Closed Principle – OCP)

Merhaba, Bir önceki yazımızda SOLID prensiplerinden S olan Tek Sorumluluk Prensibi(Single Responsibility Principle – SRP)‘ni incelemiştik. Bu yazımızda ise sıradaki O timsaline denk gelen Açık Kapalı Prensibi – Open Closed Principle (OCP)’yi izah edeceğim. Her yazılım geliştirici bilir...

Roslyn Syntax Tree API'sine Göz Atalım 1

Roslyn Syntax Tree API’sine Göz Atalım

Merhaba, Bu makalemizde .NET Framework Compiler’ının derinlerine ulaşmamızı sağlayan Roslyn yapısındaki Syntax Tree API’sine değineceğiz. .NET çatısı altında hangi dilde olursa olsun yazdığımız kodlar öncelikle derleyici tarafından ayrıştırılır(parse) ardından bu işlem neticesinde Syntax Tree(Sözdizimi...

0

C# 6.0 String Interpolation

C# 6.0 versiyonuyla gelen lakin çoktan geç kalınmış bir özellik olan String Interpolation’dan bahsedeceğim. String ifadelerde değişken değerlerini ifadeye entegre edebilmek için string.Format komutunu aşağıdaki gibi kullanıyorduk. Bu kullanımda değişken sayısını onlarca fazlalaştırırsak eğer...

0

C#’ta Öznitelik(Attribute) Oluşturma

Merhaba, Teee ne zamanlar MVC Attribute Oluşturma başlıklı yazımda Asp.NET MVC mimarisine özel Attribute oluşturma konusunu ele almıştım. Şimdi ise C# ile özel öznitelik(Attribute) oluşturmayı inceleyeceğiz. Attribute yapıları aslında arka planda bir class tanımlamalarıdır....

Ninject 0

Dependency Injection(DI) – Ninject

Merhaba, Önceki yazılarımdan Dependency Injection(DI) Nedir? Nasıl Uygulanır? başlıklı yazımda Dependency Injection desenine detaylıca değinmiştik. Bu yazımızda ise bu desene uygun tasarlanmış Inversion of Control(IoC) Framework’ü olan Ninject üzerine konuşacağız. Biliyoruz ki, uygulama içerisinde...

C# Facade Design Pattern(Facade Tasarım Deseni) 0

C# Facade Design Pattern(Facade Tasarım Deseni)

Merhaba, Bu makalemizde Structural Patterns(Yapısal Desenler) kategorisine giren Facade Design Pattern hakkında teferruatlı bir içerik oluşturacağız. ‘Facade’, kelime anlamı olarak ‘cephe’ diye nitelendirebileceğimiz aslen Fransızca kökenli bir kelimedir. Tasarım açısından, önemli olan cepheyi işaret...

0

C#’ta INotifyPropertyChanged Interface’inin Kullanımı

Merhaba, Oluşturduğunuz herhangi bir sınıfta; propertylerin değer değişikliklerinde veya metodların algoritmalarında olay yaratmamızı sağlayacak olan INotifyPropertyChanged Interface’ini tanıtacağım. Yazımızı kısa tutmak için hemen mevzuya giriş yapıyorum. INotifyPropertyChanged Interface’ini kullanabilmeniz için öncelikle System.ComponentModel kütüphanesini kod...

0

C# 6.0 nameof Expressions

Merhaba, Kod yazarken class tiplerini yahut metod, property veya field isimlerini string olarak ifade etmemiz gereken noktalar olabilir. İşte böyle durumlar için geliştirilmiş olan C# 6.0 ile gelen nameof keywordüne değineceğiz. Örnek olarak ArgumentNullException...

1

Asp.NET Cookie Kullanımı

Merhaba, Bu yazımızda web projelerinde yıllarca kullanılan Cookie yapısına değineceğim. Bunca zamandır bu yapı üzerine içerik oluşturmamamın sebebi sanırım fazla önemli olmaması ve kullanım açısından zorluk arz etmemesinden kaynaklanmaktadır. Halbuki şimdi bu konuyla ilgili...

0

C# 6.0 Null Conditional Operators (?.)

C# 6.0’da gelen ve null kontrol algoritmasını çok kısa bir şekilde yazmamıza olanak sağlayan, tek başına çok anlamlı durmamasına rağmen, iç içe geçmiş nesneleri yahut propertyleri çağırırken sürekli null kontrolü yapmaktan kurtaran şahane yeniliklerden...

0

C# 6.0 Dictionary Initializers

C# 3.0 versiyonu ile Dictionary gibi key – value yapısında çalışan koleksiyonlar için aşağıdaki gibi kullanıma gelen yapı C# 6.0 versiyonunda indexer tarzında işlenebilmektedir. Eski sürüm. Yeni sürüm. Gördüğünüz gibi, key – value pair...

1

C#’ta is ve as Operatörleri

Merhaba, Programlama dilinde bir çok yapı, kendisi haricinde diğer yapılarla organize halde çalışabilmesine yahut algoritmik olarak eşlik edebilmesine dikkat edilerek dizayn edilmektedir. Bu yazımızda kendi başlarına bir işlem icra ederken, birlikte bir bütünü ifade...

0

C# Memento Design Pattern(Memento Tasarım Deseni)

Merhaba, Behavioral Patterns(Davranışsal Kalıplar) kategorisinde bulunan Memento Design Pattern üzerine içerik oluşturacağız. Memento adı üzerinde “hatıra”, “yadigar” vs.. demektir 🙂 Yani anlayacağınız hatırlayıcı işlevde bir tasarım deseni üzerine konuşuyor olacağız. Memento Design Pattern, elimizdeki...

6

C#’ta IComparable Interface’i İle Nesneleri Sıralama

Merhaba, Bu içeriğimizde, kendisini uygulayan sınıfta kendi tipindeki nesnelere karşı nasıl bir karşılaştırma yapılacağını belirlemek için kullanılan IComparable Interface’ine değineceğiz. IComparable Interface’i, miras alan sınıfa CompareTo metodunu uygulatmakta ve bu metot aracılığıyla karşılaştırmayı sağlamaktadır....

2

LINQ to Entities – LastOrDefault Metodunda NotSupportedException Hatası

Merhaba, LINQ to Entities sorgularından LastOrDefault metodu ile elinizdeki veri kümesinin son elemanını elde etmek istiyor lakin aşağıdaki hatayı alıyorsanız çözümü bu içeriğimizdedir. An unhandled exception of type ‘System.NotSupportedException’ occurred in EntityFramework.SqlServer.dll Additional information: LINQ...

Copy Protected by Chetan's WP-Copyprotect.