
فلسک (Flask) چیست؟
"در این مقاله قراره به معرفی فریمورک فلسک بپردازیم و چند تا از ویژگی های مهم این فریمورک اشاره کنیم ."
در واقع Flask یک فریمورک وب سبک میباشد که با زبان پایتون طراحی و نوشته شده است. البته به عبارت دقیقتر فلسک یک میکرو فریمورک است چون بسیاری از ابزارها و کتابخانههای رایج سایر فریمورکها را ندارد. مثلا فلسک به طور پیش فرض نمیتواند با دیتابیس کار کند یا فرمها را اعتبارسنجی کند و برای این کار باید سراغ کتابخانهها و دیتابیسهای موجود بروید. Flask اولین بار توسط Armin Ronacher از Pocoo ارائه شد. به گفته Ronacher، این ایده در ابتدا یک شوخی بود که بعدها آنقدر محبوب شد که به یک برنامه جدی تبدیل شد. پس از آن که روناخر و جورج براندل یک سیستم تابلو اعلانات نوشته شده در پایتون ایجاد نمودند، پروژههای پوکو Werkzeug و Jinja توسعه یافتند. در آوریل ۲۰۱۶، تیم Pocoo منحل شد و توسعه فلسک و کتابخانههای مربوطه به پروژه تازه تاسیس پالت منتقل شد.
امروزه فلسک در بین علاقه مندان به پایتون بسیار محبوب میباشد. از ماه اکتبر ۲۰۲۰، این فریمورک دارای دومین ستاره در GitHub در میان چارچوبهای توسعه وب پایتون میباشد. فلسک در نظرسنجی توسعه دهندگان پایتون ۲۰۱۸، تنها با تفاوت اندکی پس از فریمورک Django (جنگو) محبوب ترین چارچوب وب شناخته شده است. امروزه بسیاری سایتها با استفاده از فریمورک فلسک طراحی میشوند. با استفاده از فریمورک فلسک طراحی سایتهای شخصی، ساخت فروشگاههای آنلاین، طراحی سایت فروشگاهی، وبلاگهای شخصی و شرکتی، راه اندازی فرومها و طراحی سایت شرکتی امکان پذیر است.
فلسک تا حدی از فریمورک سیناترا که با روبی نوشته شده تاثیر گرفته است. سیانترا برخلاف بیشتر رقبای خود از مدل MVC پشتیبانی نکرده و به جای آن روی “ساخت وب اپلیکیشن با سرعت بالا” تمرکز دارد. این فریمورک امکانات پایه ای را برای ساخت یک برنامه تحت وب در اختیارتان میگذارد و اگر نیاز به ماژولهای بیشتر بود میتوانید آنها را به پروژه خود اضافه کنید. همینطور نصب و راه اندازی Flask بسیار آسان بوده و نیاز به نصب ابزار خاصی ندارد.
کار با فلسک به قدری ساده می باشد که اگر کمی با زبان پایتون آشنا باشید با دیدن اولین کدهای flask با ساختار این فریمورک آشنا میشوید. فریمورک flask با همهی سادگی خود بسیار قدرتمند و کارا می باشد. کوچک بودن فریمورک با ضعیف بودن آن برابر نیست و امکانات فریمورکهایی مثل جنگو و ریلز را با اندکی جستجو به دست میدهد. به عنوان مثال سرویسهای بزرگی که از فلسک استفاده میکنند که در ادامه به آن ها میپردازیم.
بیشتر بدانید: فریمورکهای برتر زبان پایتون
پایههای قدرتمند فلسک را دو کتابخانه اساسی ساختهاند؛ به عنوان واسط وبسرور ( WSGI ) از کتابخانهی werkzeug و برای تمپلیتانجین از Jinja2 استفاده کرده اند که هردو کتابخانه توسط تیم توسعه ی فلسک توسعه یافته اند.
WSGI چیست ؟
(W eb Server G atew ay InterfaceI) یا به اختصار WSGI به عنوان یک استاندارد برای توسعه برنامه های وب Python استفاده شده است. WSGI مشخصات واسط مشترک بین سرورهای وب و برنامه های وب است.
Werkzeug چیست ؟
Werkzeug یک ابزار ابزار W SGI است که درخواست ها ، اشیاء پاسخ و توابع ابزار را پیاده سازی می کند. این باعث می شود که یک قاب وب روی آن ساخته شود. چارچوب Flask از W erkzeg به عنوان یکی از پایه های آن استفاده می کند.
Jinja 2 چیست ؟
Jinja 2 یک موتور قالب محبوب برای Python است. سیستم قالب وب قالب ترکیبی از یک الگوی با یک منبع داده خاص برای ارائه یک صفحه وب پویا است.
بطور پیشفرض برای کار با دیتابیسها، اعتبارسنجی فرم ها و کاربران و از این دست کارها ابزار مشخصی در فلسک تعریف نشده و میتوان از ابزارهای شخص ثالث (Third party applications) که برای آن توسعه داده شدهاند ، استفاده کرد.
بیشتر بدانید: فریمورک جنگو
Flask در کجاها استفاده میشود؟
Flask کتابخانه ای کوچک یا به اصطلاح جمع و جور است. اما این کوچیک بودن را نباید با ضعیف بودن اشتباه بگیرید. Flask به حدی قدرتمند است که بسیاری از شرکتهای بزرگ به آن اعتماد کرده و از Flask در پروژههای خود استفاده میکنند. مثلا Uber که بزرگترین سرویس درخواست تاکسی اینترنتی است یا سامسونگ که یکی از بزرگترین تولیدکنندههای قطعات دیجیتال در دنیا است، Flask را به کار گرفته اند. در لیست زیر بعضی از معروفترین برندهایی که به Flask اعتماد کرده اند را مشاهده میکنید:
-
Red Hat
-
Netflix
-
Reddit
-
Pinterest
-
Linkedin
-
Mozila
-
Hotjar
-
Nginx
چرا باید از Flask استفاده کنیم؟
در حالی که پایتون فریمورکهای وب دیگری مثل Django، Bottle، Tornado و غیره دارد، این سوال مطرح میشود که چرا باید سراغ فریمورک flask برویم؟ قبل از جواب دادن به این سوال باید این نکته را یادآور شویم که هیچکدام از فریمورکها از دیگری بالاتر نیست و باید با توجه به شرایط پروژه و نیازهای خود بهترین انتخاب را داشته باشیم. در واقع هر فریمورک نقاط ضعف و قوت خودش را دارد. بعضی از نقاط قوت فلسک که برنامه نویسان را به استفاده از آن ترغیب میکنند عبارتند از:
* یادگیری Flask بسیار آسان است. اگر کمی با زبان پایتون آشنا باشید با دیدن کدهای فلسک میتوانید سر از کار آن دربیارید.
* هنگام کار با Flask دست شما باز است که کارها را مطابق میل خودتان پیش ببرید. یعنی این فریمورک کاملا انعطاف پذیر است.
* یک جامعه قوی پشت زبان پایتون و فریمورک فلسک قرار داد که میتوانید هنگام به وجود آمدن مشکل روی کمک آنها حساب باز کنید.
در این مطلب بررسی کردیم که میکرو فریم ورک Flask چیست و چه کاربردی دارد. همینطور درباره پروژههای موفقی که با آن ساخته شده اند صحبت کردیم. این میکرو فریمورک یک روش سریع و قابل اطمینان برای طراحی سایت با پایتون است. یادگیری آن بسیار آسان بوده و پیچیدگی بسیاری از فریمورک ها را ندارد.
ارسال دیدگاه