بوت کمپ تابستانه آموزش برنامهنویسی بک اند کاشان
بوت کمپ بک اند در کاشان؛ آموزش Python، Django و PostgreSQL
شاید موقع کار با یک سایت برایتان سؤال شده باشد که پشت دکمه ثبتنام، ورود کاربر، ذخیره یک سفارش یا نمایش اطلاعات حساب چه اتفاقی میافتد. بخش زیادی از این کارها در بک اند انجام میشود؛ همان قسمتی از یک سیستم که کاربر معمولاً نمیبیند، اما تقریباً همه چیز به آن وابسته است.
در بوت کمپ بک اند وارناپاد از Python شروع میکنیم و مرحلهبهمرحله به Django، PostgreSQL، ساخت API، Git و اجرای پروژه روی سرور میرسیم. هدف این نیست که فقط اسم ابزارها را بشناسید؛ قرار است با آنها کار کنید.
پشت یک سایت واقعی چه خبر است؟
فرض کنید در یک فروشگاه اینترنتی ثبتنام میکنید. ایمیل و رمز عبورتان باید بررسی شود، اطلاعات حساب در جایی ذخیره شود و دفعه بعد که وارد سایت میشوید، سیستم شما را بشناسد.
حالا اگر محصولی هم سفارش دهید، اطلاعات سفارش، قیمت، وضعیت پرداخت و کاربری که سفارش را ثبت کرده باید با هم ارتباط داشته باشند. این همان جایی است که کار بک اند جدی میشود.
در طول دوره سعی میکنیم این اتفاقها را فقط در حد تعریف یاد نگیریم. هر مفهوم را جایی در کد میبینیم تا مشخص شود واقعاً در یک پروژه چه کاربردی دارد.
بک اند فقط Python یا Django نیست
اوایل مسیر طبیعی است که بک اند را با یک زبان یا فریمورک بشناسیم، اما وقتی وارد پروژه میشویم خیلی زود مشخص میشود که داستان بزرگتر از این حرفهاست.
کد باید بتواند با دیتابیس صحبت کند، اطلاعات ورودی را بررسی کند، دسترسی کاربران را کنترل کند، به فرانت اند پاسخ بدهد و در شرایط مختلف خطاها را مدیریت کند.
برای همین سرفصلها جدا از هم آموزش داده نمیشوند. چیزی که در Python یاد میگیریم بعداً در Django استفاده میشود، Django به دیتابیس وصل میشود و API راه ارتباط سیستم با بخشهای دیگر را میسازد.
چیزهایی که در طول مسیر با آنها کار میکنیم
اول باید بتوانیم مسئله را به کد تبدیل کنیم
از مفاهیم پایه برنامهنویسی شروع میکنیم: متغیر، شرط، حلقه، تابع، ساختار داده و حل مسئله. اینها پایهای هستند که بعداً تقریباً همه بخشهای پروژه روی آن ساخته میشوند.
کدها کمکم تبدیل به یک Web Application میشوند
با ساختار پروژه Django، Model، View، URL و اجزای اصلی آن کار میکنیم تا بتوانیم کدهای پراکنده را داخل یک پروژه منظم و قابل توسعه قرار دهیم.
دادهها باید ساختار داشته باشند
کاربر، محصول، سفارش یا هر اطلاعات دیگری باید جایی ذخیره شود. با PostgreSQL یاد میگیریم این اطلاعات چطور سازماندهی میشوند و بخشهای مختلف داده چه ارتباطی با یکدیگر دارند.
بک اند باید با بقیه سیستم حرف بزند
با Django REST Framework سراغ API میرویم. یعنی همان مسیری که فرانت اند، اپلیکیشن موبایل یا سرویس دیگری از طریق آن اطلاعات را از بک اند میگیرد یا برایش ارسال میکند.
پروژه واقعی بدون مدیریت کد خیلی زود شلوغ میشود
با Git تغییرات پروژه را دنبال میکنیم و با Branch و Pull Request آشنا میشویم تا کد فقط مجموعهای از فایلهایی نباشد که هر بار نسخه جدیدشان را با اسم دیگری ذخیره میکنیم.
پروژه باید از لپتاپ ما بیرون بیاید
تا زمانی که برنامه فقط روی سیستم خودمان اجرا شود، هنوز بخشی از مسیر باقی مانده است. در ادامه با روند اولیه آمادهسازی و اجرای پروژه روی سرور هم آشنا میشویم.
پروژهمحور بودن یعنی اشتباه کنید، خطا بگیرید و خودتان راهحل پیدا کنید
برنامهنویسی با دیدن کد دیگران یاد گرفته نمیشود. تا وقتی خودتان چیزی ننویسید و با خطاهایش درگیر نشوید، خیلی از مفاهیم فقط در حد تعریف باقی میمانند.
ممکن است API پاسخ اشتباه بدهد، ارتباط دیتابیس درست نباشد یا برنامه در شرایطی که انتظارش را ندارید خطا کند. پیدا کردن دلیل همین مشکلات بخشی از یادگیری واقعی است.
برای همین پروژه را چیزی جدا از کلاس نمیبینیم. هر چیزی که یاد میگیریم باید جایی در کد استفاده شود تا در پایان، پروژه نتیجه طبیعی مسیر دوره باشد.
مسیر دوره قدمبهقدم جلو میرود
قبل از هر چیز باید بتوانیم منطق یک مسئله را بفهمیم و آن را به کد تبدیل کنیم.
حالا کدها را داخل ساختار یک پروژه وب واقعی قرار میدهیم.
اطلاعات را ذخیره میکنیم و راه ارتباط بک اند با بخشهای دیگر را میسازیم.
یاد میگیریم تغییرات پروژه را طوری مدیریت کنیم که قابل پیگیری باشند.
در پایان با مسیر آمادهسازی پروژه برای اجرا روی سرور آشنا میشویم.
وقتی دیتابیس و API را کنار هم ببینید، خیلی چیزها روشنتر میشود
فرض کنید یک اپلیکیشن موبایل قرار است لیست محصولات یک فروشگاه را نمایش دهد. اطلاعات محصولات جایی در دیتابیس قرار دارند، اما اپلیکیشن موبایل قرار نیست مستقیم به PostgreSQL متصل شود.
بک اند اطلاعات را از دیتابیس میگیرد، منطق لازم را روی آن اجرا میکند و از طریق API پاسخ مناسب را برای اپلیکیشن یا فرانت اند میفرستد.
وقتی این جریان را خودتان پیادهسازی کنید، مفاهیمی مثل Model، Database و API دیگر سه موضوع جداگانه نیستند؛ میبینید چطور در یک سیستم واقعی به هم وابستهاند.
یک پروژه واقعی فقط با نوشتن کد جلو نمیرود
تصور کنید دو نفر همزمان روی یک پروژه کار میکنند. یکی سیستم کاربران را تغییر میدهد و نفر دوم روی بخش سفارشها کار میکند. بدون یک روش درست برای مدیریت نسخه، خیلی زود همه چیز به هم میریزد.
به همین دلیل Git و GitHub را صرفاً یک ابزار جانبی در نظر نمیگیریم. Branch، Commit و Pull Request چیزهایی هستند که در پروژههای تیمی مرتب با آنها روبهرو میشوید.
در نهایت هم پروژه باید بتواند روی سرور اجرا شود. آشنایی با مسیر دیپلوی کمک میکند تصویر کاملتری از زندگی واقعی یک پروژه نرمافزاری داشته باشید.
این دوره برای چه کسی مناسبتر است؟
اگر از آموزشهای پراکنده خسته شدهاید و احساس میکنید هر بار یک موضوع جدید شروع میکنید بدون اینکه مسیر قبلی کامل شده باشد، داشتن یک برنامه مشخص میتواند کمک زیادی کند.
- کسانی که به برنامه نویسی سمت سرور علاقه دارند
- افرادی که میخواهند Python را وارد پروژه واقعی کنند
- کسانی که دوست دارند Django را از پایه و منظم یاد بگیرند
- دانشجویان و هنرجویانی که میخواهند بیشتر کد بزنند و کمتر فقط تماشا کنند
- کسانی که قصد دارند با ساخت API و دیتابیس آشنا شوند
- علاقهمندان کاشان و شهرهای اطراف که دوره حضوری را ترجیح میدهند
قرار نیست چند آموزش جدا از هم ببینید و خودتان ارتباطشان را حدس بزنید
اطلاعات برگزاری بوت کمپ بک اند وارناپاد
چیزی که اهمیت دارد این است که بتوانید خودتان دست به کد شوید
بعد از دوره هدف این نیست که فقط بتوانید توضیح دهید Django چیست یا REST API چه کاری انجام میدهد. مهمتر این است که وقتی پروژهای مقابلتان قرار میگیرد، بدانید از کجا باید شروع کنید.
باید بتوانید ساختار پروژه را بخوانید، مدلهای دیتابیس را بسازید، API ایجاد کنید، کدتان را با Git مدیریت کنید و تصویر روشنی از قدم بعدی مسیر یادگیری خود داشته باشید.
اینترنت پر از آموزش است؛ مسئله این است که از کدام شروع کنیم
اگر عبارت Python یا Django را جستجو کنید، با تعداد زیادی مقاله، ویدئو و دوره روبهرو میشوید. مشکل معمولاً کمبود محتوا نیست؛ مشکل ترتیب یادگیری است.
خیلی راحت میشود امروز Python خواند، فردا سراغ Docker رفت و پسفردا یک آموزش Django REST Framework باز کرد؛ در حالی که هنوز بعضی از پایهها کاملاً جا نیفتادهاند.
بوت کمپ بک اند وارناپاد برای افرادی که به دنبال آموزش حضوری برنامه نویسی بک اند در کاشان هستند، مسیر را مرحلهبهمرحله جلو میبرد تا هر موضوع زمانی وارد آموزش شود که پایه لازم برای آن وجود داشته باشد.
سوالات متداول درباره بوت کمپ بک اند وارناپاد
اگر Python بلد نباشم میتوانم در دوره شرکت کنم؟
بله. دوره از مفاهیم پایه شروع میشود و سپس مرحلهبهمرحله به Django، دیتابیس و بخشهای پیشرفتهتر میرسد.
در دوره با دیتابیس هم کار میکنیم؟
بله. PostgreSQL یکی از بخشهای اصلی مسیر است و دیتابیس در ارتباط با همان پروژهای که روی آن کار میکنید استفاده میشود.
REST API هم آموزش داده میشود؟
بله. با Django REST Framework سراغ ساخت API میرویم و مفاهیم مربوط به ارتباط بک اند با بخشهای دیگر پروژه را تمرین میکنیم.
پروژه واقعی هم انجام میشود؟
بله. پروژه بخش اصلی مسیر آموزشی است و مطالبی که در طول دوره یاد میگیرید بهتدریج وارد همان پروژه میشوند.
Git و GitHub هم جزو دوره هستند؟
بله. مدیریت نسخه، Branch و Pull Request جزو موضوعاتی هستند که برای نزدیک شدن به روند کار واقعی تیمهای توسعه بررسی میشوند.
بعد از دوره امکان معرفی به پروژه وجود دارد؟
هنرجویانی که عملکرد مناسبی داشته باشند و توانایی خود را در تمرینها و پروژه نشان دهند، میتوانند فرصت معرفی به پروژهها یا تیمهای توسعه را داشته باشند.
بوت کمپ کجا برگزار میشود؟
دوره بهصورت حضوری در آموزشگاه وارناپاد در کاشان برگزار میشود. برای اطلاع از برنامه دقیق و ظرفیت ثبتنام میتوانید با مجموعه تماس بگیرید.
