
Gökçe Güler
10 July 2025
Bir web uygulaması geliştirmeye başlamak çoğu zaman büyük bir soru işaretiyle gelir: Hangi teknolojiyi kullanmalıyım? Hangi araçlar bana hem esneklik hem de hız kazandırır?
İşte bu noktada Django, Python tabanlı güçlü bir web çatısı olarak öne çıkar. İster basit bir web sitesi ister kapsamlı bir platform geliştirin; Django işinizi hızlandırır ve düzenli bir yapı sunar.
Bu yazıda Django’nun ne olduğunu ve neden tercih edildiğini ele alacağız. Ardından sıfırdan kurulum adımlarını sade ve anlaşılır bir şekilde paylaşacağız.
Django Nedir?
Django Python ile yazılmış, açık kaynak kodlu ve güçlü bir web geliştirme çatısıdır. Geliştiricilere “aynı işi tekrar yazma, kodunu bölerek düzenli çalış” yaklaşımını benimsetir. Bu sayede hem esnek hem de sürdürülebilir projeler geliştirilebilir.
Django’nun en büyük avantajlarından biri, birçok önemli özelliği hazır olarak sunmasıdır. Yani ekstra yapılandırmaya gerek kalmadan temel ihtiyaçlar için kullanıma hazır bileşenler gelir.
Django varsayılan olarak şunları sağlar:
URL yönlendirme sistemi: Hangi sayfanın hangi adrese karşılık geldiğini kolayca tanımlayabilirsiniz.
Veritabanı arayüzü (ORM): Veritabanı işlemlerini Python kodlarıyla kolayca gerçekleştirebilirsiniz.
Admin paneli: Projeniz için otomatik bir yönetim arayüzü oluşturur.
Kimlik doğrulama: Kullanıcı kaydı, giriş-çıkış ve yetkilendirme işlemleri yerleşik olarak gelir.
Güvenlik önlemleri: CSRF, XSS ve SQL Injection gibi yaygın saldırılara karşı koruma sağlar.
Bu özellikler sayesinde Django proje geliştirme sürecini büyük ölçüde hızlandırır.
Django’nun Mimarisi: MVT Modeli
Django web uygulamalarını düzenli ve sürdürülebilir şekilde geliştirmek için MVT (Model-View-Template) adlı bir mimari yapı kullanır. Bu yapı üç ana parçadan oluşur:
Model: Veritabanındaki verilerin yapısını tanımlar. Hangi bilgiler saklanacaksa burada belirlenir.
View: Kullanıcıdan gelen isteklere nasıl cevap verileceğini belirler. Veriyi işler ve uygun şekilde hazırlar.
Template: Hazırlanan veriyi kullanıcıya sunan HTML tabanlı arayüzleri oluşturur.
Bu ayrım hem kodun okunabilirliğini artırır hem de frontend ve backend tarafında çalışan ekiplerin birbirinden bağımsız ilerlemesini kolaylaştırır.
Neden Django?
Python ile geliştirilen uygulamalarda Django’nun tercih edilme nedenlerini birkaç başlıkta toparlayabiliriz:
Avantaj
| Açıklama
|
|---|---|
Hızlı Başlangıç | Temel özelliklere sahip bir uygulamayı çok kısa sürede geliştirip test etme. |
Güvenlik | Geliştiricileri yaygın güvenlik açıklarına karşı varsayılan olarak koruma. |
Yönetim Paneli | Otomatik oluşan admin arayüzü sayesinde kolayca veri girişi. |
Topluluk ve Kaynak | Belgeler ve destekleyici araçlar açısından zenginlik. |
Temiz ve Okunabilir Kod | Python’un yalın sözdizimi sayesinde öğrenme ve geliştirmede kolaylık. |
Django Kurulumu: Adım Adım
Kurulum süreci tüm işletim sistemlerinde benzerdir. Python’un 3.8 veya üzeri sürümünün yüklü olduğunu varsayıyoruz.
1. Sanal Ortam Oluşturma
Her Django projesi izole bir ortamda çalışmalıdır. Bu, paket çakışmalarını önler ve projelerin bağımsız kalmasını sağlar. Sanal ortam oluşturmak için:
pip install virtualenvProje klasörünü oluşturup içine geçin:
mkdir django-projem cd django-projemSanal ortamı oluşturun:
python -m venv venvSanal ortamı etkinleştirin:
Windows:
venv\Scripts\activate Mac/Linux:
source venv/bin/activate2. Django’yu Kurmak
Sanal ortam aktifken Django'yu pip ile yükleyin:
pip install django
Kurulumu doğrulamak için Django sürümünü kontrol edin:
django-admin --version
3. Django Projesi Oluşturma
Kurulum tamamlandıktan sonra artık ilk Django projenizi başlatabilirsiniz. Bunun için aşağıdaki komutu kullanın:
django-admin startproject config .
Bu komutun yaptığı işlemi daha iyi anlamak için adım adım açıklayalım:
config/adında bir ana yapı klasörü oluşturulur.İçine Django’nun çalışması için gereken temel ayar dosyaları yerleştirilir.
Aynı dizinde ayrıca
manage.pyadında bir dosya oluşur. Bu dosya sayesinde proje ile ilgili komutları terminalden yönetebilirsiniz (sunucu başlatmak, veritabanı işlemleri, uygulama oluşturmak vs.).
Oluşan klasör yapısı:
manage.py
config/
├── __init__.py
├── settings.py
├── urls.py
├── asgi.py
└── wsgi.py
manage.py: Projeyi terminal üzerinden yönetmek için kullanılan komut dosyasıdır.
config/: Projeye ait ayarların ve yönlendirmelerin bulunduğu ana klasördür.
__init__.py: Python’a bu klasörün bir Python paketi olduğunu belirtir.
settings.py: Projenin tüm yapılandırma ayarlarını (veritabanı, uygulamalar, dil vs.) içerir.
urls.py: Gelen isteklerin hangi sayfaya yönlendirileceğini tanımlar.
asgi.py: Django’nun modern sunucu arayüzü üzerinden çalışmasını sağlar (örneğin WebSocket).
wsgi.py: Django’nun klasik sunucu arayüzüyle (örneğin Gunicorn) çalışmasını sağlar.
4. Veritabanını Başlatma (migrate)
Django bazı yerleşik uygulamalarla birlikte gelir (kullanıcı yönetimi, admin paneli vb.). Bunlara ait tabloları oluşturmak için:
python manage.py migrate
5. Admin Kullanıcısı Oluşturma
Admin paneline erişim için bir süper kullanıcı tanımlamanız gerekir:
python manage.py createsuperuser
Komut sonrası kullanıcı adı, e-posta ve şifre bilgilerini girerek admin hesabınızı oluşturabilirsiniz.
6. Geliştirme Sunucusunu Başlatma
Projeyi çalıştırmak için:
python manage.py runserver
Tarayıcınızda http://127.0.0.1:8000 adresine giderek Django'nun hoş geldiniz ekranını görebilirsiniz.
Admin paneli için: http://127.0.0.1:8000/admin/
Sonuç
Django web uygulamaları geliştirmeyi hem kolay hem de güvenli hale getiren güçlü bir çatıdır. Python ile yazıldığı için okunması ve öğrenilmesi rahattır. İçinde hazır gelen özellikler sayesinde kullanıcı yönetimi, veritabanı işlemleri, admin paneli gibi temel ihtiyaçlar için ekstra çaba harcamanıza gerek kalmaz. Hem küçük projelerde hızlıca sonuç almak hem de daha büyük sistemleri sağlam temellerle inşa etmek için Django oldukça uygun bir tercihtir.
Kaynakça
Django Resmi Sitesi Getting started | Django documentation
Django Introduction Django introduction - Learn web development | MDN
