Εκμάθηση Django για αρχάριους: Χαρακτηριστικά, Archiδομή & Ιστορία

Σύνοψη φροντιστηρίου Django

Αυτό το σεμινάριο του Django καλύπτει όλα τα βασικά θέματα από την αρχή. Σε αυτό το σεμινάριο, θα μάθετε τις έννοιες όπως τι είναι το Django, η ιστορία του Django, τα χαρακτηριστικά του Django, τα χαρακτηριστικά του πλαισίου του Django, το στοιχείο του Django, τα πλεονεκτήματα και τα μειονεκτήματα και πολλά άλλα.
Πριν μάθουμε το Django, ας καταλάβουμε:

Τι είναι ένα Web Framework;

Ένα πλαίσιο Ιστού είναι μια βιβλιοθήκη κώδικα που σας βοηθά να δημιουργήσετε μια ευέλικτη, επεκτάσιμη και διατηρήσιμη. δυναμικός ιστότοπος, εφαρμογή ιστού και υπηρεσίες ιστού. Διαφορετικά πλαίσια ιστού είναι Zend για PHP, Ruby on Rails για τη Ruby κ.λπ.

Τι είναι το Django;

Django είναι ένα πλαίσιο ανάπτυξης ιστού για Python που προσφέρει τυπικές μεθόδους για γρήγορη και αποτελεσματική ανάπτυξη ιστοσελίδων. Ο πρωταρχικός στόχος αυτού του πλαισίου ιστού υψηλού επιπέδου είναι η δημιουργία πολύπλοκων ιστότοπων που βασίζονται σε βάσεις δεδομένων. Σας βοηθά να δημιουργήσετε και να διατηρήσετε ποιοτικές εφαρμογές web. Σας δίνει τη δυνατότητα να κάνετε τη διαδικασία ανάπτυξης ομαλή και εξοικονομώντας χρόνο για γρήγορη ανάπτυξη.

Γιατί Django; Βασικά πλεονεκτήματα του Django

Εδώ είναι τα κύρια πλεονεκτήματα του Django:

  • Το Django είναι εύκολο στη ρύθμιση και την εκτέλεση. Προσφέρει μια ποικιλία επιλογών για να ξεκινήσετε
  • Παρέχει μια έτοιμη προς χρήση διεπαφή χρήστη για διαχειριστικές δραστηριότητες
  • Επιτρέπει πολύγλωσσους ιστότοπους χρησιμοποιώντας το ενσωματωμένο σύστημα διεθνοποίησης
  • Σας βοηθά να ανταποκριθείτε γρήγορα στις τεράστιες απαιτήσεις κυκλοφορίας
  • Το Django χρησιμοποιείται για την κατασκευή όλων των τύπων συστημάτων διαχείρισης περιεχομένου, κοινωνικών δικτύων καθώς και επιστημονικών υπολογιστικών πλατφορμών.
  • Το Django σάς βοηθά να παρέχετε δοκιμές εφαρμογών από άκρο σε άκρο
  • Σας βοηθά να τεκμηριώσετε το API σας με έξοδο HTML
  • Το REST Framework έχει πλούσια υποστήριξη για πολλά πρωτόκολλα ελέγχου ταυτότητας
  • Πολιτικές αδειών και στραγγαλισμού
  • Χρησιμοποιείται ευρέως για αιτήματα API περιορισμού ρυθμού από έναν μόνο χρήστη.

Ιστορία του Django

Έτος Milestone
2003 Το έργο ξεκίνησε από τους Adian Holovaty και Simon Willison ως εσωτερικό έργο στην εφημερίδα Lawrence Journal-World
Ιούλιος 2005 Κυκλοφόρησε τον Ιούλιο του 2005 ως «Django», που πήρε το όνομά του από τον κιθαρίστα της τζαζ Django Reinhard.
Ιούνιος 2008 Δήλωσε ότι είναι ένα λογισμικό Django Foundation (DSF) θα διατηρούσε το Django.
29 2009 Ιουλίου Η έκδοση Django 1.1 κυκλοφόρησε με χαρακτηριστικά όπως Aggregates, δοκιμές βάσει συναλλαγών.
17 2010 Μαΐου Κυκλοφόρησε η έκδοση Django 1.2. Η ενημερωμένη έκδοση προσφέρει λειτουργίες όπως πολλαπλές βάσεις δεδομένων, εφαρμογή backend email και βελτιώσεις για περιόδους σύνδεσης και cookie γίνονται σε αυτήν την έκδοση.
Μαρτίου 23 2011 Έκδοση 1.3 με χαρακτηριστικά όπως προβολές βάσει κλάσεων, στατικά αρχεία εισήχθησαν
Μαρτίου 23 2012 Κυκλοφόρησε η έκδοση 1.4 με νέες δυνατότητες όπως ζώνες ώρας και δοκιμές στο πρόγραμμα περιήγησης
Φεβρουάριος 26 2013 Η έκδοση 1.5 συνοδεύεται από Python 3 Υποστήριξη, διαμορφώσιμες δυνατότητες μοντέλου χρήστη.
Νοέμβριος 6 2013 Η έκδοση 1.6 συνοδεύεται από διαχείριση συναλλαγών DB, δυνατότητες συγκέντρωσης συνδέσεων.
2 2014 Σεπτέμβριο Η έκδοση 1.7 είχε νέες δυνατότητες όπως φόρτωση εφαρμογής, μετεγκατάσταση και διαμόρφωση
1 2015 Απρίλιο Παρέχεται εγγενής υποστήριξη για πολλαπλούς κινητήρες προτύπων.
1 Δεκέμβριος 2015 Στην έκδοση 1.9, εισήχθη η δυνατότητα αυτόματης επικύρωσης κωδικού πρόσβασης.
Αύγουστος 1 2016 Στην έκδοση 1.10 αναζήτηση πλήρους κειμένου για PostgreSQL ξεκίνησε.
4 2017 Απρίλιο Η έκδοση 1.11 γίνεται η τελευταία έκδοση που υποστηρίζεται Python 2.7
2 Δεκέμβριος 2017 Η έκδοση 2.0 γίνεται η πρώτη έκδοση python 3 - μόνο έκδοση.
Αύγουστος 1 2018 Η έκδοση 2.1 συνοδεύεται από τη δυνατότητα υποστήριξης άδειας "προβολή" μοντέλου.
2021 Καταργήθηκε η υποστήριξη για το Django 3.0 και προστέθηκε υποστήριξη για το Django 3.2

Τώρα σε αυτό το σεμινάριο Django για αρχάριους, ας μάθουμε για τα χαρακτηριστικά του Django.

Χαρακτηριστικά του Django

Παρακάτω είναι τα χαρακτηριστικά του Django:

  • Σας βοηθά να ορίσετε μοτίβα για τις διευθύνσεις URL στην εφαρμογή σας
  • Απλό αλλά ισχυρό σύστημα URL
  • Ενσωματωμένο σύστημα ελέγχου ταυτότητας
  • Αντικειμενοστραφής βάση δεδομένων γλωσσών προγραμματισμού που προσφέρει τα καλύτερα στην αποθήκευση και ανάκτηση δεδομένων της τάξης
  • Η λειτουργία αυτόματης διεπαφής διαχειριστή επιτρέπει τη λειτουργικότητα της προσθήκης, επεξεργασίας και διαγραφής στοιχείων. Μπορείτε να προσαρμόσετε τον πίνακα διαχείρισης σύμφωνα με τις ανάγκες σας.
  • Το πλαίσιο κρυφής μνήμης συνοδεύεται από πολλαπλούς μηχανισμούς κρυφής μνήμης.

Τώρα σε αυτό το σεμινάριο πλαίσιο Django, θα μάθουμε για τα χαρακτηριστικά του Django.

Χαρακτηριστικά του Django

Εδώ είναι τα κύρια χαρακτηριστικά του Django:

  • Loosely Coupled- Το Django σας βοηθά να κάνετε κάθε στοιχείο της στοίβας του ανεξάρτητο από τα άλλα.
  • Less κώδικας- Εξασφαλίζει αποτελεσματική ανάπτυξη
  • Δεν επαναλαμβάνεται- Τα πάντα πρέπει να αναπτύσσονται ακριβώς σε ένα μέρος αντί να επαναλαμβάνονται ξανά
  • Γρήγορη ανάπτυξη - Η Django's προσφέρει γρήγορη και αξιόπιστη ανάπτυξη εφαρμογών.
  • Συνεπής σχεδιασμός - Η Django διατηρεί καθαρό σχεδιασμό και διευκολύνει την παρακολούθηση των βέλτιστων πρακτικών ανάπτυξης ιστού.

Στη συνέχεια, σε αυτό το σεμινάριο για αρχάριους του Django, θα μάθουμε για την αρχιτεκτονική του Django.

Django Architecture: MVC και MVT

Παρακάτω είναι μια λεπτομερής αρχιτεκτονική του Django:

Django Archiδομή
Django Archiδομή

Μοτίβο MVC

Όταν μιλάμε για εφαρμογές που παρέχουν UI (web ή desktop), συνήθως μιλάμε για αρχιτεκτονική MVC. Το μοτίβο MVC βασίζεται σε Μοντέλο, Προβολή και Ελεγκτή.

The Μοντέλο ορίζει τη δομή των δεδομένων και φροντίζει για την υποβολή ερωτημάτων στη βάση δεδομένων.

The Προβολή ορίζει ποια δεδομένα πρέπει να παρουσιάζονται και επιστρέφει μια απόκριση HTTP.

The ελεγκτής είναι εκείνο το τμήμα της εφαρμογής που χειρίζεται την αλληλεπίδραση με τον χρήστη.

Μοτίβο Django MVC-MVT

Το Model-View-Template (MVT) είναι μια διαφορετική έννοια σε σύγκριση με το MVC. Η κύρια διαφορά μεταξύ αυτών των δύο αρχιτεκτονικών προτύπων είναι ότι το ίδιο το Django διαχειρίζεται το τμήμα Controller (κώδικας λογισμικού που ελέγχει τις αλληλεπιδράσεις μεταξύ του μοντέλου και της προβολής). Το πρότυπο είναι ένα αρχείο HTML που αναμειγνύεται με το αρχείο γλώσσας προτύπων Django που ονομάζεται επίσης DTL.

Το παρακάτω διάγραμμα δείχνει πώς όλα τα στοιχεία του μοτίβου MVT αλληλεπιδρούν μεταξύ τους για να εξυπηρετήσουν συγκεκριμένα ένα αίτημα χρήστη.

Django Architecture: MVC και MVT

MVT Archiδομή

Όπως φαίνεται στο παραπάνω διάγραμμα, ένας χρήστης ζητά έναν πόρο στο Django. Το Django λειτουργεί ως ελεγκτής και ελέγχει τον διαθέσιμο πόρο στη διεύθυνση URL.

Εάν αντιστοιχιστεί το URL, καλείται μια προβολή που αλληλεπιδρά με το μοντέλο και το πρότυπο. Στη συνέχεια, το Django απαντά στον χρήστη και στέλνει ένα πρότυπο ως απάντηση.

Τώρα σε αυτήν τη σειρά εκμάθησης Django για αρχάριους, θα μάθουμε για τα στοιχεία του Django.

Συστατικά του Django

Μορφή

Το Django διαθέτει μια ισχυρή βιβλιοθήκη φορμών που χειρίζεται την απόδοση των φορμών ως HTML. Η βιβλιοθήκη βοηθά στην επικύρωση των δεδομένων που υποβάλλονται και στη μετατροπή τους σε Python τύπους.

Πιστοποίηση

Διαχειρίζεται λογαριασμούς χρηστών, ομάδες, συνεδρίες χρηστών που βασίζονται σε cookie κ.λπ.

διαχειριστής

Διαβάζει μεταδεδομένα στα μοντέλα σας για να παρέχει μια ισχυρή διεπαφή που μπορεί να χρησιμοποιηθεί για τη διαχείριση περιεχομένου στον ιστότοπό σας.

Διεθνοποίηση

Το Django παρέχει υποστήριξη για μετάφραση κειμένου σε διάφορες γλώσσες, μορφοποίηση ημερομηνιών, ωρών, αριθμών και ζωνών ώρας για συγκεκριμένες τοπικές ρυθμίσεις.

Ασφάλεια

Το Django παρέχει προστασία από τις ακόλουθες επιθέσεις:

  • Παραχάραξη αιτημάτων μεταξύ τοποθεσιών (CSRF)
  • Σεναριοποίηση μεταξύ ιστοτόπων
  • SQL injection
  • Clickjacking
  • Απομακρυσμένη εκτέλεση κώδικα

Διάσημες εταιρείες που χρησιμοποιούν το Django

Εδώ είναι οι εταιρείες που χρησιμοποιούν το Django:

  • BitBucket
  • Disqus
  • NASA
  • PBS (Public Broadcasting Service)
  • Pinterest
  • Instagram
  • Mozilla
  • Η εφημερίδα Washington Post
  • NY Times
  • LA Times
  • The Guardian National Geographic
  • Discovery Channel

Μειονεκτήματα της χρήσης του Django

  • Μια διαδικασία δεν μπορεί να χειριστεί πολλά αιτήματα ταυτόχρονα.
  • Το Django είναι ένα πολύ μονολιθικό εργαλείο.
  • Τα στοιχεία αναπτύσσονται μαζί, γεγονός που μπορεί να δημιουργήσει σύγχυση.
  • Γνώση πλήρους συστήματος που απαιτείται για την εργασία στο Django
  • Κάνει τα στοιχεία εφαρμογών web να συνδέονται στενά
  • Πρέπει να κάνετε μακρύ προγραμματισμό για μικρές εργασίες.

Σύνοψη

  • Το Django είναι ένα πλαίσιο ανάπτυξης ιστού για Python που προσφέρει μια τυπική μέθοδο για γρήγορη και αποτελεσματική ανάπτυξη ιστοσελίδων.
  • Το Django ξεκίνησε από τους Adian Holovaty και Simon Willison ως εσωτερικό έργο στην εφημερίδα Lawrence Journal-World το 2003
  • Το Django σάς βοηθά να τεκμηριώσετε το API σας με έξοδο HTML.
  • Το Django σάς επιτρέπει να προσαρμόσετε τον πίνακα διαχείρισης σύμφωνα με τις ανάγκες σας.
  • Το Django σας βοηθά να κάνετε κάθε στοιχείο της στοίβας του ανεξάρτητο από τα άλλα.
  • Η κύρια διαφορά μεταξύ των αρχιτεκτονικών προτύπων MVC και MVT είναι ότι ο ίδιος ο Django διαχειρίζεται το τμήμα Controller.
  • Βασικά στοιχεία της αρχιτεκτονικής του Django είναι: Φόρμα, Έλεγχος ταυτότητας, Διαχειριστής, Διεθνοποίηση, Ασφάλεια.
  • Τα Bitbucket, DISQUS, Nasa, Pinterest, Instagram, Mozilla κ.λπ. χρησιμοποιούν το Django
  • Το μεγαλύτερο μειονέκτημα του Django είναι ότι δεν μπορεί να χειριστεί πολλά αιτήματα ταυτόχρονα.