Ders İzlencesi (14 Hafta)

Django ile Python Arka Yüz Yazılım Geliştirme dersinin 14 haftalık dönem planı aşağıdadır. Bu, taslak bir plandır; resmi tatiller, bayramlar ve gerekli görülen durumlarda ilgili haftadaki konularda değişiklik yapılabilir.

Hafta Konu Açıklama / Proje Adımı
1. Hafta Django Giriş ve MVT Framework kavramı, Django özellikleri, MVT mimarisi ve Blog projesi genel yapı planlaması.
2. Hafta Kurulum ve Başlangıç Sanal ortam (venv) yönetimi, Django kurulumu, startproject ve runserver komutları.
3. Hafta Proje ve Uygulama Yapısı settings.py, urls.py, views.py ve models.py dosyalarının detaylı incelenmesi; Blog uygulamasının oluşturulması.
4. Hafta Model ve Veritabanı Mantığı Field tipleri, Migration işlemleri (makemigrations, migrate), Django Shell kullanımı ve Admin panel aktivasyonu.
5. Hafta URL ve Template Sistemi Dinamik URL yapıları (path, include), Template içinde veri gösterme ve Blog detay sayfası oluşturma.
6. Hafta Arayüz Tasarımı ve Statik Dosyalar base.html ile Template Inheritance, static dosya yönetimi ve Bootstrap entegrasyonu.
Ara Sınavlar
7. Hafta Model İlişkileri ForeignKey kullanımı, Category modeli oluşturma ve Blog yazılarını kategorilere bağlama.
8. Hafta ORM Sorguları ve Filtreleme filter(), exclude(), order_by() ve get() metotları; gelişmiş arama ve sıralama özellikleri.
9. Hafta View ve İstek Yönetimi Function Based Views (FBV), GET/POST metotları ve Blog sistemine yorum özelliği ekleme.
10. Hafta Template Tag ve Filter Döngüler, koşul blokları ve dinamik veri gösteriminin kullanıcı dostu hale getirilmesi.
11. Hafta Django Form Yapısı Form ve ModelForm kullanımı, validasyon (clean metodu) ve arayüzden veritabanına veri kaydetme.
12. Hafta Kullanıcı Yetkilendirme (Auth) UserCreationForm, Login/Logout işlemleri ve @login_required ile içerik koruma.
13. Hafta Oturum Yönetimi ve Güvenlik Permission yapısı, kullanıcıya özel içerik yönetimi, CSRF koruması ve temel güvenlik önlemleri.
14. Hafta Genel Tekrar ve Optimizasyon Admin panel özelleştirme (search_fields, list_display), sistem testleri ve final projesi hazırlığı.
Final Haftası