ساخت یک REST API بکاند با پایتون و جنگو - پیشرفته
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- راهاندازی یک سرور توسعه محلی با داکر
- نوشتن یک پروژه پایتون با توسعه مبتنی بر تست
- ساخت یک REST API با ویژگیهای پیشرفته مانند آپلود و مشاهده تصاویر
- یک بکاند ایجاد کنید که بتواند بهعنوان پایهای برای پروژههای آینده یا MVP شما استفاده شود.
- کسب تجربه عملی در بهکارگیری اصول بهترین شیوهها مانند PEP-8 و تستهای واحد
- پیکربندی Travis-CI برای خودکارسازی بررسیهای کد
پیشنیازهای دوره
- دانش اولیه برنامهنویسی و ساخت اپلیکیشنهای ساده
- آشنایی با جنگو
- راحتی در استفاده از ابزارهای خط فرمان (ترمینال و پرامپت فرمان)
- سیستم مک، لینوکس یا ویندوز که توانایی اجرای داکر را داشته باشد. (شامل Windows 10 Home نیست)
- نگرش مثبت و اشتیاق برای یادگیری!
توضیحات دوره
توجه: این دوره از شما میخواهد Docker Desktop را از وبسایت داکر دانلود کنید.
به دوره پیشرفته ساخت یک REST API بکاند با پایتون، جنگو (3.2)، Django REST Framework (3.12)، داکر، GitHub Actions، Postgres و توسعه مبتنی بر تست خوش آمدید!
چه یک برنامهنویس فریلنسر باشید، چه یک کارآفرین حوزه فناوری یا تازه شروع به ساخت بکاند کرده باشید، این دوره به شما کمک میکند پایه دانش خود را بسازید و ابزارهایی در اختیارتان بگذارد تا مهارتهای خود را با برخی از پرتقاضاترین زبانهای برنامهنویسی امروز ارتقا دهید.
APIها قهرمانان گمنام پشت فناوریهایی هستند که همه ما دوست داریم و بهطور مداوم از آنها استفاده میکنیم.
یکی از حیاتیترین اجزا برای هر کسبوکار مبتنی بر فناوری، API است. بنابراین دانستن اینکه چگونه یک API را از ابتدا تا انتها بسازید، مهارتی ضروری برای هر توسعهدهنده است. بدون یک REST API بکاند، نمیتوانید یک اپلیکیشن موفق بسازید!
در این دوره به شما نشان میدهیم چگونه یک API پیشرفته بسازید که بتواند ایجاد و بروزرسانی پروفایلهای کاربری، تغییر رمز عبور، ایجاد اشیا، آپلود تصاویر، فیلترینگ و جستجوی اشیا و غیره را مدیریت کند.
بهترین راه برای یادگیری هر چیزی، انجام دادن آن است. بنابراین بخش عملی دوره، پروژهای که همراه مدرس خواهید ساخت، یک API، به طور دقیقتر، یک Recipe API است.
شما یاد میگیرید چگونه یک Recipe API پیشرفته بسازید که به شما اجازه میدهد برخی از دستورهای غذایی موردعلاقهتان را از روی عکسها و وب آپلود و ذخیره کنید.
شما یاد میگیرید چگونه اشیا، یعنی دستورهای غذایی، را با عنوان، قیمت، زمان پخت، مواد اولیه و تگهایی مانند “غذای حالخوبکن”، “وگان” یا “دسر” ایجاد کنید. آن را مانند یک جعبه دستور غذای مجازی در نظر بگیرید.
تا پایان این دوره، یک REST API کاملاً کاربردی ساختهاید که میتواند موارد زیر را مدیریت کند:
- احراز هویت کاربر
- ایجاد اشیا
- فیلترینگ و مرتبسازی اشیا
- آپلود و مشاهده تصاویر
همچنین بهصورت دقیق یاد میگیرید چگونه کارهای زیر را انجام دهید:
- یک پروژه را با داکر و Docker-Compose راهاندازی کنید.
- GitHub Actions را طوری پیکربندی کنید که linting و تستهای واحد را بهصورت خودکار اجرا کند.
- با Django Test Framework تست واحد بنویسید.
- اصول بهترین شیوهها از جمله توسعه مبتنی بر تست را بهکار بگیرید.
- آپلود فایلهای رسانهای را با جنگو مدیریت کنید.
- ادمین جنگو را سفارشیسازی کنید.
- یک پایگاه داده Postgres را پیکربندی کنید.
این دوره تنها یک هدف مشخص دارد که آموزش ساخت یک API پیشرفته از ابتدا تا انتها با اصول بهترین شیوهها و توسعه مبتنی بر تست است.
این دوره برای شما مناسب نیست:
- اگر به دنبال دورهای هستید که هم API، هم فرانتاند و هم استقرار را آموزش دهد.
- اگر میخواهید در یک دوره 10 اپلیکیشن مختلف بسازید.
- اگر میخواهید با فناوریها و رویکردهای بسیار متنوع برای توسعه اپلیکیشن بهطور کلی آشنا شوید.
این دوره عملی است و کمی تئوری و فرصتهای فراوان برای آزمودن دانش شما دارد.
محتوا چالشبرانگیز اما پاداشدهنده است. آمادهاید؟ بیایید شروع کنیم!
لطفاً توجه داشته باشید: نمیتوانید داکر را روی نسخه Windows 10 Home اجرا کنید. دلیل آن این است که برای استفاده از Hyper-V که داکر برای مجازیسازی از آن استفاده میکند، به Windows 10 Pro یا Enterprise نیاز دارید. برای گذراندن این دوره، دو گزینه پیش رو دارید. این موارد در درس 6 پوشش داده شدهاند که پیش از شرکت در دوره میتوانید مشاهده کنید.
این دوره برای چه کسانی مناسب است؟
- برنامهنویسان سطح متوسط که از قبل تا حدی با پایتون آشنا هستند و میخواهند مهارت خود را ارتقا دهند.
- توسعهدهندگانی که در زبانهای دیگر مهارت دارند، اما میخواهند پایتون را به ابزارهای خود اضافه کنند.
ساخت یک REST API بکاند با پایتون و جنگو - پیشرفته
-
نیازمندیهای فنی 01:08
-
جزئیات API و ارتقاها 01:55
-
ساختار دوره 01:53
-
دریافت کمک 05:16
-
بررسی اپلیکیشن 04:09
-
فناوریها 02:28
-
ساختار پروژه جنگو 01:02
-
توسعه مبتنی بر تست چیست؟ 03:24
-
آزمون توسعه مبتنی بر تست None
-
چه چیزهایی را نصب کنیم؟ 00:54
-
تأیید راهاندازی [همراهی کنید] 01:35
-
بررسی پروژه جدید 06:26
-
ایجاد پروژه GitHub [همراهی کنید] 05:27
-
داکر و جنگو 04:25
-
تعریف نیازمندیهای پایتون [همراهی کنید] 03:46
-
ایجاد Dockerfile پروژه [همراهی کنید] 17:46
-
ایجاد پیکربندی Docker Compose [همراهی کنید] 04:03
-
Linting و تستها 03:04
-
پیکربندی flake8 [همراهی کنید] 10:04
-
ایجاد پروژه جنگو [همراهی کنید] 02:39
-
اجرای پروژه با Docker Compose [همراهی کنید] 01:58
-
بررسی راهاندازی پروژه 01:03
-
آزمون: داکر و Docker Compose None
-
GitHub Actions چیست؟ 02:30
-
پیکربندی GitHub Actions 04:09
-
ایجاد پیکربندی GitHub Actions [همراهی کنید] 11:15
-
تست GitHub Actions [همراهی کنید] 06:49
-
آزمون: پیکربندی GitHub Actions None
-
تست در جنگو 07:43
-
نوشتن یک تست [همراهی کنید] 05:35
-
نوشتن یک تست با TDD [همراهی کنید] 03:54
-
ماک کردن 04:23
-
تست درخواستهای وب 02:25
-
مشکلات رایج در تست 03:53
-
آزمون: TDD با جنگو None
-
بررسی معماری پایگاه داده 04:51
-
افزودن سرویس پایگاه داده [همراهی کنید] 06:47
-
پیکربندی پایگاه داده با جنگو 08:13
-
نصب adaptor پایگاه داده PostgreSQL [همراهی کنید] 05:29
-
پیکربندی پایگاه داده در جنگو [همراهی کنید] 02:53
-
فیکس کردن race condition پایگاه داده 04:46
-
ایجاد اپلیکیشن اصلی [همراهی کنید] 02:05
-
نوشتن تستها برای فرمان wait_for_db [همراهی کنید] 19:45
-
افزودن فرمان wait_for_db [همراهی کنید] 09:15
-
مهاجرتهای پایگاه داده 07:54
-
بروزرسانی Docker Compose و CI-CD [همراهی کنید] 04:21
-
خلاصه 00:57
-
مدل کاربر جنگو 05:16
-
طراحی مدل کاربر سفارشی 02:08
-
افزودن تستهای مدل کاربر [همراهی کنید] 07:01
-
پیادهسازی مدل کاربر [همراهی کنید] 17:27
-
نرمالسازی آدرسهای ایمیل [همراهی کنید] 06:10
-
الزامی کردن ورودی ایمیل [همراهی کنید] 02:50
-
افزودن پشتیبانی از ابرکاربر [همراهی کنید] 04:29
-
تست مدل کاربر [همراهی کنید] 02:40
-
خلاصه ایجاد مدل کاربر 00:24
-
بررسی ادمین جنگو 04:00
-
نوشتن تست برای فهرست کردن کاربران [همراهی کنید] 07:58
-
فهرست کاربران ادمین جنگو [همراهی کنید] 05:16
-
پشتیبانی از تغییر کاربران [همراهی کنید] 08:19
-
پشتیبانی از ایجاد کاربران [همراهی کنید] 05:15
-
اهمیت مستندسازی API 04:34
-
مستندسازی خودکار با DRF 06:11
-
آزمون: مستندسازی None
-
نصب drf-spectacular [همراهی کنید] 03:51
-
پیکربندی URLها [همراهی کنید] 03:32
-
تست Swagger UI [همراهی کنید] 01:49
-
خلاصه 00:27
-
طراحی User API 02:03
-
ایجاد اپلیکیشن کاربر [همراهی کنید] 02:13
-
نوشتن تست برای create user API [همراهی کنید] 14:03
-
پیادهسازی create user API [همراهی کنید] 13:47
-
احراز هویت 07:59
-
آزمون: احراز هویت None
-
نوشتن تست برای token API [همراهی کنید] 07:11
-
پیادهسازی token API [همراهی کنید] 13:49
-
نوشتن تست برای manage user API [همراهی کنید] 10:11
-
پیادهسازی manage user API [همراهی کنید] 09:20
-
بررسی User API در مرورگر [همراهی کنید] 07:00
-
خلاصه 00:53
-
طراحی Recipe API 01:54
-
APIView در مقابل Viewsetها 03:59
-
نوشتن تست برای مدل دستور تهیه [همراهی کنید] 05:57
-
پیادهسازی مدل دستور تهیه [همراهی کنید] 09:13
-
ایجاد اپلیکیشن دستور تهیه [همراهی کنید] 01:30
-
نوشتن تست برای فهرست کردن دستورهای تهیه [همراهی کنید] 16:26
-
پیادهسازی recipe listing API [همراهی کنید] 11:53
-
نوشتن تست برای recipe detail API [همراهی کنید] 04:03
-
پیادهسازی recipe detail API [همراهی کنید] 06:26
-
نوشتن تست برای ایجاد دستورهای تهیه [همراهی کنید] 06:11
-
پیادهسازی create recipe API [همراهی کنید] 02:31
-
افزودن تستهای اضافی [همراهی کنید] 16:07
-
بررسی recipe API در مرورگر [همراهی کنید] 08:34
-
خلاصه 00:25
-
طراحی Tags API 01:27
-
افزودن مدل تگ [همراهی کنید] 07:14
-
نوشتن تست برای فهرست کردن تگها [همراهی کنید] 14:01
-
پیادهسازی tag listing API [همراهی کنید] 07:28
-
نوشتن تست برای بروزرسانی تگها [همراهی کنید] 04:15
-
پیادهسازی update tag API [همراهی کنید] 01:45
-
نوشتن تست برای حذف تگها [همراهی کنید] 02:38
-
پیادهسازی delete tag API [همراهی کنید] 01:12
-
serializerهای تو در تو 02:16
-
نوشتن تست برای ایجاد تگها [همراهی کنید] 11:40
-
پیادهسازی ویژگی ایجاد تگ [همراهی کنید] 07:36
-
نوشتن تست برای بروزرسانی تگهای دستور تهیه [همراهی کنید] 09:56
-
پیادهسازی قابلیت بروزرسانی تگهای دستور تهیه [همراهی کنید] 07:04
-
بررسی tags API در مرورگر [همراهی کنید] 05:26
-
خلاصه 00:28
-
طراحی ingredients API 02:20
-
افزودن مدل مواد اولیه [همراهی کنید] 05:53
-
نوشتن تست برای فهرست کردن مواد اولیه [همراهی کنید] 12:51
-
پیادهسازی ingredient listing API [همراهی کنید] 06:32
-
نوشتن تست برای بروزرسانی مواد اولیه [همراهی کنید] 04:05
-
پیادهسازی update ingredient API [همراهی کنید] 01:31
-
نوشتن تست برای حذف مواد اولیه [همراهی کنید] 03:16
-
پیادهسازی delete ingredient API [همراهی کنید] 00:50
-
نوشتن تست برای ایجاد مواد اولیه [همراهی کنید] 11:44
-
پیادهسازی قابلیت ایجاد مواد اولیه [همراهی کنید] 06:51
-
نوشتن تست برای بروزرسانی مواد اولیه دستور غذایی [همراهی کنید] 10:04
-
پیادهسازی قابلیت بروزرسانی مواد اولیه دستور غذایی [همراهی کنید] 02:29
-
ریفکتورینگ 01:27
-
ریفکتورینگ viewهای دستور غذایی [همراهی کنید] 05:21
-
بررسی ingredient API در مرورگر [همراهی کنید] 05:12
-
خلاصه 00:36
-
طراحی Recipe image API 02:04
-
افزودن وابستگیهای مدیریت تصویر [همراهی کنید] 02:54
-
فایلهای استاتیک با جنگو و داکر 08:11
-
پیکربندی پروژه برای فایلهای استاتیک [همراهی کنید] 08:50
-
اصلاح مدل دستور غذایی [همراهی کنید] 10:11
-
نوشتن تستها برای آپلود تصاویر [همراهی کنید] 12:30
-
پیادهسازی image API [همراهی کنید] 10:08
-
بررسی آپلود تصویر در مرورگر [همراهی کنید] 05:27
-
خلاصه 00:24
-
طراحی فیلترینگ 04:45
-
افزودن تست برای فیلترینگ دستورهای غذایی [همراهی کنید] 09:54
-
پیادهسازی قابلیت فیلتر دستورهای غذایی [همراهی کنید] 12:22
-
افزودن تست برای فیلترینگ تگها و مواد اولیه [همراهی کنید] 13:25
-
پیادهسازی فیلترینگ بر اساس تگ و ماده اولیه [همراهی کنید] 05:38
-
بررسی فیلترینگ در مرورگر [همراهی کنید] 07:30
-
خلاصه 00:26
-
برنامه استقرار 03:28
-
بررسی استقرار جنگو 11:37
-
افزودن uWSGI به پروژه [همراهی کنید] 09:14
-
ایجاد پیکربندیهای پروکسی [همراهی کنید] 11:52
-
ایجاد Dockerfile پروکسی [همراهی کنید] 09:18
-
مدیریت پیکربندی 01:41
-
ایجاد پیکربندی docker compose [همراهی کنید] 08:38
-
بروزرسانی تنظیمات جنگو [همراهی کنید] 08:59
-
ایجاد یک سرور مجازی 03:16
-
ایجاد حساب و کاربر AWS [همراهی کنید] 04:56
-
آپلود کلید SSH در AWS [همراهی کنید] 04:29
-
ایجاد نمونه EC2 [همراهی کنید] 04:57
-
راهاندازی کلید استقرار GitHub [همراهی کنید] 02:21
-
نصب داکر، Compose و Git [همراهی کنید] 03:14
-
کلون و پیکربندی پروژه [همراهی کنید] 03:19
-
اجرای سرویس [همراهی کنید] 02:50
-
بروزرسانی سرویس [همراهی کنید] 08:33
-
خلاصه استقرار 00:38
-
بررسی دوره 00:50
-
ارتقا به جنگو 4 [همراهی کنید] 04:12
مشخصات آموزش
ساخت یک REST API بکاند با پایتون و جنگو - پیشرفته
- تاریخ به روز رسانی: 1405/04/12
- سطح دوره:متوسط
- تعداد درس:161
- مدت زمان :14:46:41
- حجم :7.08GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy