Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
ASP.NET Core'da Model Binding: FromRoute, FromQuery, FromBody ve FromHeader
İstekteki verinin route, query string, body, header, form ve service kaynaklarından action parametrelerine nasıl bind edildiğini, [ApiController]'ın tahmin kurallarını, 415 ve 400 hatalarının sebeplerini gerçek yanıtlarla anlatıyoruz.
ASP.NET Core'da Status Code ve Response: Ok, CreatedAtAction ve ProblemDetails
ControllerBase yardımcılarıyla doğru status code'u dönmeyi, null dönünce gelen sürpriz 204'ü, CreatedAtAction ve Location header'ını, 400/404/409 ayrımını, ProblemDetails'i ve content negotiation'ı gerçek yanıtlarla anlatıyoruz.
ASP.NET Core'da Controller ve Action: [ApiController] ile CRUD İskeleti
ControllerBase ve Controller farkını, [ApiController] attribute'unun getirdiği dört davranışı, IActionResult ile ActionResult<T> arasındaki seçimi ve bellekte duran bir listeyle çalışan CRUD iskeletini gerçek curl çıktılarıyla anlatıyoruz.
ASP.NET Core Web API'de Routing: Attribute Routing, Route Template ve Constraint'ler
Endpoint routing'in karar ve yürütme adımları, attribute routing ve [controller]/[action] token'ları, route template parçaları, constraint'ler ve öncelik sırası, çakışan route'lar ve AmbiguousMatchException.
ASP.NET Core Middleware Pipeline: Sıralama, Use, Run, Map ve Kendi Middleware'in
İsteğin middleware halkalarından nasıl geçip response'un nasıl geri döndüğünü görüyoruz: Use, Run ve Map, class olarak middleware yazmak, sıralamanın etkisi, built-in middleware'lerin önerilen sırası ve tipik tuzaklar.
ASP.NET Core'da Program.cs ve Hosting Modeli: WebApplication ve Environment'lar
Minimal hosting modelinin iki aşaması: builder ile service, configuration ve logging hazırlığı, Build sonrası app ile pipeline ve endpoint'ler. Environment'lar, app.Run() ve perde arkasındaki Generic Host.
İlk ASP.NET Core Web API Projesi: .NET SDK, global.json ve Proje Yapısı
.NET SDK ile runtime farkı, birden fazla SDK ve global.json, dotnet new webapi template'inin sürümlere göre değişimi, csproj ve TargetFramework, launchSettings.json ve ilk isteğin neden 307 döndüğü.
ASP.NET Core Web API Nedir? HTTP ve REST Temelleri
Web API'yi HTTP penceresinden tanıyoruz: istek ve response anatomisi, method'lar ve idempotency, status code aileleri, kaynak odaklı URL tasarımı. Serinin .NET 6 kemik yapı ve sürüm yazıları kurgusunu anlatıyoruz.
TypeScript 7 ve Sonrası: Go ile Yazılan Derleyici ve Yeni Varsayılanlar
Go ile yazılan TypeScript 7 derleyicisini, 6.0 ile gelen varsayılanları, 7.0'da kaldırılan ayarları, isolatedDeclarations'ı, TC39 Type Annotations önerisini ve 7.1 betasının getirdiklerini görüyoruz.
JavaScript'ten TypeScript'e Geçiş: checkJs, JSDoc ve Kademeli strict
Bir JavaScript projesini TypeScript'e kademeli geçirmeyi görüyoruz: allowJs, checkJs ve // @ts-check, JSDoc ile tip yazmak, TypeScript 7'deki JSDoc değişiklikleri, kademeli strict ve @ts-expect-error.
TypeScript'te Tip Seviyesinde Programlama: type-challenges Kolay Seviye Çözümleri
type-challenges'ın kolay seviyesinden on soruyu (MyPick, MyReadonly, TupleToObject, First, Length, MyExclude, MyAwaited, If, Concat, Includes) Equal ve Expect ile yazılmış tip seviyesinde testlerle çözüyoruz.
TypeScript'te using ve await using: Symbol.dispose ile Kaynak Yönetimi
TS 5.2 ile gelen using ve await using'in TypeScript tarafını görüyoruz: Disposable type'ları, gereken lib ayarı, derleyicinin kontrolleri, DisposableStack ve tsc'nin ürettiği JavaScript'in Node ile Safari'de ne anlama geldiği.