NestJS

Backend & API Teknolojileri
NestJS
NestJS; ölçeklenebilir, test edilebilir ve sürdürülebilir sunucu tarafı uygulamalar geliştirmek için aşamalı (progressive) bir Node.js framework'üdür. TypeScript, dependency injection ve Angular'dan esinlenmiş modül sistemini birleştirerek JavaScript backend'lerine kurumsal düzey yapı getirir.
Nedir?
NestJS; Express veya Fastify üzerine inşa edilmiş, görüş bildiren (opinionated) bir Node.js backend framework'üdür. Node'un ilkel yapılarını TypeScript dekoratörleri, modüller, sağlayıcılar ve güçlü bir dependency-injection container'ı ile sarar; Angular ve Spring'den desenler ödünç alarak büyük backend'leri gezilebilir hâle getirir.
Ne işe yarar?
NestJS; HTTP yönlendirme, doğrulama, kimlik doğrulama, WebSocket, gRPC, GraphQL, kuyruklar, zamanlanmış işler ve mikroservis mesajlaşmasını tek tutarlı programlama modelinde yönetir. Guard'lar, interceptor'lar ve pipe'lar çapraz kesen endişeleri (cross-cutting concerns) besteler; yerleşik test koşum düzeni birim ve e2e testlerini kolaylaştırır.
Nerede kullanılır?
NestJS; Adidas, Capgemini, Roche, Autodesk ve binlerce startup'ın üretim backend'lerini besler. Node'un ekosistem hızını isteyen ancak kurumsal yapı da isteyen — katmanlı servisler, sıkı tipleme ve controller'dan repository'ye kadar her endişe için net bir yer — ekiplerin varsayılan tercihidir.
Ne zaman ve neden ortaya çıktı?
NestJS, Node.js backend'lerinin Yabanıl Batı'sına yapı getirmek için 2017'de Kamil Myśliwiec tarafından yayımlandı. Express size sadece bir router verir; oyuncak uygulamanın ötesindeki her şey, ekiplerin aynı desenleri yeniden icat etmesini gerektirir. NestJS, bu desenleri belirli bir HTTP adaptörüne kilitlemeden pil-dahil bir framework'te kodladı.
Internative'de neden kullanıyoruz?
3+ mühendisten oluşan bir ekibin 3+ yıl sürdüreceği backend'ler için NestJS'i seçiyoruz. DI container'ı, modül sınırları ve ekosistemi (Prisma, TypeORM, BullMQ, Mongoose adaptörleri) teslim ettiğimiz domain-driven tasarımlara temiz şekilde haritalanır. Müşteri 'Express'ten daha yapılı, Java kadar da değil' dediğinde TypeScript + NestJS varsayılanımızdır.
Backend & API Teknolojileri kategorisinde daha fazlası
Kütüphanenin aynı kategorisindeki diğer teknolojiler.

Python
Python; sözde kod gibi okunan ve dünyanın AI, veri ve otomasyon yığınlarını çalıştıran genel amaçlı bir programlama dilidir. Ekosistemi; web backend'leri, makine öğrenmesi, bilimsel hesaplama ve DevOps araçlarını kapsar — hepsi 'okunabilir kod kazanır' ilkesine bağlı.

GraphQL
GraphQL, istemcilerin ihtiyaç duyduğu verileri tam olarak talep etmelerini sağlayan API'ler için bir sorgu dili ve çalışma zamanıdır. Güçlü bir şekilde tiplenmiş bir şema, esnek sorgular ve modern uygulamalar için verimli veri alma sağlar.

Entity Framework Core
Entity Framework Core (EF Core), .NET için modern, hafif ve genişletilebilir bir Nesne-İlişkisel Haritalayıcıdır (ORM). Geliştiricilerin, güçlü tipli C# modelleri ve LINQ sorguları kullanarak veritabanlarıyla çalışmasını sağlar.

Dapper
Dapper, SQL sorgu sonuçlarını güçlü tipli C# nesnelerine eşleyerek hızlı, hafif veri erişimi sağlayan yüksek performanslı bir mikro-ORM'dir. Minimum soyutlama ile maksimum kontrol ve verimlilik sunar.

Prisma
Prisma, Node.js ve TypeScript için modern bir ORM ve veritabanı araç setidir. Tip güvenli veritabanı erişimi, şemaya dayalı geliştirme ve güvenilir, ölçeklenebilir arka uç uygulamaları oluşturmak için güçlü araçlar sunar.

Mikro-ORM
Mikro-ORM, Data Mapper deseni ve Unit of Work temelinde Node.js için geliştirilmiş bir TypeScript ORM'dir. Güçlü tip kontrolü, kimlik haritası ve esnek SQL kontrolü sunarak karmaşık ve kurumsal düzeyde arka uç sistemleri için uygundur.