BACKEND Eğitimi:
Nest.js Eğitimi ve Sunucu taraflı uygulama geliştirme (230 saat):
Modül 1: Nest.js Girişi
1.1 Nest.js Nedir?
- js’in temel prensipleri
- TypeScript ve Express.js ile ilişkisi
1.2 Kurulum ve Proje Yapısı
- js projesi oluşturma
- Temel proje yapısı ve dosya organizasyonu
1.3 Temel Kavramlar
- Module, Controller, Service
- Dependency Injection
- Middleware kullanımı
1.4 RESTful API Temelleri
- Endpoint tanımlama
- HTTP metotları ve route parametreleri
- Request ve response Nesneleri
Modül 2: Veritabanı Entegrasyonu
2.1 TypeORM ve PostgreSQL
- TypeORM nedir?
- PostgreSQL ile veritabanı oluşturma ve Veritabanına bağlanılması
2.2 TypeORM ile Modelleme
- Entity ve Repository kullanımı
- Veritabanı tablolarının oluşturulması
2.3 CRUD Operasyonları
- Temel CRUD operasyonlarını gerçekleştirme
- TypeORM query builder kullanımı
2.4 Validation ve DTOs
- DTO (Data Transfer Object) kavramı
- Class-validator ile veri doğrulama
Modül 3: JWT Authentication ve Güvenlik
3.1 Passport.js ve JWT
- js kullanımı
- JWT ile kullanıcı doğrulama
3.2 Guard ve Middleware
- Auth guard ve middleware kullanımı
- Role-based yetkilendirme
3.3 OAuth ve Social Media Authentication
- OAuth protokolü
- Dış servislerle entegrasyon
3.4 Güvenlik Pratikleri
- SQL Injection, Cross-Site Scripting (XSS) önlemleri
- HTTPS kullanımı
Modül 4: GraphQL ve Nest.js
4.1 GraphQL Temelleri
- GraphQL kavramları
- GraphQL query ve mutationlar
4.2 Nest.js ve GraphQL Entegrasyonu
- js ile GraphQL servisi oluşturma
- Resolver ve schema kullanımı
4.3 Apollo Server ve Client
- Apollo Server kullanımı
- Frontend ile GraphQL entegrasyonu
Modül 5: Testing ve Hata Ayıklama
5.1 Birim Testleri
- Jest ve Supertest kullanımı
- Unit ve integration testler
5.2 Hata Ayıklama (Debugging)
- js uygulamalarını hata ayıklama
- Hata ayıklama stratejileri
Modül 6: Mikroservisler ve Nest.js
6.1 Mikro Servis Kavramları
- Mikro servis mimarisi nedir?
- Avantajları ve zorlukları
6.2 Nest.js ile Mikro Servis Geliştirme
- js ile mikro servis oluşturma
- İletişim ve veri paylaşımı
Modül 7: WebSocket ve Real-Time Uygulamalar
7.1 WebSocket ve Nest.js
- WebSocket protokolü
- WebSocket ile iletişim kurma
7.2 Real-Time Uygulama Geliştirme
- WebSocket ile anlık haberleşme
- Real-time uygulama senaryoları
Modül 8: Performans ve Optimizasyon
8.1 Performans Analizi
- Uygulama performansının değerlendirilmesi
- Optimizasyon stratejileri
8.2 Cache ve CDN
- Veri önbellekleme stratejileri
- CDN kullanımı
Modül 9: Docker ve Konteynerizasyon
9.1 Docker Temelleri
- Docker nedir?
- Docker konteynerleri ve avantajları
9.2 Nest.js ve Docker Entegrasyonu
- js uygulamasını Dockerize etme
- Docker-compose kullanımı
Modül 10: Proje Geliştirme ve Bitirme
10.1 Büyük Ölçekli Bir Proje Geliştirme
– Öğrenilen bilgilerin pratiğe dönüştürülmesi
– Projeyi planlama ve geliştirme
10.2 Bitirme ve Değerlendirme
– Projenin tamamlanması ve sunumu
– Öğrencilerle geri bildirim oturumları düzenleme
* Bu kurs C ve Sistem Programcıları Derneği ve Sistem Bilgisayar işbirliği ile düzenlenmektedir.