avalanche

צילום מסך תוכנה:
avalanche
פרטי תוכנה:
גרסה: 0.3.0
טען תאריך: 14 Apr 15
רשיון: ללא תשלום
פופולריות: 1

Rating: nan/5 (Total Votes: 0)

מפולת היא מסגרת אינטרנט פייתון נבנתה על גבי webapp2 & nbsp;. היא משתמשת Jinja2 כמערכת תבנית ברירת מחדל ולא כוללת כל שכבת התמדה.
מטרות Avalanche (או למה אינטרנט במסגרת אחרת?)
מוקד עיצוב Avalanche על בחינות ושימוש חוזר.
כמובן Avalanche לא עושה ניסים. Testability ושימוש חוזר סופו של דבר תלוי בקוד היישום. אבל יש לי המסגרת תפקיד גדול על הגדרה בדרך הנכונה.
המטרות מוצגות להלן, בתקווה לאחר שקרא את העיצוב והדרכה זה יהיה ברור לך איך מטרות אלה הושגו.
Testability
Avalanche תוכנן באופן שהוא עושה את זה אפשרי (יותר קל לך) לכתוב יחידה-בדיקות טובות לקוד שלך. כי הוא לא עושה את זה קל לכתוב בדיקות היחידה. צריך יחידת מבחן:
- לתת הודעת שגיאה ברורה כאשר הוא נכשל
- ייכשל רק כאשר התכונה הנבדקת היא שבורה, לא על כל שינוי קוד
- להיות מהיר
Reusability
בעיקר בכל מסגרת טוענת כי שימוש חוזר הוא אחת מטרות העיצוב שלהם. כאן "שימוש חוזר" פירושו שימוש חוזר קוד המקור.
מסגרות רבות מספקות כמה מנגנונים לתת-יישומים לשימוש חוזר / plugable אולם זה לא תמיד קל לחזור ולהשתמש בקוד מקור יישומים אלה במקרה שאתה צריך להגדיר / לשנות אותה. יישומי Plugable הוא גם תכונה חשובה מאוד, אבל נכון לעכשיו Avalanche אין תמיכה לכך.
זה לא אמור להיות אפשרי רק לכתוב קוד לשימוש חוזר, הקוד צריך להיות לשימוש חוזר בפעם הראשונה שאתה כותב את זה. אתה לא צריך להיות מומלץ לכתוב את הקוד בדרך אחת, ולא במאוחר יצטרך לשנות את זה כדי להפוך אותו לשימוש חוזר. דהיינו היא מתנגדת לאמירה "השתמש בתצוגה (מטפל) פונקציות". ויותר מ... "אם אתה רוצה את השקפותיך להיות מחדש שמישה להמיר אותם לעמדות מעמדיות!".
פרטי פרויקט
- אתר אינטרנט / מסמכים
- זה הוא פרויקט קוד פתוח (רישיון MIT) נכתב בפייתון.
- הורד מPyPi
- ניהול פרויקט (מעקב באגים, בקשות תכונה וקוד מקור) על bitbucket.
- שאלות ומשוב על קבוצת google.
Avalanche עיצוב
אזהרה
מפולת היא על פיתוח (אלפא) בשלבים מוקדמים. API עשוי להשתנות בעתיד ואין כל ערובה שזה ימשיך תאימות.
מעבר MVC (Model-View-בקר)
MVC הוא דפוס אדריכלי תוכנה נוצר במטרה לבודד "היגיון תחום" מממשק המשתמש. הפרדה זו של דאגה מאפשרת יצירה של קוד יישום טוב יותר. דפוס זה היה מוצלח מאוד עבור מסגרות שולחן עבודה רבות וכן שימש כנקודת התייחסות ליצירתו של אינטרנט-מסגרות. הבעיה היא שאדריכלות זה לא יכול להיות ממופה ישירות לעבודת יישומי אינטרנט הדרך.
אפילו מסגרות MVC כביכול הם לא באמת MVC. אז בואו פשוט נמשיך המטרה של MVC. זה לכתוב קוד נקי, שימוש חוזר וניתן לבדיקה.
יישומי אינטרנט
בעיקרו של דבר כל יישום אינטרנט לעשות הוא לקבל בקשת HTTP, תהליך זה וליצור תגובת HTTP.
& Nbsp; + ------------------ +
בקשת HTTP ------> | יישום אינטרנט + -----> תגובת HTTP
& Nbsp; + ------------------ +
HTTP שליחה וקבלה של מטופל על-ידי שרת אינטרנט. בואו נסתכל מקרוב לתוך מה עושה יישום האינטרנט:
& Nbsp; + ------ + + + -------
בקשת HTTP ----> | הנתב | -----> | מטפל | ----> תגובת HTTP
& Nbsp; + ------ + + + -------
הנתב יבדוק את כתובת ה- URL של הבקשה ולשלוח אותו למטפל בקשה שייצור תגובה. Avalanche משתמש בנתב webapp2.
סגנונות מפעילי בקשה
יש בעיקר 3 סגנונות של מפעילי בקשה.
- פונקציה אחת
- שיטת כיתה
- כיתה
Avalanche (וwebapp2) משתמשים בסגנון השלישי, כיתה. שימוש בכיתה כמטפל בקשה מתאים טוב יותר את המטרות שלנו משום שהוא מספק גמישות רבה יותר, קל יותר לשנות / להרחיב ושימוש חוזר חלקים של המטפל.
עיבוד מטפל בקשה
עיבוד מטפל הבקשה ניתן לחלק ב -3 שלבים:
& Nbsp; + ----------------- + + + + ----------------- --------- - +
לבקש ----> | ממיר param | ---- param אובייקטים ----> | בונה הקשר | --- הקשר -----> | מפיק | ----> תגובה
& Nbsp; + ----------------- + + + + ----------------- --------- - +
ממיר 1. פרמטר - לקבל פרמטרים מבקשת HTTP
& Nbsp; HTTP הוא פרוטוקול טקסט, היישום יהיה בדרך כלל לקבל כמה פרמטרים מהבקשה ולהמיר ערכי מחרוזת לסוגים מסוימים ילידי נתונים. פרמטרים אלה לקוחים מנתיב URI, שאילתא URI, לאחר הנתונים, עוגיות, וכו '
בונה 2. הקשר - עיבוד
& Nbsp; Context הוא מונח המשמש כדי לייצג את הנתונים שישמשו את מפיק.
& Nbsp; עיבוד זה היגיון היישום. לעתים קרובות זה יהיה לגשת לשכבת התמדה (המכונה לעתים דגם) אבל זה תלוי אך ורק את קוד היישום ויש המסגרת שום תפקיד שב.
& Nbsp; דף אינטרנט לעתים קרובות מורכב מכמה אלמנטים אז לפעמים זה הגיוני לחלק את העבודה ל" בונה הקשר "יותר מפעם אחת.
3. מעבד - ליצור פלט
& Nbsp; המעבד יהיה להמיר את התוצאה של העיבוד לטקסט לתגובת HTTP. שלב זה עשוי להיות דילוג אם התגובה היא הפניה HTTP. מפיק יהיה בדרך כלל להשתמש במערכת תבנית ליצירת קוד HTML או להמיר את הנתונים לJSON.
במפולת שלגים שאתה צריך לכתוב קוד עבור 3 השלבים של המטפל בנפרד ולתת המסגרת להדביק את החלקים השונים יחדיו.
. על מנת להעביר את ההדרכה כדי לראות איך זה נראה כמו

דרישות :

  • Python

תוכנות אחרות של יזם Eduardo Naufel Schettino

hoe.js
hoe.js

13 Apr 15

Doit
Doit

1 Mar 15

pytest-incremental
pytest-incremental

12 May 15

תגובות ל avalanche

תגובות לא נמצא
להוסיף הערה
הפעל את התמונות!