.NET'in geldiği yer
.NET, Microsoft tarafından 2002'de tanıtıldı; 2020'de .NET Core ile birlikte .NET Framework'tan ayrıldı ve cross-platform açık kaynak ekosisteme dönüştü. 2026'da .NET 9 LTS, kurumsal yazılım, web backend, oyun (Unity), mobil (MAUI), masaüstü (WPF/WinUI/MAUI), bulut servisleri için tam donanımlı platform. AIOR'da .NET'i kurumsal müşterilerimizde sıkça kullanıyoruz — finans, lojistik, üretim sektöründe yaygın tercih..NET 8/9 — performans odaklı
.NET 8 (Kasım 2023, LTS) ve .NET 9 (Kasım 2024, Standard Term Support) performans iyileştirmeleri getirdi:- AOT (Ahead-of-Time) compilation — startup süresi mililisaniyelere indi.
- Native AOT for ASP.NET Core — server-side .NET için cold start avantajı.
- Garbage Collector iyileştirmeleri — sub-millisecond pauses.
- System.Text.Json performansı önemli ölçüde arttı.
- Top-level statements ve minimal API'lar boilerplate azalttı.
AIOR projelerinde her major .NET sürümünü 6-12 ay test ettikten sonra production'a alıyoruz; LTS sürümleri tercih ediliyor.
C# 12/13 dil özellikleri
- Primary constructors — `class Foo(int x, int y) { ... }` boilerplate azaldı.
- Collection expressions — `int[] arr = [1, 2, 3];`.
- Required members — `required` keyword ile constructor-bağımsız zorunlu init.
- Generic math — generic type'larda numeric operations.
- Record types — value semantics, deep equality, with-expressions.
- Pattern matching — switch expressions, type patterns, property patterns.
- Nullable reference types — null safety opt-in (yeni projeler default).
AIOR projelerinde C# strict nullable reference types ile yazılıyor — NullReferenceException riski büyük ölçüde compile-time'a alındı.
ASP.NET Core — web backend
ASP.NET Core 2026'da .NET tarafında en yaygın web framework. Minimal API'lar ve MVC her ikisi de destekleniyor. AIOR'da:- Minimal API'lar — microservice tarzı, hafif API'lar için. Boilerplate minimum.
- MVC — kompleks domain modelleri olan kurumsal uygulamalar için.
- Blazor Server — SignalR üzerinden server-rendered interaktif UI.
- Blazor WebAssembly — client-side .NET, browser'da çalışan tam .NET app.
- gRPC — service-service iletişim için.
Entity Framework Core
EF Core 9 (2024), .NET'in standart ORM'i. AIOR projelerinde EF Core kullanırken disiplin uyguluyoruz:- Migrations — schema değişiklikleri kod ile versiyonlanır.
- Compiled queries — sıcak sorgular için performans avantajı.
- N+1 problem — `Include` ile eager loading, query loglama ile tespit.
- Raw SQL — kompleks raporlama sorguları için.
- Connection pooling — production'da kritik.
Dependency Injection — yerleşik
.NET 6+ ile DI container yerleşik. AIOR projelerinde standart kullanım: `IServiceCollection`'a registration, constructor injection. Üçüncü taraf DI (Autofac) sadece çok özel ihtiyaçlar için.Logging ve observability
`ILogger<T>` arayüzü yerleşik. AIOR projelerinde:- Serilog — structured logging için.
- OpenTelemetry .NET — distributed tracing ve metrics.
- Application Insights veya Datadog — APM.
- Health checks — `/health` endpoint standart.
Test framework'leri
xUnit varsayılan tercih. NUnit ve MSTest hâlâ kullanılıyor. Moq mocking için. FluentAssertions readable assertions için. AIOR'da test coverage hedefi %70+, kritik domain logic için %90+.Cloud-native özellikler
.NET 2026'da bulut için optimize:- Native AOT — Lambda/serverless için cold start avantajı.
- Container support — yerleşik Dockerfile, slim base images.
- Health checks — Kubernetes liveness/readiness probes için.
- Configuration — environment variables, secrets, JSON config.
- Azure SDK entegrasyonu native.
AIOR projelerinde .NET uygulamalarını Docker + Kubernetes ile veya Azure App Service'te çalıştırıyoruz.
Distribution ve dağıtım
- Self-contained deployment — runtime dahil tek binary, kullanıcı .NET kurmadan çalıştırır.
- Framework-dependent — daha küçük binary, hedef makinede .NET runtime gerekir.
- Single file publish — birden çok dll yerine tek executable.
- Trimming — kullanılmayan kod kaldırılır, binary boyutu küçülür.
Sonuç
.NET 2026'da kurumsal yazılım, web backend, masaüstü ve cross-platform mobil için tam donanımlı, performansı yüksek, ekosistemi geniş bir platform. AIOR olarak müşteri ekibi .NET deneyimine sahipse veya Microsoft ekosistemi (Azure, SQL Server, Active Directory) gerekiyorsa .NET'i tercih ediyoruz. Sizin .NET üretimde Native AOT'a geçiş düşündünüz mü, yoksa hâlâ JIT compilation ile mi çalışıyor?Where .NET sits
.NET was introduced by Microsoft in 2002; in 2020 it split from .NET Framework via .NET Core, becoming a cross-platform open-source ecosystem. In 2026, .NET 9 LTS is a fully equipped platform for enterprise software, web backend, gaming (Unity), mobile (MAUI), desktop (WPF/WinUI/MAUI), and cloud services. AIOR uses .NET often for enterprise customers — a frequent pick in finance, logistics, manufacturing..NET 8/9 — performance-focused
.NET 8 (November 2023, LTS) and .NET 9 (November 2024, Standard Term Support) brought performance improvements:- AOT (Ahead-of-Time) compilation — startup time dropped to milliseconds.
- Native AOT for ASP.NET Core — cold-start advantage for server-side .NET.
- Garbage Collector improvements — sub-millisecond pauses.
- System.Text.Json performance significantly improved.
- Top-level statements and minimal APIs reduced boilerplate.
AIOR brings each major .NET version into production after 6–12 months of testing; LTS versions are preferred.
C# 12/13 language features
- Primary constructors — `class Foo(int x, int y) { ... }` reduced boilerplate.
- Collection expressions — `int[] arr = [1, 2, 3];`.
- Required members — `required` keyword for constructor-independent mandatory init.
- Generic math — numeric operations on generic types.
- Record types — value semantics, deep equality, with-expressions.
- Pattern matching — switch expressions, type patterns, property patterns.
- Nullable reference types — opt-in null safety (default on new projects).
AIOR projects use C# with strict nullable reference types — NullReferenceException risk largely moved to compile time.
ASP.NET Core — web backend
ASP.NET Core is the most widespread web framework on the .NET side in 2026. Both minimal APIs and MVC are supported. At AIOR:- Minimal APIs — for microservice-style, lightweight APIs. Minimal boilerplate.
- MVC — for enterprise apps with complex domain models.
- Blazor Server — server-rendered interactive UI over SignalR.
- Blazor WebAssembly — client-side .NET, a full .NET app running in the browser.
- gRPC — for service-to-service communication.
Entity Framework Core
EF Core 9 (2024) is the standard ORM in .NET. Discipline we apply when using EF Core on AIOR projects:- Migrations — schema changes versioned with code.
- Compiled queries — performance gain for hot queries.
- N+1 problem — eager loading via `Include`, query logging to detect.
- Raw SQL — for complex reporting queries.
- Connection pooling — critical in production.
Dependency Injection — built in
Since .NET 6+ the DI container is built in. Standard use on AIOR projects: registration via `IServiceCollection`, constructor injection. Third-party DI (Autofac) only for very specific needs.Logging and observability
`ILogger<T>` is a built-in interface. On AIOR projects:- Serilog — for structured logging.
- OpenTelemetry .NET — distributed tracing and metrics.
- Application Insights or Datadog — APM.
- Health checks — `/health` endpoint standard.
Test frameworks
xUnit is the default. NUnit and MSTest are still used. Moq for mocking. FluentAssertions for readable assertions. AIOR's test coverage target is 70%+; for critical domain logic 90%+.Cloud-native features
.NET in 2026 is optimised for cloud:- Native AOT — cold-start advantage for Lambda/serverless.
- Container support — built-in Dockerfile, slim base images.
- Health checks — for Kubernetes liveness/readiness probes.
- Configuration — environment variables, secrets, JSON config.
- Native Azure SDK integration.
AIOR runs .NET apps on Docker + Kubernetes or Azure App Service.
Distribution and deployment
- Self-contained deployment — single binary with runtime included; user runs it without installing .NET.
- Framework-dependent — smaller binary; the target machine needs the .NET runtime.
- Single file publish — single executable instead of many dlls.
- Trimming — unused code removed; binary size shrinks.