avalanche

نرم افزار تصویر:
avalanche
جزئیات نرم افزار:
نسخه: 0.3.0
ها تاریخ: 14 Apr 15
توسعه دهنده: Eduardo Naufel Schettino
پروانه: رایگان
محبوبیت: 1

Rating: nan/5 (Total Votes: 0)

.

بهمن چارچوب وب پایتون ساخته شده در بالای webapp2 کنید و است؛ آن استفاده می کند Jinja2 به عنوان یک سیستم قالب پیش فرض می کند و شامل هر لایه پایداری نیست.
اهداف بهمن (یا چرا چارچوب وب دیگر؟)
تمرکز طراحی بهمن در تست و استفاده مجدد.
البته بهمن می کند معجزه نمی کنند. تست و استفاده مجدد خواهد شد در نهایت در کد برنامه بستگی دارد. اما چارچوب نقش بزرگی در راه اندازی راه راست داشته باشد.
اهداف زیر، امیدوارم بعد از خواندن طرح ارائه شده و آموزش آن را به شما روشن خواهد شد که چگونه این اهداف به دست آورد.
تست
بهمن در راه است که آن را می سازد ممکن (برای شما آسان تر) به ارسال خوب واحد آزمون برای کد شما طراحی شده است. که نه تنها ساخت آن آسان برای نوشتن آزمون. واحد آزمون باید:
- را پیغام خطا روشن زمانی که آن را با شکست مواجه
- شکست تنها زمانی که از ویژگی های زیر تست شکسته است، نه در هر تغییر کد
- سریع
قابلیت استفاده مجدد
بیشتر از هر چارچوب ادعا می کند که قابلیت استفاده مجدد یکی از اهداف طراحی خود است. در اینجا "استفاده مجدد" به معنای منبع کد استفاده مجدد.
بسیاری از چارچوب ارائه برخی از مکانیسم برای قابل استفاده مجدد / plugable زیر برنامه های کاربردی با این حال آن همیشه آسان نیست به استفاده مجدد از این کد برنامه های کاربردی متن در مورد شما نیاز به پیکربندی / تغییر آن. برنامه Plugable همچنین از ویژگی های بسیار مهم اما از حالا بهمن هیچ پشتیبانی برای آن.
این نه تنها باید امکان ارسال کد قابل استفاده مجدد، کد باید قابل استفاده مجدد در اولین بار که شما آن را ارسال می شود. شما باید توصیه نمی شود به نوشتن کد در یک راه، و از بعد باید آن را تغییر دهید، آن را به قابل استفاده مجدد. یعنی آن را به گفت: "استفاده از نمایش (کنترل) توابع" مخالف است. و از ... "اگر شما می خواهید دیدگاه های خود را به دوباره قابل استفاده می شود آنها را تبدیل به دیدگاه های مبتنی بر کلاس!".
مشخصات پروژه
- وب سایت / اسناد
- این یک پروژه منبع باز (مجوز MIT) نوشته شده در پایتون است.
- دانلود از PyPi
- مدیریت پروژه (مینمائید، درخواست ویژگی و کد منبع) در bitbucket.
- سوالات و نظرات خود را در گروه گوگل.
بهمن طراحی
هشدار
بهمن در مراحل اولیه توسعه (آلفا) است. API ممکن است در آینده تغییر است و هیچ تضمینی وجود ندارد آن سازگاری را حفظ خواهد کرد وجود دارد.
فراتر از MVC (مدل-مشخصات-کنترل)
MVC یک الگوی نرم افزار معماری ایجاد شده با هدف منزوی کردن "منطق دامنه" از رابط کاربر است. این جدایی از نگرانی را قادر می سازد ایجاد کد برنامه بهتر است. این الگوی برای بسیاری از چارچوب های دسکتاپ بسیار موفق بود و بنابراین به عنوان یک مرجع به ایجاد وب چارچوب خدمت کرده است. مشکل این است که این معماری را نمی توان به طور مستقیم به راه وب برنامه های کاربردی کار نقشه برداری.
حتی به اصطلاح چارچوب MVC واقعا MVC نیست. بنابراین اجازه دهید فقط نگه داشتن هدف MVC است. این است که ارسال تمیز، دوباره قابل استفاده و قابل آزمون کد.
برنامه های کاربردی وب
اساسا تمام وب برنامه انجام دهید این است برای دریافت یک درخواست HTTP، روند آن و تولید پاسخ HTTP.
و nbsp؛ + ------------------ +
درخواست HTTP ------> | برنامه وب + -----> پاسخ HTTP
و nbsp؛ + ------------------ +
ارسال و دریافت HTTP است که توسط یک وب سرور گرفته شده است. بیایید نگاهی دقیقتر به آنچه برنامه وب می کند:
و nbsp؛ + ------ + + ------- +
درخواست HTTP ----> | روتر | -----> | کنترل | ----> پاسخ HTTP
و nbsp؛ + ------ + + ------- +
روتر خواهد URL درخواست چک کنید و آن را اعزام به کنترل درخواست که پاسخ ایجاد خواهد شد. بهمن با استفاده از روتر webapp2.
گرداننده درخواست سبک
عمدتا 3 سبک از گرداننده درخواست وجود دارد.
- یک تابع تک
- یک روش طبقه
- یک کلاس
بهمن (و webapp2) با استفاده از سبک سوم، یک کلاس. با استفاده از یک کلاس به عنوان درخواست برنامه کنترل مناسب بهتر اهداف ما دلیل آن را فراهم می کند انعطاف پذیری بیشتر، آسان تر به تغییر / گسترش و استفاده مجدد از نقاط کنترل.
درخواست پردازش کنترل
پردازش درخواست برنامه کنترل را می توان در 3 مرحله تقسیم می شود:
و nbsp؛ + ----------------- + + ----------------- + + --------- - +
درخواست ----> | مبدل و پرم | ---- پرم اشیاء ----> | سازنده زمینه | --- متن -----> | رندر | ----> پاسخ
و nbsp؛ + ----------------- + + ----------------- + + --------- - +
مبدل 1. پرم - دریافت پارامترهای از درخواست HTTP
& nbsp؛ از HTTP یک پروتکل متن، برنامه به طور معمول خواهد شد برخی از پارامترهای از درخواست و تبدیل مقادیر رشته به برخی از انواع داده بومی است. این پارامترها از راه URI، پرس و جو URI، پس از داده ها، کوکی ها، و غیره گرفته شده
سازنده 2. زمینه - پردازش
& nbsp؛ در زمینه یک اصطلاح مورد استفاده برای نمایش داده خواهد شد که با یک موتور رندر استفاده می شود.
& nbsp؛ این پردازش منطق برنامه است. این اغلب یک لایه پایداری (گاهی اوقات به نام مدل) دسترسی اما این به طور کامل به کد برنامه و چارچوب هیچ نقشی در آن دارد.
& nbsp؛ یک صفحه وب است که اغلب از چند عنصر تشکیل شده است بنابراین گاهی اوقات آن را حس می به تقسیم کار را به بیش از یک "سازنده زمینه".
3. رندر - تولید خروجی
& nbsp؛ در رندر خواهد شد در نتیجه از پردازش به متن برای پاسخ HTTP تبدیل کنید. این مرحله ممکن است از قلم اگر پاسخ یک تغییر مسیر HTTP است. رندر به طور معمول استفاده از یک سیستم قالب برای تولید کد HTML و یا تبدیل داده ها به JSON.
در بهمن شما باید کد برای 3 مرحله از کنترل جداگانه ارسال و اجازه دهید چارچوب چسب بخش های مختلف با هم.
حرکت به آموزش تا ببینید که چگونه آن را مانند به نظر می رسد

مورد نیاز:.

پایتون

نرم افزار های دیگر از توسعه دهنده Eduardo Naufel Schettino

pytest-incremental
pytest-incremental

12 May 15

Doit
Doit

1 Mar 15

hoe.js
hoe.js

13 Apr 15

نظرات به avalanche

نظر یافت نشد
اضافه کردن نظر
روشن کردن تصاویر!