Kategori: C Sharp – C#


Derinlemesine yazılım eğitimleri için kanalımı takip edebilirsiniz...

Gençay Yıldız’ın C Sharp – C# ile ilgili yazıları.

0

Event-Driven Mimaride Yinelenen Mesajlar – Idempotent Sorunsalı ve Idempotent Consumer Pattern

Merhaba, Yazılım olgusu, tabiatı gereği birbiriyle etkileşim kurma mecburiyetinde olan farklı bileşenlerden meydana gelip, anatomik olarak bütünlük arz eden bir olgudur. Bu bütünlüğün içerisindeki bileşenler arasındaki etkileşimi modelleyebilmemizi sağlayan türlü yaklaşımlar mevcuttur ve bu...

2

C# 11 İle Gelen Generic Attribute Yapılanması

Merhaba, Bu içeriğimizde C# programlama dilinin 11. versiyonunda gelerek büyük bir eksikliği giderecek olan ve mimarisel çalışmalarda tür/type ile ilgili manevralarda kodumuza/yapımıza oldukça esneklik kazandıracak olan Generic Attribute özelliğini inceliyor olacağız. Esasında C# 11...

0

C# 11 – List and Slice Pattern

Merhaba, Gün geçmiyor ki, C# yeteneklerine yeni bir nitelik kazandırmasın 🙂 Bu içeriğimizde, C# 11 ile gelen özellikler arasında nacizane olarak oldukça kullanışlı gördüğüm List Pattern üzerine odaklanacak ve gelen bu yeniliğin tüm özelliklerini...

0

C# 10 – Record Structs

Merhaba, Bu içeriğimizde C# 9.0 ile hayatımıza giren record yapısının C# 10 ile gelen record structs isimli yeni özelliği üzerine incelemede bulunuyor olacağız. Her şeyden önce record yapısının ne olduğunu hatırlatan girizgâhla başlayalım. Record’lar;...

0

C# 10 – Global Using Directive

Merhaba, Son zamanlarda .NET 6 ve C# 10 ile gelen yeniliklerde, kodun sadeliğine ve teknik açıdan doğrudan doğruya işlevsel amacını gerçekleştirmeye odaklanıldığı dikkatinizi çekmiştir! Buna en güzel örnek, Asp.NET Core 6’da gelen sadeleştirilmiş konfigürasyon...

0

C# 10 – CallerArgumentExpression Attribute’u

Merhaba, Bu içeriğimizde, C#’ın gelişim yolunda geçmişteki tartışmaları nihayete erdiren ve C# 8.0’da duyurulup, ertelenen, C# 9.0’da beklenirken sonunda C# 10 ile gelen CallerArgumentExpression attribute’u üzerine incelemede bulunuyor olacağız. Caller? Attribute’u Tanıdık mı Geliyor?...

1

C# – ExpandoObject İle Dinamik Nesne Oluşturma

Merhaba, Hiç bir nesneyi runtime’da dinamik olarak tasarlama ihtiyacı hissettiniz mi? Ya da client’ın talebi üzerine üretilen data object içerisinde bulunacak olan alanların dışarıdan(client tarafından) belirlendiği senaryolara denk geldiniz mi? Bu yazıyı okuyorsanız muhtemeldir...

Event Sourcing Nedir Haydi Gelin Hep Beraber İnceleyelim 10

Event Sourcing Nedir? Haydi Gelin Hep Beraber İnceleyelim

Merhaba, Bu içeriğimizde, bir veri üzerinde meydana gelen tüm değişiklikleri kayıt altında tutmamızı öneren ve böylece ilgili verinin sadece güncel ham vaziyettinden ibaret tutulmasından ziyade o verinin süreçte yaşadığı değişikliklerinde esasında ilgili verinin bir...

2

C# 9.0 – Static Anonymous Functions

Merhaba, Nasıl ki, beşeri bir dilin keskinliği, o dilin belagat ve fesahata olan yatkınlığına, belagat ve fesahata olan yatkınlığı ise ilgili dilin tarihsel dokusuna yani bir başka deyişle temas ettiği insanlık tecrübesine bağlı, benzer...

3

C# 9.0 – Pattern Matching Enhancements

Merhaba, Pattern Matching’ler ilk olarak C# 6.0’da tanıtıldılar ve ardından C# 7.0’da(bknz : C# 7.0 – Pattern Matching) daha da geliştirildiler ve C# 8.0’da(bknz : C# 8.0 – Switch Expression(Property – Tuple – Positional...

0

C# 9.0 – Lambda Discard Parameters

Merhaba, C# 7.0 sürümünde hayatımıza girmiş olan Discard Kavramı, C# 9.0 versiyonunda alanını daha da genişleterek lambda ifadelerinde de kullanılabilir bir hal almıştır. Herşeyden önce Discard’ın ne olduğunu hatırlayarak başlayalım… Değişken tanımlamaya ihtiyaç duyulmadığı...

0

C# 9.0 – Target-Typed New Expressions

Merhaba, C# 9.0 sürümünde, nesne oluşum süreçlerinde semantik açıdan inanılmaz kolaylık sağlayan Target-Typed New Expressions özelliğini duyurmuştur. Bu özellik, new operatörü ile türü bilinen bir class’tan nesne yahut bir struct’tan değer üretilirken constructor çağrımı...

3

C# 9.0 – Top-Level Statements

Merhaba, Bir dilin gücünü gösteren birçok faktör vardır. Yer yer bu güç ayrımını ihtiyaçlar belirlerken, bazı dönemler popüler ihtiyaçları(veri madenciliği, yapay zeka vs.) karşılayabilen diller bu özellikleriyle kendilerini daha güçlü şekilde kulvarlara sunabilmektedirler. Sanırım...

5

C# 9.0 – Records İle Immutable Datalar

Merhaba, Hani bazen gelen yenilik, var olan küçük bir gediği kapatmak için yapılan bir onarımdan yahut iyi ya da kötü bir değişiklikten ibaret olabilmektedir. Lakin bazıları vardır ki, hangi olgu üzerinde olursa olsun bir...

.NET Core - Span ve Memory Türleri Nedir? 0

.NET Core – Span ve Memory Türleri Nedir?

Merhaba, Bu içeriğimizde, STACK yahut HEAP farketmeksizin bellekte ardışıl olarak tanımlanmış belirli bir bölgeye tip güvenliğiyle erişmemizi sağlayan Span<T> ve onun belirli kısıtlamalardan arındırılmış muadili olan Memory<T> struct türlerini inceliyor olacağız. Nedir bu Span<T>...

ArraySegment ve StringSegment Türleri ve Kullanımları 0

ArraySegment ve StringSegment Türleri ve Kullanımları

Merhaba, Bu içeriğimizde bir referans tarafından işaretlenmiş dizi(array) üzerindeki bir aralığa farklı bir referans ile sahip olmamızı sağlayan ArraySegment<T> ve onun string türlerine karşılık muadili olan StringSegment türlerini inceliyor olacağız. Nedir bu ArraySegment<T> ve...

2

Yazılımda Side Effect(Yan Etki) Kavramı Nedir?

Merhaba, Bu içeriğimizde yazılım kaynaklarının satır aralarında termonolojik olarak geçen ‘Side Effect’ kavramı üzerine duracak, ne olduğuna dair incelemede ve izahatte bulunacak ve bir durumu kavramsallaştırarak anlam bütününü ifade eden bu terim üzerine bir...

1

C# – Delegasyon İle Exception Yönetimi

Merhaba, Proje geliştirme süreçlerinde en önemli noktalardan birisi uygulamanın herhangi bir noktasında olan anlık hataları/aksaklıkları/istisnaları takip etmemizi sağlayan try – catch yapılanmasıdır. Bu yapılanma, bir vücudun genel sinir ağ yapılanmasını oluşturan ve sanki deri...

csharp8 0

C# 8.0 – Readonly Members

Merhaba, Geliştirilen yazılımlarda, bazen tasarım amacınızı tam olarak belirtebilmenizi sağlayıcı yapılara yahut bu yapılardan ziyade bu işi gerçekleştirebilecek keywordlere ihtiyaç duyabilirsiniz. C# 8.0 versiyonu ile Readonly Members özelliği, inşa edilen tasarım üzerinde tamda istendiği...

0

Thread Safe – ConcurrentQueue, ConcurrentDictionary, ConcurrentBag, ConcurrentStack ve BlockingCollection Koleksiyonları ve Kullanım Durumları

Merhaba, Yazılımsal problemlere çözüm olarak geliştirdiğimiz algoritmalar ihtiyaca dönük olarak yer yer asenkron işlevde geliştirilebilmektedirler. Asenkron süreçler, senkron gidişata nazaran process önceliğini tahmin edilemeyecek bir şekilde değiştirebilecek bir doğaya sahiptirler. Haliyle bu tahmin edilememezlik...

4

C# 7.0 – Discard Kavramı

Merhaba, Genellikle C# sürümlerindeki yenilikler üzerine konu bazlı değerlendirme içerikleri oluşturarak mümkün mertebe kendimi ve bloğumu güncel tutmaya çalışmaktayım. Tabi arada bazı konular gözden kaçabilmekte yahut sonra değerlendirilmek üzere ileriye ötelenebilmektedir. Bu içeriğimizde C#...

2

C# – Flags Attribute’u İle Toplu Enumeration Tanımlama

Merhaba, Enumeration, yapısı gereği bir veya birden fazla değeri numaralandırmak ve bu atanan numaralar üzerinden işlem yapmak için kullanılan bir araçtır. Kullanım olarak birçok varyasyonu bulunsada bunlar arasında amaçsal olarak diğerlerinden farklılık göstermeyen lakin...

C# – WordPressSharp İle WordPress’e Veri Post Etme 22

C# – WordPressSharp İle WordPress’e Veri Post Etme

Merhaba, Siz değerli okuyucularım bilirsiniz ki, her ne kadar son teknolojileri takip etmeye çalışsamda biryandan da otomasyonel yapılar üzerine her daim ilgilenmekte ve mümkün mertebe içerikler oluşturmaya özen göstermekteyim. Dolayısıyla günlük hayatta yapmış olduğumuz...