Yeni Başlayanlar İçin Django Eğitimi: Özellikler, ArchiDoku ve Tarih
Django Eğitim Özeti
Bu Django eğitimi tüm temel konuları sıfırdan kapsar. Bu eğitimde Django nedir, Django geçmişi, Django özellikleri, Django çerçevesinin özellikleri, Django Bileşeni, Avantajları ve dezavantajları ve çok daha fazlası gibi kavramları öğreneceksiniz.
Django'yu öğrenmeden önce şunu anlayalım:
Web Çerçevesi nedir?
Web çerçevesi esnek, ölçeklenebilir ve bakımı kolay bir yapı oluşturmanıza yardımcı olan bir kod kitaplığıdır; dinamik web sitesi, web uygulaması ve web hizmetleri. Farklı web çerçeveleri PHP için Zend'dir, raylar üzerinde yakut Ruby vb. için
Django nedir?
Django için bir web geliştirme çerçevesidir Python hızlı ve etkili web sitesi geliştirme için standart yöntemler sunar. Bu üst düzey web çerçevesinin temel amacı karmaşık veritabanı odaklı web siteleri oluşturmaktır. Kaliteli web uygulamaları oluşturmanıza ve sürdürmenize yardımcı olur. Hızlı geliştirme için geliştirme sürecini sorunsuz ve zamandan tasarruf sağlayan hale getirmenizi sağlar.
Neden Django? Django'nun Temel Avantajları
Django'nun başlıca avantajları şunlardır:
- Django'nun kurulumu ve çalıştırılması kolaydır. Başlamak için çeşitli seçenekler sunar
- Yönetim faaliyetleri için kullanıma hazır bir kullanıcı arayüzü sağlar
- Yerleşik uluslararasılaştırma sistemini kullanarak çok dilli web sitelerine olanak tanır
- Yoğun trafik taleplerini hızlı bir şekilde karşılamanıza yardımcı olur
- Django, her türlü içerik yönetim sistemini, sosyal ağları ve bilimsel bilgi işlem platformlarını oluşturmak için kullanılır.
- Django uçtan uca uygulama testi sağlamanıza yardımcı olur
- API'nizi bir HTML çıktısıyla belgelemenize yardımcı olur
- REST Framework çeşitli kimlik doğrulama protokolleri için zengin desteğe sahiptir
- İzinler ve kısıtlama politikaları
- Tek bir kullanıcıdan gelen hız sınırlayıcı API istekleri için yaygın olarak kullanılır.
Django'nun Tarihi
Yıl | Dönüm noktası |
---|---|
2003 | Proje, Adian Holovaty ve Simon Willison tarafından Lawrence Journal-World gazetesinde dahili bir proje olarak başlatıldı. |
Temmuz 2005 | Temmuz 2005'te caz gitaristi Django Reinhard'ın adını taşıyan "Django" adıyla piyasaya sürüldü. |
Haziran 2008 | Bir Django Yazılımı olduğunu beyan etti Foundation (DSF) Django'yu koruyacaktı. |
29 Temmuz 2009 | Django 1.1 sürümü, Toplamalar, işlem tabanlı testler gibi özelliklerle piyasaya sürüldü. |
17 Mayıs 2010 | Django 1.2 sürümü yayınlandı. Güncellemede çoklu veritabanları, e-posta arka ucunun uygulanması ve oturumlar ve çerezler için iyileştirmeler gibi özellikler sunuldu. |
Mart 23 2011 | Sınıf tabanlı görünümler, statik dosyalar gibi özelliklere sahip 1.3 sürümü tanıtıldı |
Mart 23 2012 | 1.4 sürümü, saat dilimleri ve tarayıcı içi testler gibi yeni özelliklerle piyasaya sürüldü |
Şubat 26 2013 | 1.5 sürümü ile birlikte geliyor Python 3 Destek, yapılandırılabilir kullanıcı modeli özellikleri. |
Kasım 6 2013 | 1.6 sürümünde DB işlem yönetimi, bağlantı havuzu özellikleri yer alıyor. |
2 Eylül 2014 | 1.7 sürümünde uygulama yükleme, geçişler ve yapılandırma gibi yeni özellikler bulunuyordu |
Nisan 1 2015 | Birden fazla şablon motoru için yerel destek sağlandı. |
1 Aralık 2015 | 1.9 sürümünde otomatik şifre doğrulama özelliği getirildi. |
Ağustos 1 2016 | 1.10 sürümünde tam metin araması PostgreSQL başlattı. |
Nisan 4 2017 | 1.11 sürümü desteklenen son sürüm oldu Python 2.7 |
2 Aralık 2017 | sürüm 2.0, ilk Python 3'e özel yayın sürümü olur. |
Ağustos 1 2018 | sürüm 2.1, Model “görüntüleme” izni desteği özelliğiyle birlikte gelir. |
2021 | Django 3.0 desteği kaldırıldı ve Django 3.2 desteği eklendi |
Şimdi yeni başlayanlara yönelik bu Django eğitiminde, Django'nun özelliklerini öğrenelim.
Django'nun Özellikleri
Django'nun özellikleri aşağıdadır:
- Uygulamanızdaki URL'lere ilişkin kalıpları tanımlamanıza yardımcı olur
- Basit ama güçlü URL sistemi
- Dahili kimlik doğrulama sistemi
- Sınıfının en iyisi veri depolama ve alma olanağı sunan nesne yönelimli programlama dili veritabanı
- Otomatik yönetici arayüzü özelliği, öğe ekleme, düzenleme ve silme işlevselliğine olanak tanır. Admin panelini ihtiyacınıza göre özelleştirebilirsiniz.
- Önbellek çerçevesi birden fazla önbellek mekanizmasıyla birlikte gelir.
Şimdi bu Django çerçeve eğitiminde Django'nun özelliklerini öğreneceğiz.
Django'nun Özellikleri
Django'nun temel özellikleri şunlardır:
- Gevşek Bağlantılı - Django, yığınındaki her öğeyi diğerlerinden bağımsız hale getirmenize yardımcı olur.
- Less kod- Etkin gelişimi sağlar
- Tekrarlanmamalı - Her şey tekrarlanmak yerine tam olarak tek bir yerde geliştirilmelidir
- Hızlı geliştirme: Django hızlı ve güvenilir uygulama geliştirme olanağı sunar.
- Tutarlı tasarım - Django temiz bir tasarıma sahiptir ve en iyi web geliştirme uygulamalarını takip etmeyi kolaylaştırır.
Django başlangıç eğitimimizin devamında Django'nun mimarisini öğreneceğiz.
Django ArchiYapı: MVC ve MVT
Aşağıda Django'nun detaylı mimarisi gösterilmektedir:
MVC Kalıbı
UI (web veya masaüstü) sağlayan uygulamalardan bahsederken genellikle MVC mimarisinden bahsederiz. MVC deseni Model, View ve Controller'a dayanır.
The Model Veri yapısını tanımlar ve veritabanının sorgulanmasına özen gösterir.
The Görüntüle hangi verilerin sunulması gerektiğini tanımlar ve bir HTTP yanıtı döndürür.
The kontrolör uygulamanın kullanıcı etkileşimini yöneten kısmıdır.
Django MVC-MVT modeli
Model-Görünüm-Şablon (MVT), MVC ile karşılaştırıldığında farklı bir kavramdır. Bu iki mimari desen arasındaki temel fark, Django'nun Denetleyici kısmını (Model ve Görünüm arasındaki etkileşimleri kontrol eden yazılım kodu) kendisinin yönetmesidir. Şablon, DTL olarak da adlandırılan Django Şablon Dili dosyasıyla karıştırılmış bir HTML dosyasıdır.
Aşağıda verilen diyagram, MVT modelinin tüm bileşenlerinin, bir kullanıcı isteğine özel hizmet vermek için birbirleriyle nasıl etkileşime girdiğini gösterir.
Yukarıdaki şemada görüldüğü gibi, bir kullanıcı Django'ya kaynak talebinde bulunur. Django bir denetleyici görevi görür ve URL'deki mevcut kaynağı kontrol eder.
URL eşleniyorsa model ve şablonla etkileşime giren bir görünüm çağrılır. Django daha sonra kullanıcıya yanıt verir ve yanıt olarak bir şablon gönderir.
Şimdi yeni başlayanlara yönelik bu Django eğitimleri serisinde, Django'nun bileşenleri hakkında bilgi edineceğiz.
Django'nun Bileşenleri
form
Django, formları HTML olarak işlemeyi sağlayan güçlü bir form kitaplığına sahiptir. Kütüphane, gönderilen verilerin doğrulanmasına ve dönüştürülmesine yardımcı olur. Python türleri.
Doğrulama
Kullanıcı hesaplarını, grupları, çerez tabanlı kullanıcı oturumlarını vb. yönetir.
admin
Sitenizdeki içeriği yönetmek için kullanılabilecek sağlam bir arayüz sağlamak üzere modellerinizdeki meta verileri okur.
Uluslararasılaşma
Django, metinlerin çeşitli dillere çevrilmesi, tarihlerin, saatlerin, sayıların ve saat dilimlerinin yerel ayarlara özel biçimlendirilmesi için destek sağlar.
Güvenlik
Django aşağıdaki saldırılara karşı koruma sağlar:
- Siteler Arası İstek Sahteciliği (CSRF)
- Siteler arası komut dosyası oluşturma
- SQL enjeksiyonu
- Clickjacking
- Uzaktan kod yürütme
Django Kullanan Ünlü Şirketler
İşte Django kullanan şirketler:
- BitBucket
- Disqus
- NASA
- PBS (Kamu Yayın Hizmeti)
- mozilla
- Washington Post
- New York Times
- LA Times
- The Guardian National Geographic
- Discovery Channel
Django kullanmanın dezavantajları
- Bir işlem aynı anda birden fazla isteği işleyemez.
- Django oldukça yekpare bir araçtır.
- Bileşenlerin birlikte konuşlandırılması kafa karışıklığına neden olabilir.
- Django üzerinde çalışmak için gereken tüm sistem bilgisi
- Web uygulaması bileşenlerini sıkı bir şekilde birleştirir
- Küçük görevler için uzun programlamalar yapmanız gerekir.
ÖZET
- Django bir web geliştirme çerçevesidir. Python hızlı ve etkili web sitesi geliştirme için standart bir yöntem sunar.
- Django, Adian Holovaty ve Simon Willison tarafından 2003 yılında Lawrence Journal-World gazetesinde dahili bir proje olarak başlatıldı.
- Django, API'nizi bir HTML çıktısıyla belgelemenize yardımcı olur.
- Django, yönetici panelini ihtiyacınıza göre özelleştirmenize olanak tanır.
- Django, yığının her bir öğesini diğerlerinden bağımsız hale getirmenize yardımcı olur.
- MVC ve MVT mimari desenleri arasındaki temel fark, Controller kısmını Django'nun kendisinin yönetmesidir.
- Django mimarisinin temel bileşenleri şunlardır: Form, Kimlik Doğrulama, Yönetim, Uluslararasılaşma, Güvenlik.
- Bitbucket, DISQUS, Nasa, Pinterest, Instagram, Mozilla vb. Django'yu kullanıyor
- Django'nun en büyük dezavantajı, aynı anda birden fazla isteği karşılayamamasıdır.