הדרכת ג'אנגו למתחילים

לפני שנלמד ג'נגו, בואו להבין:

מהי מסגרת אינטרנט?

מסגרת אינטרנט היא ספריית קוד שעוזרת לך לבנות גמישה, ניתנת להרחבה ולתחזוקה; אתר דינאמי, אפליקציית אינטרנט ושירותי אינטרנט. מסגרות אינטרנט שונות הן Zend עבור PHP, Ruby on Rails for Ruby וכו '.

מהו ג'אנגו?

ג'אנגו היא מסגרת לפיתוח אתרים עבור Python המציעה שיטות סטנדרטיות לפיתוח אתרים מהיר ויעיל. המטרה העיקרית של מסגרת אינטרנט ברמה גבוהה זו היא יצירת אתרים מורכבים המבוססים על מסדי נתונים. זה עוזר לך לבנות ולתחזק יישומי אינטרנט איכותיים. הוא מאפשר לך להפוך את תהליך הפיתוח לחלק וחוסך זמן לפיתוח מהיר.

במדריך זה של פייתון ג'אנגו למתחילים, תלמד

למה ג'אנגו? יתרונות המפתח של ג'אנגו

להלן היתרונות העיקריים של ג'אנגו:

  • קל להגדיר ולהפעיל את ג'אנגו. הוא מציע מגוון אפשרויות להתחיל
  • הוא מספק ממשק משתמש מוכן לשימוש לפעילויות ניהול
  • היא מאפשרת אתרים רב לשוניים באמצעות מערכת הבינלאומיות המובנית שלה
  • עוזר לך לעמוד בדרישות התנועה המסיביות במהירות
  • Django משמש לבניית כל סוגי מערכות ניהול התוכן, רשתות חברתיות וכן פלטפורמות מחשוב מדעיות.
  • Django עוזר לך לספק בדיקות יישומים מקצה לקצה
  • עוזר לך לתעד את ה- API שלך עם פלט HTML
  • ל- REST Framework יש תמיכה עשירה במספר פרוטוקולי אימות
  • הרשאות ומדיניות חנק
  • הוא נמצא בשימוש נרחב להגבלת בקשות API ממשתמש יחיד.

ההיסטוריה של ג'אנגו

  • הפרויקט התחיל על ידי עדיאן הולובטי וסיימון וויליסון כפרויקט פנימי בעיתון לורנס ג'ורנל-וורלד בשנת 2003
  • הוא יצא ביולי 2005 בשם 'ג'אנגו', על שם גיטריסט הג'אז ג'אנגו ריינהרד
  • ביוני 2008, הוכרז כי קרן תוכנת ג'אנגו (DSF) תחזק את ג'אנגו.
  • גרסת Django 1.1 שוחררה ב -29 ביולי 2009, עם תכונות כמו אגרגטים, בדיקות מבוססות עסקאות.
  • גרסת Django 1.2 שוחררה ב -17 במאי, 2010. העדכון הציע תכונות כמו מסדי נתונים מרובים, יישום של backend דוא'ל ושיפורים עבור הפעלות וקוקי מבוצעים בגרסה זו.
  • ב- 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 הופכת לגרסת המהדורה הראשונה של פייתון 3 בלבד.
  • ביום 1 באוגוסט 2018, גרסה 2.1 מגיעה עם תכונת תמיכה בדרישות 'תצוגה' של דגם.

עכשיו במדריך זה של ג'אנגו למתחילים, בואו ללמוד על התכונות של ג'אנגו.

תכונות של ג'אנגו

להלן התכונות של ג'אנגו:

  • עוזר לך להגדיר תבניות עבור כתובות האתרים ביישום שלך
  • מערכת כתובת URL פשוטה אך עוצמתית
  • מערכת אימות מובנית
  • מסד נתונים של שפת תכנות מונחה אובייקטים המציע אחסון ושליפת נתונים מהטובים ביותר
  • תכונת ממשק מנהל אוטומטי מאפשרת פונקציונליות של הוספה, עריכה ומחיקה של פריטים. אתה יכול להתאים אישית את לוח הניהול לפי הצורך שלך.
  • מסגרת המטמון מגיעה עם מספר מנגנוני מטמון.

כעת בהדרכת מסגרת זו של ג'אנגו נלמד על המאפיינים של ג'אנגו.

מאפייני ג'אנגו

להלן המאפיינים העיקריים של ג'אנגו:

  • בשילוב רופף- ג'אנגו עוזר לך להפוך כל אלמנט מהערימה שלו ללא תלוי באחרים.
  • פחות קוד- מבטיח פיתוח אפקטיבי
  • לא חוזר על עצמו- צריך לפתח הכל במקום אחד במקום לחזור על זה שוב
  • פיתוח מהיר- Django's מציעה פיתוח אפליקציות מהיר ואמין.
  • עיצוב עקבי- ג'אנגו שומר על עיצוב נקי ומקל על ביצוע שיטות פיתוח האינטרנט הטובות ביותר.

הבא במדריך זה למתחילים בג'אנגו, נלמד על הארכיטקטורה של ג'אנגו.

אדריכלות ג'אנגו: MVC ו- MVT

להלן ארכיטקטורה מפורטת של ג'אנגו:

אדריכלות ג'אנגו

תבנית MVC:

כשמדברים על יישומים המספקים ממשק משתמש (אינטרנט או שולחן עבודה), בדרך כלל אנו מדברים על ארכיטקטורת MVC. תבנית MVC מבוססת על דגם, תצוגה ובקר.

ה דֶגֶם מגדיר את מבנה הנתונים ומטפל בשאילת הנתונים של מסד הנתונים.

ה נוף מגדיר אילו נתונים יש להציג ומחזיר תגובת HTTP.

ה בקר הוא אותו חלק ביישום המטפל באינטראקציה של משתמשים.

דפוס ג'אנגו MVC-MVT

תבנית ה- Model-View-MVT (MVT) היא מושג שונה בהשוואה ל- MVC. ההבדל העיקרי בין שני הדפוסים האדריכליים הללו הוא שג'אנגו עצמו מנהל את חלק הבקר (קוד תוכנה השולט על האינטראקציות בין המודל לתצוגה). התבנית היא קובץ HTML אשר מעורבב עם קובץ Django Template Language המכונה גם DTL.

התרשים להלן מראה כיצד כל מרכיבי תבנית ה- MVT מתקשרים זה עם זה כדי לשרת ספציפית לבקשת משתמש.

אדריכלות MVT



google .com/accounts/recovery/

כפי שניתן לראות בתרשים לעיל, משתמש מבקש משאב לג'אנגו. ג'אנגו פועל כבקר ובודק את המשאב הזמין בכתובת URL.

אם מפות כתובות אתרים, נקראת תצוגה המתקיימת אינטראקציה עם דגם ותבנית. ג'נגו מגיב למשתמש ושולח תבנית כתגובה.

כעת בסדרת הדרכות ג'אנגו זו למתחילים, נלמד על רכיבי ג'אנגו.

רכיבי ג'אנגו

טופס:

לג'אנגו יש ספריית טפסים עוצמתית המטפלת בעיבוד טפסים כ- HTML. הספרייה מסייעת באימות הנתונים שנשלחו והמרתם לסוגי פייתון.

אימות:

הוא מטפל בחשבונות משתמשים, קבוצות, הפעלות משתמשים מבוססות עוגיות וכו '.

מנהל מערכת:

הוא קורא מטא נתונים במודלים שלך כדי לספק ממשק חזק שניתן להשתמש בו לניהול תוכן באתר שלך.

בִּנאוּם:

Django מספק תמיכה בתרגום טקסט לשפות שונות, עיצוב ספציפי לאזור של תאריכים, שעות, מספרים ואזורי זמן.

בִּטָחוֹן:

ג'אנגו מספק הגנה מפני ההתקפות הבאות:

  • זיוף בקשות בין אתרים (CSRF)
  • סקריפטים בין אתרים
  • הזרקת SQL
  • קליקים
  • ביצוע קוד מרחוק

חברות מפורסמות המשתמשות בג'אנגו

להלן חברות המשתמשות בג'אנגו:

  • BitBucket
  • DISQUS
  • נאס'א
  • PBS (שירות השידור הציבורי)
  • פינטרסט
  • אינסטגרם
  • מוזילה
  • הוושינגטון פוסט
  • ניו יורק טיימס
  • LA Times
  • הגרדיאן נשיונל ג'יאוגרפיק
  • ערוץ דיסקברי

חסרונות בשימוש בג'אנגו

  • תהליך אינו יכול להתמודד עם מספר בקשות במקביל.
  • ג'אנגו הוא כלי מונוליטי מאוד.
  • רכיבים נפרסים יחד שיכולים ליצור בלבול.
  • נדרש ידע במערכת מלאה לעבודה על ג'אנגו
  • יוצר רכיבים של יישומי אינטרנט בצמדים הדוקים
  • עליך לבצע תכנות ממושך למשימות קטנות.

סיכום

  • Django היא מסגרת לפיתוח אתרים עבור פִּיתוֹן המציעה שיטה סטנדרטית לפיתוח אתרים מהיר ויעיל.
  • ג'אנגו התחיל על ידי עדיאן הולובטי וסיימון וויליסון כפרויקט פנימי בעיתון לורנס ג'ורנל-וורלד בשנת 2003
  • Django עוזר לך לתעד את ה- API שלך עם פלט HTML.
  • Django מאפשר לך להתאים אישית את לוח הניהול לפי הצורך שלך.
  • Django עוזר לך להפוך כל אלמנט של הערימה שלו ללא תלוי באחרים.
  • ההבדל העיקרי בין דפוסי אדריכלות MVC ו- MVT הוא שג'אנגו עצמו מנהל את חלק הבקר.
  • מרכיבים חיוניים בארכיטקטורה של ג'אנגו הם: טופס, אימות, מנהל, בינלאומי, אבטחה.
  • Bitbucket, DISQUS, Nasa, Pinterest, Instagram, Mozilla וכו 'משתמשים ב- Django
  • החיסרון הגדול ביותר של ג'אנגו הוא שהוא אינו יכול להתמודד עם מספר בקשות במקביל.