</> realdeveloper

Yazılım kavramları

Kaynaklı özgün açıklamalar ve çalışma soruları.

HTTP isteği nasıl okunur?

İstemci bir yöntem, adres ve gerekirse gövde gönderir. Sunucu durum kodu, başlıklar ve gerekirse gövdeyle yanıtlar. API hatasını anlamak için isteği ve yanıtı birlikte incele.

REST API ve kaynak tasarımı

REST bir mimari yaklaşımdır. Kaynakları tutarlı adreslerle temsil etmek, HTTP anlamlarını korumak ve her isteğin ihtiyaç duyduğu bilgiyi taşıması tasarımı anlaşılır kılar. JSON kullanmak tek başına REST uyumu sağlamaz.

Tekrarlanan istek ve idempotency

İdempotent işlem aynı istek tekrarlandığında hedeflenen sunucu durumunu yeniden değiştirmez. Yanıt kodlarının birebir aynı olması gerekmez. POST için otomatik olarak bu özellik varsayılmaz.

CLR: C# kodunu kim çalıştırır?

Common Language Runtime, .NET kodunun çalışmasını yöneten ortamdır. Bellek yönetimi, tür güvenliği ve istisna yönetimi gibi hizmetler sağlar. C# dili, .NET kitaplıkları ve CLR farklı sorumluluklara sahiptir.

Domain-Driven Design neyi modeller?

DDD, karmaşık iş kurallarını alan uzmanlarıyla ortak bir dil ve sınırları belirli modeller üzerinden ele alır. Bounded context içinde bir kelimenin anlamı tutarlıdır; başka bir bağlamda farklı olabilir.

DDL: veritabanı yapısını değiştirmek

Data Definition Language tablo, kısıt ve diğer veritabanı nesnelerinin yapısını tanımlar. CREATE, ALTER ve DROP bu gruptadır. Yapı değişikliği, satır verisini okuyan veya değiştiren sorgulardan farklı bir amaç taşır.

SQL indeksi ve maliyeti

İndeks belirli satırları bulmayı hızlandırabilir. Ek depolama kullanır ve yazma sırasında güncellenir. Her sütuna indeks eklemek yerine gerçek sorguyu, veri dağılımını ve sorgu planını incele.

Transaction ve tutarlı veri

Transaction bir grup veritabanı değişikliğinin birlikte commit edilmesini veya geri alınmasını sağlar. EF Core, sağlayıcı destekliyorsa tek SaveChanges çağrısındaki değişiklikleri transaction içinde uygular. Birden çok çağrı için sınırları ayrıca tasarla.

Asenkron JavaScript ve await

Asenkron işlem sonucunu beklerken program başka işler yapabilir. Promise gelecekte tamamlanacak sonucu temsil eder. await, içinde bulunduğu async fonksiyonun devamını bekletir; tüm uygulamayı durdurmaz.

Docker: imaj, kapsayıcı ve veri

İmaj uygulamanın çalıştırılabilir şablonudur; kapsayıcı onun çalışan örneğidir. Silinen kapsayıcının yazılabilir katmanındaki veri kalıcı kabul edilmez. Veritabanı için volume gibi kalıcılık mekanizmaları gerekir.

Kubernetes ve istenen durum

Kubernetes kapsayıcı tabanlı iş yüklerini yönetir. İstenen durumu tanımlarsın; denetleyiciler gerçek durumu ona yaklaştırır. Pod en küçük dağıtılabilir birimdir. Deployment kopyaları yönetir, Service erişim sağlar.

CI/CD ve GitHub Actions

Continuous integration değişiklikleri sık birleştirip otomatik kontrollerle doğrular. Continuous delivery yayınlanabilir bir sürüm hazır tutar; continuous deployment uygun değişiklikleri otomatik canlıya alır. GitHub Actions iş akışları olaylarla tetiklenen job ve step’lerden oluşur.

Pratikle devam et

Bu sayfalar herkese açıktır. Cevaplarını kaydetmek ve kişisel çalışma rotasını kullanmak için giriş yap.

Çalışma konularını aç →