Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
C#'ta Attribute ve Reflection: Kendi Attribute'unu Yazmak ve Okumak
Attribute'un metadata'da durup okunduğunda oluşması, Obsolete ve CS0618, AttributeUsage, positional ve named argümanlar, decimal'in attribute parametresi olamaması ve CS0181, reflection ile küçük bir validator, IDiscountRule uygulayan tipleri keşfedip Activator ve Invoke ile çalıştırmak, BenchmarkDotNet ile GetValue, cache'lenmiş PropertyInfo ve typed delegate karşılaştırması, trimming ve source generator sınırları.
C#'ta Nullable Reference Types Derinlemesine: NotNullWhen, MaybeNull ve API Tasarımı
Flow analysis'in method sınırında durması ve CS8602, NotNullWhen ile koşullu contract ve CS8762, kısıtsız T?'nin value type'ta düz T kalması, MaybeNullWhen ile generic Try pattern'i, NotNullIfNotNull, NotNull ve AllowNull, CS8618 için MemberNotNull, DoesNotReturn, runtime'da korumanın olmaması ve ThrowIfNull, kademeli geçiş için #nullable ve WarningsAsErrors.