فریمورک های پایتون
در مقاله زبان برنامه نویسی پایتون گفته شد که این زبان یک زبان برنامه نویسی داینامیک و چند منظوره می باشد که می تواند بر روی بیشتر پلتفرم ها همچون ویندوز، مک و لینوکس در اختیار برنامه نویسان قرار بگیرد. توسعه دهندگان زبان برنامه نویسی پایتون برای استفاده بهتر از این زبان، فریمورک های پایتون را طراحی کرده اند که هر برنامه نویس با انتخاب فریمورک مناسب در بین فریمورک های پایتون می تواند برنامه نویسی خود را راحت تر کند. برای آشنایی با فریمورک های پایتون می توانید از این مقاله استفاده نمایید.
آنچه در این مقاله می آموزید:
Toggleفریمورک های پایتون
فریمورک های زبان برنامه نویسی پایتون به دسته فریمورک full-stack، فریمورک Microframework و فریمورک Asynchronous تقسیم می شوند که در زیر به معرفی کامل آن ها می پردازیم.
فریمورک full-stack
فریمورک هایی که جزء فریمورک full-stack هستند، به عنوان یک راه حل کامل برای نیاز توسعه دهندگان به حساب می آیند. کارهایی که این فریمورک ها انجام می دهند، ساخت و مدیریت فرم ها ، اعتبار سنجی فرم ها، تمپلیت سازی و … می باشد.
فریمورک Microframework
فریمورک هایی که در این گروه فریمورک ها قرار می گیرند، بسیار سبک هستند و به همین دلیل امکانات اضافی را ارائه نمی دهند. این امکانات اضافی شامل لایه ی انتزاعی پایگاه داده ،اعتبار سنجی فرم ها و بعضی ابزارها و کتابخانه های خاص و … می باشند. در صورتی که می خواهید از این فریمورک ها استفاده نمایید، فراموش نکنید که افزودنی های جانبی را خودتان دستی وارد نمایید.
فریمورک Asynchronous
فریمورک های این دسته به دلیل محبوبیتی که دارند، به عنوان یک Microframework به حساب می آیند که دارای توانایی پشتیبانی از اتصال متقارن بسیار زیادی می باشد. فریمورک Asynchronous کتابخانه های asyncio زبان برنامه نویسی را مورد استفاده قرار می دهد.
تفاوت بین میکرو فریمورک و فریمورک فول استک
فریمورک full-stack |
فریمورک Microframework |
پیچیدگی و عملیات سنگین | ساده و کاربری آسان |
نباید در حالت RESTful باشد | مسیریابی url اغلب در حالت RESTful انجام می شود |
برای تولید انواع برنامه ها کاربرد دارد | مناسب برنامه های کوچک |
دارای کتابخانه ها، موتورهای قالب، مدیریت بانک اطلاعاتی و… |
استفاده از WSGI |
از طریق آناتومی درخواست / پاسخ HTTP کار می کند |
انواع فریمورک های پایتون
فریمورک Django
فریمورک Django به عنوان فریمورک توسعه برنامه وب در زبان پایتون به حساب می آید و برنامه نویس را برای توسعه سریع برنامه ها ترغیب می کند. این فریمورک دارای طراحی عملگرا (pragmatic design) می باشد و توسط توسعه دهندگان با تجربه تولید شده است. فریمورک Django به صورت رایگان و متن باز در اختیار طراحان قرار می گیرد.
ویژگی های فریمورک جانگو
- توسعه سریع
- کامل
- بسیار ایمن
- مقیاس پذیری
- فوق العاده
- پر کاربرد
فریمورک Web2Py
فریمورک web۲py یکی دیگر از فریمورک full stack به حساب می آید و به توسعه دهندگان به صورت رایگان و اپن سورس کمک بسیاری می کند. به طور کلی این فریمورک یک فریمورک کراس پلتفرم نیز می باشد که از اکثر سیستم عامل ها پشتیبانی می کند. فریمورک web۲py به وسیله وب سرور، پایگاه داده SQL و اینترفیس مبتنی بر وب می تواند کار توسعه وب را آسان سازد.
ویژگی های web۲py
- نصب آسان
- کراس – پلتفرم
- اتصال راحت دیتابیس
- ایمنی
فریمورک Turbo Gears
فریمورک TurboGears یکی دیگر از فریم ورک های پایتون می باشد که به صورت رایگان، اوپن سورس و داده محور در اختیار طراحان قرار می گیرد. فریمورک TurboGears بر روی TurboGear۱, Django و rails ساخته می شود و برای توسعه ی وب به تنظیمات کمی نیاز پیدا می کند.
ویژگی های فریمورک
- ادغام با کتابخانه MochiKit جاوا اسکریپت
- ابزارهای خط فرمان
- از SQLObject و SQLAlchemy پشتیبانی میکند
- چندین پایگاه داده را پشتیبانی می کند.
فریمورک CubicWeb
می توانیم فریمورک CubicWeb را به عنوان یکی دیگر از فریم ورک های پایتون به حساب آوریم که دارای قابلیت رایگان و اوپن سورس می باشد. این فریمورک به توسعه دهندگان این امکان را می دهد با قابلیت استفاده ی مجدد از کامپوننت ها و اصول طراحی شی گرا بتوانند برنامه های تحت وب کارآمدی ایجاد نمایند.
ویژگی های CubicWeb
- پیروی از نکات ایمنی
- پشتیبانی از (Resource Description Framework (RDF) and Web Ontology Language (OWL)
- ساده سازی زبان (Relational Query Language (RQL و کوئری هایی که با دیتابیس در ارتباط هستند
فریمورک Flask
فریمورک Flask یکی از فریم ورک های پایتون می باشد که به عنوان یک میکرو فریمورک به حساب می آید و بر اساس Werkzeug و همچنین Jinja ۲ پیاده سازی می شود. فراموش نکنید که هدف اصلی ایجاد این فریمورک، ایجاد یک برنامه کاربردی وب قدرتمند می باشد و این فریمورک رای پروژه های کوچک و آسان کاربرد دارد.
ویژگی های میکرو فریمورک Flask
- سبک بودن
- سازگاری با Google App Engine
- دارای سرور توسعه و دیباگر داخلی
فریمورک CherryPy
فریمورک CherryPy به عنوان یک فریمورک مینیمالیست پایتون به حساب می آید تا بتواند از الگوی شی گرایی برای تولید اپلیکیشن ها بهرهمند شود و از آن ها استفاده نماید. این فریمورک به توسعه دهندگان این امکان را می دهد تا بتوانند در مدت زمان کم برنامه های وب خود را توسعه دهند.
ویژگی های فریمورک CherryPy
- داشتن یک پیکربندی قدرتمند و یک سیستم پلاگین انعطاف پذیر
- اجرا چندین سرور HTTP به طور همزمان
- داشتن ابزارهای داخلی برای کش کردن، انکد کردن، سشن ها، احراز هویت و محتواهای ثابت
فریمورک Bottle
می توانیم فریمورک Bottle را به عنوان یکی دیگر از فریم ورک های پایتون معرفی نماییم که بسیار سریع، ساده و سبک می باشد. این فریمورک به صورت یک ماژول در اختیار برنامه نویسان قرار می گیرد و فراموش نکنید که فریمورک Bottle به جز کتابخانه استاندارد پایتون به هیچ چیز دیگری وابستگی ندارد. فریمورک Bottle در طراحی وب اپلیکیشن های کوچک مناسب می باشد و مورد استفاده قرار می گیرد.
ویژگی های فریمورک Bottle
- راحت کردن تمام دسترسی ها به به داده های فرم ها، آپلود فایل، کوکی ها و …
- سرور داخلی مبتنی بر HTTP خودش را دارد
فریمورک Tornado
فریمورک Tornado تنها به وسیله کتابخانه asynchronous شبکه ای منتشر می شود. از این فریمورک بیشتر در برنامه هایی ه به اتصال طولانی مدت بین سرور و کاربر نیاز دارند مورد استفاده قرار می گیرد. فریمورک Bottle به وسیله شبکه غیر انسداد I / O می تواند ده ها هزار اتصال باز داشته باشد.
ویژگی های فریمورک Tornado
- کلاینت مبتنی برای Non-blocking HTTP
- عملکردی با کیفیت بالا
- پیاده سازی برنامه های تأیید هویت و مجوز شخص ثالث همچون Google ،Facebook ،Twitter
فریمورک Dash
فریمورک Dash یکی از فریمورک های پایتون می باشد که به عنوان میکرو فریمورک Dash در بین فریمورک های زبان پایتون به حساب می آید. این فریمورک پایتون مخصوص توسعه اپلیکیشن های تحلیلی می باشد و به همین دلیل طراحی و ساخته شده است. این فریمورک طبق فریمورک های Flask، Plotly.js و React.js ساخته شده است که این موضوع باعث شده است که برای استفاده از فریمورک Dash به دانش فنی توسعه وب نیازی نداشته باشید.
فریمورک Hug
اگر در بین فریمورک های پایتون به دنبال فریمورکی هستید که به وسیله آن بتوانید رابط برنامه نویسی اپلیکیشن یا همان API ها را توسعه دهید، میکرو فریمورک Hug بهترین فریمورک برای این کار می باشد.
فریمورک Giotto
یکی دیگر از فریمورک های پایتون که از معماری MVC پشتیبانی می کند، فریمورک Giotto می باشد جزء فریمورک های Full-Stack به حساب می آید. به عنوان توسعه دهنده به راحتی می توانید به طور مستقل بر روی آن کار کنید.
فریمورک Pyramid
فریمورک Pyramid که عضو فریمورک Full-Stack می باشد، با اینکه بسیار داده است اما امکانات بسیاری را در اختیار توسعه دهندگان قرار می دهد. کمپانی هایی همچون Mozilla، DropBox و Yelp از این فریمورک استفاده می کنند.
فریمورک Sanic
فریمورک Sanic یکی از فریمورک های پایتون دارای قابلیت منبع باز می باشد که در پایتون 3.6 به بالا استفاده می شود. این فریمورک مخصوص پاسخ پرسرعت به درخواست های HTTP است و به همین دلیل هم تولید شده و در اختیار برنامه نویسان قرار گرفته است.
فریمورک Grok
فریمورک Grok یکی دیگر از فریمورک های پایتون می باشد که در گروه فریمورک های Full-Stack پایتون قرار می گیرد. این فریمورک به صورت متن باز و برای توسعه پرسرعت نرم افزار تولید و مورد استفاده قرار می گیرد. این فریمورک طبق سرورهای Toolkit Zopeطراحی شده و به همان اندازه استوار می باشد.
فریمورک Growler
در بین فریمورک های پایتون به فریمورک Growler، فریمورک غیر همزمان Growler نیز گفته می شود که در طبق کتابخانه asyncio و Node.js نوشته و طراحی شده است.
فریمورک BlueBream
فریمورک BlueBream به عنوان میکرو فریمورک در بین فریمورک های پایتون شناخته شده است که با نام Zope3 نیز در بین برنامه نویسان شناخته شده است. این فریمورک طبق Zope Public تولید شده است.
فریمورک Falcon
میکرو فریمورک فالکون برای توسعه API انتخاب مناسب تری می باشد و این فریمورک در توسعه HTTP API به بارگذاری وابستگی ها (Dependencies) نیازی پیدا نمی کند.
فریمورک AIOHTTP
فریمورک AIOHTTP یکی دیگر از فریمورک های غیر همزمان فایتون می باشد که برای استفاده شدن به به ویژگی های نسخه 3.5 به بالا پایتون نیاز دارد. این فریمورک به خوبی از کتابخانه asyncio پشتیبانی و استفاده می کند.
فریمورک MorePath
زبان پایتون دارای میکرو فریمورک های مختلفی می باشد که فریمورک morepath مدل دیگر این میکرو فریمورک ها به حساب می آید. علاوه بر آن این فریمورک در بین فریمورک های پایتون به عنوان قدرتمندترین فریمورک مدل محور معرفی شده است.
فریمورک Pycnic
فریمورک Pycnic یک میکرو فریمورک شی گرا می باشد که امکان توسعه API برپایه زبان JSON را برای برنامه نویسان فراهم می کند.
فریمورک Pylons
فریمورک Pylons یکی دیگر از فریمورک Full-Stack در فریمورک های پایتون می باشد که طبق ویژگی های شاخص زبان های برنامه نویسی نظیر پایتون، Perl و Ruby طراحی شده است.
فریمورک Quixote
فریمورک Quixote به عنوان یک میکرو فریمورک با قابلیت انعطاف پذیری و عملکرد پرقدرت در بین برنامه نویسان شناخته شده است. این فریمورک امکاناتی همچون تکنیک های کلاسیک برنامه نویسی را در اختیار توسعه دهندگان قرار می دهد.
فریمورک Zope
فریمورک Zope تنها فریمورک در بین فریمورک های پایتون می باشد که از روش Object Publishing برای ساخت وب سایت استفاده می کند. این فریمورک نیز همانند بیشتر فریمورک های پایتون کاملاً شی گرا است.
فریمورک Nevow
فریمورک Nevow یکی دیگر از فریمورک های غیر همزمان زبان برنامه نویسی پایتون می باشد که بر روی Logic تمرکز دارد. این فریمورک علاوه بر موضوع قبلی امکان استفاده از Syntax پایتون (Stan) را برای برنامه نویسان فراهم می کند.
فریمورک Bobo
یکی از ویژگی ها فریمورک Bobo، قابلیت انعطاف پذیری بالا آن می باشد که کار برنامه نویسان پایتون را بسیار راحت می کند.
فریمورک Muffin
فریمورک مافین یکی دیگر از فریمورک های غیر همزمان در بین فریمورک های پایتون می باشد که در سال 2015 تولید و در اختیار برنامه نویسان قرار گرفته است. به طور کلی این فریمورک از ترکیب ابزارهایی همچون admin interfaces، plugins system و REST API ساخته شده است.
فریمورک Py
بیشتر برنامه نویسان فریمورک py را یا فریمورک Web2PY اشتباه می گیرند و فکر می کنند که این 2 فریمورک یکی هستند، در صورتی که اینطور نیست و با هم متفاوت هستند. فریمورک py علاوه بر سادگی، بسیار قدرتمند می باشد که بهترین گزینه برای توسعه وب اپلیکیشن به حساب می آید. فراموش نکنید که اجزای مختلف فریمورک py به صورت محرمانه (discreet) فعالیت می کنند.
فریمورک Ray
فریمورک Ray همانند فریمورک فالکون برای ساخت API های نوع RESTful مورد استفاده قرار می گیرد. فریمورک Ray به عنوان پرسرعت ترین فریمورک در بین فریمورک های پایتون شناخته شده است.
فریمورک WebCore
فریمورک WebCore در بین فریمورک های پایتون، به عنوان کم حجم ترین ماکرو فریمورک شناخته شده است. این فریمورک ه عنوان یک فریم ورک نانو برای زبان پایتون به حساب می آید.
فریمورک Vibora
اگر در بین فریمورک های پایتون به دنبال فریمورکی هستنید که مدرن باشد می توانی فریمورک Vibora را به عنوان مدرن ترین فریمورک های پایتون معرفی کنیم.
فریمورک REAHL
فریمورک Reahl دارای ویژگی های بسیاری می باشد و تمام این ویژگی ها توسط زبان پایتون ساخته شده اند. در فریمورک Reahl هیچ مورد اضافی قرار ندارد. یادگیری این فریمورک تنها با دانستن پایتون آسان می باشد و بر خلاف دیگر فریمورک های پایتون روند یادگیری بسیار ساده ای دارد.
بهترین فریمورک های پایتون
فریمورک Vibora
مزایا
- مشتری پسند
- روت های Domain محور
- دارای ابزارهای Caching و Streaming
- مجهز به موتور قالب ساز Async
- قابلیت سفارشی سازی
- قابلیت رمزگشایی محتوا
فریمورک WebCore
مزایا
- نصب آسان
- کاربر پسند
- سازگار پذیری بالا
- وابسته به پکیج های WebOb
- معماری MVC
فریمورک Zope
مزایا
- قابلیت سفارشی سازی
- پشتیبانی از پایتون 2 و 3
- مجهز به قالب های Chameleon محور
- عملکردی بسیار بالا با حداقل استفاده از مموری
فریمورک Nevow
مزایا
- قابلیت نگهداری از قالب های XHTML
- قابلیت تفکیک داده ها بر مبنای Presentation Writing
- مجهز به کتابخانه مرورگر جاوا اسکریپت (Athena)
- قابلیت ارتباط ناهمزمان دوطرفه بین پایتون و جاوا اسکریپت
- قابلیت تماس های از راه دور (RPC)
فریمورک Bobo
مزایا
- کم حجم
- عدم تعهد به قوانین خاص
- فاقد موتور قالب ساز و مجهز به WSGI و کتابخانه WebO
- کانفیگ جزیی
فریمورک Muffin
مزایا
- دارای ویژگی های ذاتی فریم ورک Flask درباره روت URL
- مجهز به ORM نوع PeeWee به جای SQLAlchemy
- ساده و پر سرعت
- پشتبانی از پایتون
فریمورک Ray
مزایا
- نصب آسان
- پشتیبانی از QueryString برای انتقال دیتا بین صفحات (GET)
- مجهز به سپرهای امنیتی HTTP
- مجهز به ویژگی های سرورهای بک اند (Back-End)
فریمورک Django
مزایا
- استفاده از طرح های عملی (Pragmatic Design) برای ساده سازی فرآیند توسعه صفحات وب
- دارای کتابخانه ها و ویزگی های برجسته ای نظیر مکانیسم احراز هویت، مدیریت محتوا، موتور قالب ساز، مسیر یابی URL
- پشتیبانی از دیتابیس های PostgreSQL، Oracle، MySQL و SQLite
- قابلیت استفاده مجدد کامپوننت ها و کدنویسی کمتر
- امنیت بالا و امکان پاک کردن اشتباهاتی نظیر کلیک درجا (Clickjacking)، جعل و تزریق SQL
- تطبیق پذیر
- مقیاس پذیری
فریمورک CherryPy
مزایا
- برنامه های توسعه یافته با CherryPy بدون نیاز به سرور Apache در سیستم عامل های ویندوز، لینوکس، Unix و Mac اجرا می شوند.
- به علت ویژگی ماژولار و Setup دسترسی به دیتا و قالب سازی آسان است.
- پشتیبانی داخلی از Task های مستند ساز نظیر پروفایل، پوشش و تستینگ
- اجرای همزمان چند سرور HTTP
- مجهز به ابزارهای پیشفرض برای کشینگ (Caching)، رمزگذاری و صدور اجازه (Authorization)
- کانفیگ (Configuration) قدرتمند
- دارای پلاگین های انعطاف پذیر
- رابط کاربری مینیمالیسم
- سازگار با اندروید
فریمورک Bottle
مزایا
- پشتیبانی از موتورهای قالب ساز (Template Engine) های ثالث
- پشتیبانی از سرورهای WSGI/HTTP
- امکان دسترسی به Form Data، متا دیتای HTTP، کوکی و فایل آپلود
- کم حجم
- پشتیبانی از پلاگین های دیتابیس
- ویژگی روت های Request-dispatching و پشتیبانی از URL-parameter
فریمورک CubicWeb
مزایا
- کامپوننت های چند بار مصرف
- پشتیبانی از زبان های OWL و RDF
- پشتیبانی از زبان پرسمان RQL
- پشتیبانی از چندین دیتابیس
- امنیت بالا
فریمورک Dash
مزایا
- رابط کاربری (UI) ساده
- عدم نیاز به کد های Boilerplate
- دارای ویژگی Error Loading Layout
- پشتیبانی از پروتکل LDP integration
- قابلیت شخصی سازی
- پشتیبانی از پلاگین
- قابلیت URL Routing
- قابلیت تولید محتوای HTML
فریمورک Flask
مزایا
- مبتنی بر استاندارد Unicode
- دارای موتور قالب ساز Jinja 2
- سازگار با WSGI 1.0
- پشتیبانی از پلاگین های ORM
- پشتیبانی از تست واحد (Unit Test)
- پشتیبانی از از کوکی های سمت کاربر (Client-Server)
- رسیدگی به HTTP Request
فریمورک Hug
مزایا
- قابلیت Write-once, Use-Anywhere
- مجهز به Version Management داخلی
- پشتیبانی از مستندسازی اتوماتیک (Automatic Documentation)
- مجهز به اعتبار سنجی Annotation Driven
فریمورک Giotto
مزایا
- پشتیبانی از کدهای خلاصه
- دارای مدل (Model) و نمای (View) کلی
- دارای چندین کنترلگر (Controller) که از قابلیت Pluggable پشتیبانی می کنند
- روتینگ اتوماتیک URL
- دارای پکیج SQLAlchemy
- مجهز به الگوهای مدیریت داده CRUD
- پشتیبانی از انبار دیتای Memcache و Redis
- پشتیبانی از HTML با Jinja 2
- رابط کاربری RESTful
فریمورک Pyramid
مزایا
- دارای Predicates و Renderers
- دارای ویژگی های مربوط به قالب سازی (Templating) و دارایی
- اپلیکیشن های تک فایل
- مجهز به فریم ورک Traversal برای تبدیل URL به Code Mapping
- انعطاف پذیری Authentication و Authorization
- حجم کم
- دارای توابع Decorators
فریمورک Sanic
مزایا
- قابلیت خواندن و نوشتن کوکی ها
- انواع مختلف Logging
- نمای Class-Based
- پشتیبانی از توابع Decorators
- پشتیبانی از پلاگین
- دارای بلوپرینت هایی برای Sub Routing درون برنامه ای
- دارای اشیای کانفیگ (Configuration Object) طبقه بندی شده
فریمورک Tornado
مزایا
- دارای کلاس HTTPclient غیر مسدود شونده (Non-Blocking)
- مجهز به سرویس های Real-Time
- عملکرد فوق العاده باکیفیت
- دارای خروجی بسیار باکیفیت
- مجهز به قالب سازهای وب
- پشتیبانی از احراز هویت کاربران
- پشتیبانی از احراز هویت و تایید اعتبارشخص ثالث
- پشتیبانی از مفسر (Interpretation) و محلی سازی (Localization)
فریمورک Turbo Gears
مزایا
- معماری MVC
- مجهز به قالب های PasteScript
- پشتیبانی از دیتابیس های چندگانه
- مجهز به توابع Decorator
- پشتیبانی از فریم ورک Pylon
- پشتیبانی از انواع سیستم عامل های موجود (Cross-Platform)
فریمورک Web2Py
مزایا
- قابلیت سازگاری وارونه (Backward)
- معماری MVC
- پشتیبانی از قابلیت Internalization
- نصب بسیار راحت بدون نیاز به کانفیگ
- کنترل دسترسی Role محور
- دارای پروتکل های قابل خوانش چندگانه
- پشتیبانی داخلی از کوکی، Session و درخواست های HTTP
- قابلیت Cross-Platform
- عملکرد قابل تغییر
- امنیت خوب در برابر خطرات معمولی
- اتصال یکپارچه به دیتابیس
- قابلیت استفاده اپلیکیشن در محیط های مختلف (Portability)
فریمورک Grok
مزایا
- توسعه اپلیکیشن وب پیشرفته
- قابلیت توسعه اپلیکیشن به صورت سفارشی
- مجهز به تکنولوژی پیشرفته (Martian’s grokcore.component)
- قابلیت دسترسی به شبکه گسترده و کتابخانه های مستقل
- معماری MVC
فریمورک Growler
مزایا
- عدم حضور توابع Callback و بلاک های Proper Try/Except
- قابلیت نظارت بر روند عملکرد اپلیکیشن
- پشتیبانی از پکیج های منبع باز
- دارای توابع Decorator
- قابلیت استفاده مجدد از کدها
- قابلیت جمع آوری اپلیکیشن ها در یک فایل زیپ
فریمورک BlueBream
مزایا
- کاربرد بسیار بالا
- مقیاس پذیری
- کامپوننت های چند بار مصرف و قابل جایگزین
- پشتیبانی از سیستم Buildout
- پشتیبانی از قابلیت های Zope Toolkit
فریمورک Falcon
مزایا
- طراحی وب اپلیکیشن های Dieter Ram
- دارای پایگاه کد گسترده و بهینه سازی شده
- پردازش ریکوئست ها از طریق کامپوننت های میان افزار
- دسترسی به Header و Body از طریق کلاس های Request and Response
- پشتیبانی از کتابخانه Cython برای افزایش سرعت
- قابلیت مدیریت خطای به صورت روبه جلو (Upfront)
- قابلیت مدیریت خطای HTTP به صورت مجازی (Idiomatic)
- دارای کلاس های ریسورس REST-Style
- مجهز به قالب های URI برای روتینگ بصری
- پشتیبانی از WSGI برای تستینگ واحد (Unit Testing)
- پشتیبانی کامل از Unicode
- سازگاری با کتابخانه های Async نظیر gevent
- پشتیبانی از مدیریت پکیج PyPy
فریمورک AIOHTTP
مزایا
- مجهز به ساختار موثر Views
- پشتیبانی از میان افزار و سیگنال
- روتینگ قابل برنامه ریزی (Pluggable)
- پشتیبانی از WebSocket های کلاینت و سرور بدون نیاز به Callback
فریمورک MorePath
مزایا
- قابلیت استفاده مجدد از نمای عمومی (Generic Views)
- پشتیبانی از رابط کاربری RESTful
- قابلیت توسعه رابط کاربری عمومی (Generic UI)
- پشتیبانی از افزونه های ساده، منسجم و جهانی
- پشتیبانی از مکانیزم Override
- دارای مجوزهای انعطاف پذیر
فریمورک Pycnic
مزایا
- قابلیت مدیریت خطای درون برنامه ای
- قابلیت پشتیبانی از توسعه API بر پایه JSON
- مدیریت روتینگ
- پشتیبانی از کوکی
فریمورک Pylons
مزایا
- تولید و اعتبار سنجی فرم های HTPM
- قابلیت URL Dispatch
- نقشه یابی URL بر اساس کانفیگ Routes
- مجهز به WebHelper برای نقشه یابی URL
- دارای قالب های تکست محور
- قابلیت کراس پلتفرم و دارای لیسانس BSD (توزیع نرم افزار بارکلی)
- دارای ساختاری با قابلیت پشتیبانی از ابزارهای ثالت
- پشتیبانی از WSGI
فریمورک Quixote
مزایا
- منبع باز
- سازگار با سبک های برنامه نویسی متنوع
- مجهز به کتابخانه Werkzeug WSGI
- دارای قالب Jinja 2
فریمورک Py
مزایا
- پر سرعت
- ساده
- مستقل
- کاربر پسند
- پشتیبانی از متدهای ارسال دیتای POST و GET
- پشتیبانی از REST API
مناسب ترین فریمورک های پایتون برای توسعه وب
پس از معرفی فریمورک های پایتون لازم است که در این قسمت به معرفی مناسب ترین فریمورک های پایتون برای توسعه وب بپردازیم.
- فریم ورک جنگو (Django)
- فریم ورک وب تو پای (Web2Py)
- فریم ورک توربو گیرز (TurboGears)
- فریم ورک تورنادو (Tornado)
- فریم ورک فلسک (Flask)
- فریم ورک پایرامید (Pyramid)
- فریم ورک چِری پای (CherryPy)
- فریم ورک باتل (Bottle)
مقایسه فریمورک های پایتون
می توانیم مقایسه فریمورک های پایتون را بر اساس ویژگی های زیر انجام دهیم.
پشتیبانی از الگوی MVC
- Django
- Web2Py
- TurboGears
پشتیبانی از پایگاه داده های مختلف
- Bottle
- TurboGears
- Django
داشتن کتابخانه های مختلف
- TurboGears
- Django
- Flask
۵ فریمورک برتر در پایتون
در این قسمت می خواهیم به معرفی ۵ فریمورک برتر در پایتون بپردازیم.
- جنگو
- web2py
- فلاسک
- باتل
- cherrypy
تفاوت بین کتابخانه و فریمورک
کتابخانه | فریمورک |
پیچیدگی کم | پیچیدگی زیاد |
با فراخواندن از کتابخانه، شما در راس کنترل هستتید | فراخوانی توسط فریمورک صورت می گیرد |
فقط عملیلات مشخصی را انجام می دهند | تنها شامل موارد پایه است و بقیه توسط کاربر ساخته می شوند |
سخن پایانیفریمورک ابزاری می باشد که کار برنامه نویسی را برای توسعه دهندگان و برنامه نویسان آسان تر می کند. هر زبان برنامه نویسی فریمورک های مخصوص خود را دارد و زبان برنامه نویسی پایتون نیز جزء همین زبان ها می باشد. زبان برنامه نویسی پایتون همانند زبان برنامه نویسی php دارای فریمورک های مختلفی می باشد که هر کدام کاربرد های خاص خود را دارند. می توانیم فریمورک های پایتون را با بیش از 30 به شما معرفی کنیم، این فریمورک های پایتون شامل فریمورک Django، فریمورک Bottle، فریمورک TurboGears، فریمورک Web2Py، فریمورک Flask و … می باشند. این مقاله به طور کامل به معرفی تمام فریمورک های پایتون و نحوه انتخاب مناسب ترین فریمورک در بین فریمورک های پایتون پرداخته است. برای دریافت پاسخ سوالات خود و بهره مند شدن از تجربه اساتید خبره و دیگر دوستانتان در کمپین آموزشی بی لرن می توانید سوالات خود را در کافه گپ و گفت مطرح نمایید و در سریعترین زمان، پاسخ سوال خود را دریافت نمایید. همچنین می توانید با عضویت در کمپین آموزشی بی لرن، از دوره های آموزشی رایگان و کاربردی در زمینه های مختلف به صورت تخصصی و حرفه ای بهره مند شوید. با توجه به مسیر یادگیری در زمینه های مختلف می توانید برای شروع کار با زبان پایتون از آموزش Python بهرهمند شوید. |
دیدگاهتان را بنویسید