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:

Django Archidoku
Django Archidoku

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.

Django ArchiYapı: MVC ve MVT

MVT Archidoku

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)
  • Pinterest
  • Instagram
  • 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.