İzlence
Completion requirements
Ders Bilgileri
| Dersin Kodu | BTÖ-303 |
| Dersin Adı | Web Tabanlı Programlama [Next.js] |
| Kredi | T:2 - U:2 - K:3 - AKTS:5 |
| Dersin Amacı | Bu dersin amacı günümüzdeki internet ve web teknolojilerini anlayarak, Next.js, Supabase ve Vercel gibi modern araçlarla etkili ve modern web uygulamalarının geliştirebilmesini sağlayacak bilgi ve becerileri kazandırmaktır. |
Dersin Kaynakları
| No | Kaynak | Bağlantı |
|---|---|---|
| 1 | Next.js | https://nextjs.org/docs |
| 2 | Next.js Learn | https://nextjs.org/learn |
| 3 | React | https://react.dev/ |
| 4 | Supabase | https://supabase.com/docs |
| 5 | Vercel | https://vercel.com/docs |
| 6 | GitHub Docs | https://docs.github.com/ |
Ara Sınav Değerlendirme Ölçütleri
| Tür | Puan | Oran |
|---|---|---|
| Ödev* (1-5 Numaralı) | 20 x 5 = 100 | %20 |
| Sınav (1 Numaralı) | 100 x 1 = 100 | %80 |
Dönem Sonu Sınavı Değerlendirme Ölçütleri
| Tür | Puan | Oran |
|---|---|---|
| Ödev* (6-10 Numaralı) | 20 x 5 = 100 | %20 |
| Next.js Projesi*, ** | 100 x 1 = 100 | %20 |
| Sınav (2 Numaralı) | 100 x 1 = 100 | %60 |
** GitHub üzerinden teslim edilir ve Vercel üzerinde yayınlanır, haftalık çalışma ve ilerleme; puanlama katsayısını belirler.
AKTS Hesaplama İçeriği
| Etkinlik | Sayı | Süre | İş Yükü |
| Haftalık teorik ders saati | 14 | 2 | 28 |
| Haftalık uygulamalı ders saati | 14 | 2 | 28 |
| Okuma Faaliyetleri | 13 | 1 | 13 |
| İnternette tarama, kütüphane çalışması | 13 | 2 | 26 |
| Materyal tasarlama, uygulama | 0 | 0 | 0 |
| Rapor hazırlama | 1 | 15 | 15 |
| Sunu hazırlama ve sunum | 0 | 0 | 0 |
| Ara sınav ve ara sınava hazırlık | 7 | 1 | 7 |
| Yarıyıl sonu sınavı | 8 | 1 | 8 |
| Toplam iş yükü | 125 | ||
| AKTS | 5 |
Dersin Öğrenme Çıktıları
| No | Açıklama |
|---|---|
| 1 | Web tabanlı uygulamaların temel kavramlarını, önemini ve kullanım alanlarını bilir. |
| 2 | Next.js çatısının web tabanlı programlama alanında neden tercih edildiğini açıklayabilir. |
| 3 | App Router ile dosya tabanlı sayfa yönlendirme ve dinamik route işlemlerini gerçekleştirebilir. |
| 4 | Server ve Client Component ayrımını yaparak uygun bileşen yapısını kurabilir. |
| 5 | Layout ve yeniden kullanılabilir bileşenlerle responsive arayüzler oluşturabilir. |
| 6 | Proxy (middleware) ve Supabase Auth ile kimlik doğrulama ve yetkilendirme işlemlerini gerçekleştirebilir. |
| 7 | Supabase üzerinde migration ve satır düzeyinde güvenlik (RLS) ile veri tabanı şeması oluşturabilir. |
| 8 | Server Actions ile veri tabanına yeni kayıtlar ekleyebilir. |
| 9 | Veri tabanından veri çekme, filtreleme ve sayfalama işlemlerini yapabilir. |
| 10 | Var olan verileri veri tabanında güncelleyebilir ve silebilir. |
| 11 | WebSocket tabanlı gerçek zamanlı özellikler geliştirebilir. |
| 12 | Web uygulamasını GitHub ve Vercel ile yayınlayabilir. |
Dersin Konuları
| Hafta | Konu |
|---|---|
| 1 | Web Tabanlı Programlama Nedir, Ne İşe Yarar? |
| 2 | Next.js'in Web Tabanlı Programlama Yaklaşımları Arasındaki Yeri |
| 3 | App Router ve Sayfa Yönlendirme |
| 4 | Server ve Client Components |
| 5 | Layout, Stil ve Bileşen Yapısı |
| 6 | Proxy (Middleware) ve Kimlik Doğrulama |
| 7 | Supabase ve Veri Tabanı Şeması (Migrations) |
| 8 | Ara Sınav |
| 9 | Ara Sınav Çözümleri |
| 10 | Veri Tabanı İşlemleri (Create) |
| 11 | Veri Tabanı İşlemleri (Read) |
| 12 | Veri Tabanı İşlemleri (Update & Delete) |
| 13 | Gerçek Zamanlı İletişim (WebSocket) |
| 14 | Proje Yayınlama (GitHub & Vercel) |
| 15 | Dönem Sonu Sınavı |