ASP.NET Core ile Modern Web Uygulamaları Geliştirme
ASP.NET Core, Microsoft tarafından geliştirilen açık kaynak bir web framework'üdür ve Windows, Linux, macOS üzerinde çalışır. Eski ASP.NET'ten farklı olarak daha hafif, hızlı ve çok platformlu bir yapıya sahiptir.
Performans açısından ASP.NET Core, TechEmpower benchmarklarında en hızlı framework'lerden biridir. Veritabanı sorguları ve JSON işleme konusunda Python veya Node.js'den belirgin ölçüde daha iyi sonuçlar verir. Ayrıca built-in dependency injection, logging ve configuration sistemi sayesinde enterprise uygulamalarında zaman kazandırır.
ASP.NET Core projesi oluştururken.NET CLI kullanabilirsiniz:
1dotnet new web -n MyWebApp2cd MyWebApp3dotnet runBu komutlar yeni bir web projesi oluşturur ve localhost:5000'de çalıştırır. Program.cs dosyası uygulamanın giriş noktasıdır ve middleware pipeline'ı burada tanımlarsınız.
ASP.NET Core'da routing esnek ve attribute-based sistemle çalışır:
1[ApiController]2[Route("api/[controller]")]3public class UsersController: ControllerBase4{5[HttpGet("{id}")]6public IActionResult GetUser(int id)7{8return Ok(new { id, name = "John" });9}10}Bu yapı RESTful API geliştirmeyi basitleştirir.
Entity Framework Core, ASP.NET Core'un standart ORM'i olarak kullanılır. Dependency injection container'ına eklemek için Startup.cs (veya Program.cs) dosyasında:
1services.AddDbContext<AppDbContext>(options =>2options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));ASP.NET Core, CSRF koruması, SQL injection önlemleri ve secure headers gibi güvenlik özelliklerini varsayılan olarak sunar. Authentication ve Authorization için built-in middleware bulunur.
ASP.NET Core, startupı hızlı, deployment'ı kolay ve performansı yüksek web uygulamaları için güçlü bir seçimdir. Özellikle mikroservisler ve API geliştirmede tercih sebebi olmaktadır.
5 yorum
aynen büyük projelerde çöp kodu yakalamak çok daha kolay oluyor type system sayesinde
type systema alışınca hoşuma gidiyor aslında özellikle büyük projelerde hata yakalamak
Node js ve Pythondan geçiş yapmak biraz farklı olabilir ama C# syntaxı aslında çok kötü değil İlk projelerde type systeme alışmak biraz zaman alır
ama bir şey var type system hoş ama başta öğrenme süreci gerçekten uzun geliyor bana Node
ASP NET Core gerçekten hızlı ama ben şu ana kadar sadece Node js kullandım Python ile de