پایتون در چند سال گذشته، محبوبیت زیادی پیدا کرد. زبان برنامه ریزی در جاوا بیش از بقیه محبوبیت پیدا کرده است اما برای خیلی از افراد این موضوع اصلا جای تعجب ندارد. با افزایش یادگیری در مورد دستگاه ها ، آنالیز دیتا، و اپلیکیشن وب، بسیاری از توسعه دهندگان از پایتون برای مجموعه برنامه های قدرتمند و فراوانی استفاده می کنند، که هماهنگی قسمت های مختلف و جابجایی در آن راحت است. بدون شک اکنون زمان خوبی برای توسعه دهندگان پایتون است. امروز یاد می گیرید که پایتون چگونه برای ساخت وب سایت مورد استفاده قرار می گیرد.
برای افرادی که در کار برنامه نویسی تازه کار هستند، شاید معنی دقیق توسعه وبسایت برایشان عجیب و ناشناخته باشد. البته که شرح معنی دقیق آن تقریبا غیر ممکن است، توسعه وب تقریبا یک نوع ساخت، ایجاد، و پشتیبانی کردن از وبسایت هاست. معمولا توسعه وب یک فروت اند (Frontend)، هرچیزی که با مشتری تعامل داشته باشد و یک بک اند(backend) ، چیزی که شامل منطق بیزینس می شود و با دیتابیسس تعامل برقرار می کند را شامل می گردد.
چه چیزی پایتون را به یک گزینه مناسب برای توسعه وب تبدیل کرده است؟
در مورد جعبه ابزار فکر کنید. یک فریم ورک وب، مجموعه ای از پکیج ها و مدل های از پیش نوشته شده، کد استاندارد شده است که ساخت اپلیکیشن های وب را ایجاد می کند و باعث می شود که توسعه سایت سریع تر و آسان تر پیش برود و برنامه های شما قابل اعتمادتر و با مقیاس بندی همراه باشند. به عبارت دیگر، چارچوب ها اجزای درونی دارند که پروژه شما را “تنظیم می کنند”، بنابراین در میانه راه کمتر با مشکل مواجه می شوید.
فریم ورک های وب پایتون فقط در تکنولوژی کناری سرور در بک اند قرار گرفته اند، و به روت در URL کمک می کنند، درخواست ها و پاسخ های HTTP را ایجاد می کنند و به دیتابیس دسترسی دارند و باعث امنیت وبسایت می گردند. در حالیکه به استفاده از چارچوب وب نیاز نیست، اما آن را به شدت پیشنهاد می کنیم، زیرا به شما کمک می کند اپلیکیشن های پیچیده را در مدت زمان کمتر توسعه دهید.
جنگو و فلاسک از طریق حاشیه پهن، جزء مجبوب ترین فریم ورک های توسعه وب پایتون است.
جنگو یک چارچوب پایتون است که یک منبع باز را پیشنهاد می دهد که یک چارچوب با سطح بالا است که “توسعه سریع و تمیز و با طراحی برنامه ریزی شده را ایجاد می کند.” این چارچوب سریع، امن و مقیاس پذیر است. جنگو حمایت امنیتی قوی همراه با اسناد مربوط به جزئیات را به همراه دارد.
جنگو به شدت انعطاف پذیر است که در آن می توانید با MVP ها برای کمپانی های بزرگتر کار کنید. از دیدگاه بعضی ها، بعضی از بزرگ ترین کمپانی هایی که از جنگو استفاده می کنند، اینستاگرام، دراپ باکس، پینترست و اسپاتیفای هستند.
فلاسک یک چارچوب میکرو است که یک چارچوب مینیمالیستی محسوب می گردد و کمتر “شامل باتری” می شود و به معنای کمبود عملکردها و ویژگی ها است و مانند جنگو ویژگی های کامل را مثل موتور طرح وب، حساب رسی و سندیت را ارائه نمی دهد.
فلاسک یک برنامه مینیمالیستی و سبک است، به معنای اینکه ویژگی ها و مجموع برنامه هایی را ارائه می دهد که بدون استفاده از چارچوب یا فریم ورک آن، می توانید به آنها کد بدهید. فلسفه پشت فلاسک، این است که اجزایی را به شما می دهد که نیاز دارید برای یک اپلیکیشن بسازید، بنابراین شما به اندازه کافی انعطاف پذیری و کنترل دارید. فلاسک همچنین یک چارچوب وب قدرتمند و رایج است که برای کمپانی های بزرگ مانند نتفلیکس، لینکدین و Ubar استفاده می شود.
بنابراین ممکن است از خودتان بپرسید: کدام فریم ورک یا چارچوب را باید انتخاب کنم؟ پاسخ شما این است که بستگی دارد. سطح مهارت خود را به عنوان یک ارتقادهنده وب در نظر بگیرید. اگر به اندازه کافی تجربه دارید، در مورد توسعه برنامه با چیزی فراتر از “حداقل ها” فکر کنید. اگر به عنوان یک دانشجو در این زمینه کار می کنید، ممکن است بهتر باشد که از یک چارچوبی استفاده کنید که ساپورت بیشتری را ایجاد می کند، مثل جنگو.
همچنین از خودتان بپرسید که آیا یک پایه کد “اساسی” را برای ساخت ترجیح می دهید یا می خواهید برای ساخت بک بن یا backbone پایه کد انعطاف پذیری داشته باشید؟ اگر گزینه اول را ترجیح می دهید، از جنگو استفاده کنید: اگر گزینه دوم را ترجیح می دهید، از فلاسک استفاده کنید. در انتهای روز، هردو می توانند عملکرد یکسانی را ارائه دهند. و مهم تر این است که از کدبندی شروع کنید تا اینکه مدام درگیر این باشید که کدام چارچوب بهتر است.
بعضی از کارخانه های کاربردی پایتون برای توسعه وب که باید آنها را به یاد داشته باشید:
مرحله ۱: HTML + CSS
زمانی که شروع به توسعه وب می کنید، بسیار مهم است که اول HTML و CSS را یاد بگیرید که جزء موارد پایه ای برای یادگیری این هستند که چگونه وبسایت بسازیم. اگر یاد گرفتید که چگونه ساختار صفحات ایستا را ایجاد کنید تا در مسیر توسعه وب قرار بگیرید، در واقع در بهترین حالت هستید. همچنین یاد گرفتن مفاهیمی مثل اینترنت، HTTP، مرورگرها، DNS، میزبان و … هم به شما کمک می کند.
همچنین می توانید یک چارچوب CSS را مانند Materialize و Bootstrap را یاد بگیرید که سرعت توسعه وب را به طرز چشمگیری بالا می برد اما همیشه هم نیاز نیست.
مرحله ۲: جاوا اسکریپت
مرحله بعدی یادگیری وانیلا جاوا اسکریپت است. باید مفاهیم پایه مانند انواع دیتا، متغیرها، قراردادهای عمومی، سلسله مهارت ها، محاسبات و اوپراتورها، کنترل عبارات، لوپ ها و … را یاد بگیرید. یاد گرفتن موارد پایه جاوا اسکریپت، کار را برای اعمال روی کد مشتری جاوا اسکریپت آسان می کند.
مرحله ۳: DOM و jQuery
بعد از اینکه موارد پایه جاوا اسکریپت را یاد گرفتید، باید یاد بگیرید که چگونه DOM و jQuery را به کار بگیرید که یک کتابخانه جاوا اسکریپت است و باعث به کارگیری راحت تر DOM می شود. اکنون می دانید که چگونه صفحات داینامیک را ایجاد کنید.
چارچوب پیشین (انتخابی)
شاید نیاز نباشد که چارچوب پیشین را مانند اپلیکیشن کامل وب را برای ساخت یاد بگیرید، اما یادگیری آن را پیشنهاد می کنیم. این کار نه تنها به شما کمک می کند که SPA های زیبا بسازید، اما اغلب برای توسعه دهنده های کامل یا پیشین به کار گرفته می شود.
مرحله ۴: پایتون
اکنون در بک اند، باید موارد پایه پایتون را دقیقا مانند دوره های قبل در جاوا اسکریپت قبل از یادگیری DOM به کار بگیرید. یادگیری موارد پایه شما را برای جنگو اماده می کند، بنابراین احتمالا درگیری خیلی زیادی نخواهید داشت. یادگیری مقدمات پایتون، خیلی هم اعجاب انگیز نیست، و مفاهیم آن شبیه به جاوا اسکریپت است.
مرحله ۵: جنگو + دیتابیس
با جنگو، قادر خواهید بود که محیط پشت صحنه را را آماده کنید و منطق بیزینس را توسعه دهید. همچنین می توانید در مورد دیتابیس ها مانند ، SQLite، چگونگی طرح سوال و عملکرد CRUD چیزهایی را یاد بگیرید. با این روش می توانید یک اپلیکیشن کامل داشته باشید!
اول یک اپلیکیشن فلاسک “hello world” به عنوان مقدمه ای برای چارچوب های وب پایتون بسازید
نصب فلاسک
اولین کاری که نیاز دارید، نصب فلاسک است. بسته به نوع نسخه ای از پایتون که استفاده می کنید، باید از pip یا pip3 استفاده کنید.
اپلیکیشن فلاسک
در مرحله بعد، یک فایل به نام hello.py با کد زیر بسازید.
from flask import Flask
app = Flask(__name__)
@app.route(“/”)
def hello():
return “Hello World!”
if __name__ == “__main__”:
app.run()
تبریک! اکنون شما در مسیر متخصص شدن در توسعه وب با پایتون هستید. باید یک دیدگاه کلی از چگونگی اجرای پایتون در داخل توسعه دهنده های وب و کاربردهایش داشته باشید. با این مفهوم، مسیرهای زیادی دارید که می توانید یادگیری پایتون را در آن دنبال کنید.
منبع: