اپلیکیشن اندرویدی فلشکارت آموزشی ساخت و پیادهسازی APIهای وب با FastAPI و اصول توسعه سمت سرور
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره ساخت و پیادهسازی APIهای وب با FastAPI و اصول توسعه سمت سرور
موضوع کلی: توسعه نرمافزارهای کاربردی و وب
موضوع میانی: مبانی و ابزارهای توسعه سمت سرور (Backend)
📋 سرفصلهای دوره
- 1. مقدمهای بر توسعه وب و APIها
- 2. آشنایی با مفاهیم توسعه سمت سرور
- 3. معرفی چارچوب FastAPI
- 4. نصب و راهاندازی محیط توسعه FastAPI
- 5. ساخت اولین API با FastAPI
- 6. مبانی درخواستها و پاسخها در HTTP
- 7. انواع متدهای HTTP (GET, POST, PUT, DELETE)
- 8. کار با پارامترهای مسیر (Path Parameters)
- 9. کار با پارامترهای کوئری (Query Parameters)
- 10. کار با بدنه درخواست (Request Body)
- 11. اعتبارسنجی دادهها با Pydantic
- 12. مدلهای Pydantic برای اعتبارسنجی
- 13. تعریف فیلدهای اجباری و اختیاری
- 14. اعتبارسنجی انواع دادهها
- 15. کار با انواع پیچیدهتر دادهها در Pydantic
- 16. مدیریت خطاها و استثناها در FastAPI
- 17. کدهای وضعیت HTTP (Status Codes)
- 18. پاسخهای سفارشی در FastAPI
- 19. مقدمهای بر پایگاههای داده
- 20. انواع پایگاههای داده رابطهای (SQL)
- 21. انواع پایگاههای داده غیررابطهای (NoSQL)
- 22. آشنایی با SQLAlchemy برای کار با پایگاه داده
- 23. نصب و پیکربندی SQLAlchemy
- 24. تعریف مدلهای پایگاه داده با SQLAlchemy
- 25. ایجاد جداول در پایگاه داده
- 26. عملیات CRUD (Create, Read, Update, Delete)
- 27. ذخیره دادهها در پایگاه داده
- 28. بازیابی دادهها از پایگاه داده
- 29. بهروزرسانی دادهها در پایگاه داده
- 30. حذف دادهها از پایگاه داده
- 31. کار با روابط بین جداول
- 32. یک به یک، یک به چند، چند به چند
- 33. مقدمهای بر احراز هویت (Authentication)
- 34. انواع مکانیزمهای احراز هویت
- 35. احراز هویت مبتنی بر توکن (Token-based Authentication)
- 36. پیادهسازی احراز هویت با JWT (JSON Web Tokens)
- 37. نصب کتابخانه `python-jose`
- 38. ایجاد توکن JWT
- 39. اعتبارسنجی توکن JWT
- 40. کار با `OAuth2` در FastAPI
- 41. مقدمهای بر مجوزها (Authorization)
- 42. مدیریت سطوح دسترسی کاربران
- 43. پیادهسازی مجوزهای مبتنی بر نقش (Role-based Authorization)
- 44. مقدمهای بر تست نرمافزار
- 45. اهمیت تست در توسعه نرمافزار
- 46. انواع تستها (واحد، یکپارچهسازی، پایانی)
- 47. نوشتن تستهای واحد برای APIها
- 48. استفاده از `pytest` برای تست
- 49. آشنایی با `httpx` برای تست API
- 50. تست درخواستهای GET
- 51. تست درخواستهای POST
- 52. تست اعتبارسنجی دادهها
- 53. تست مدیریت خطاها
- 54. مقدمهای بر اصول طراحی API (API Design Principles)
- 55. طراحی RESTful APIها
- 56. استفاده از قراردادهای نامگذاری مناسب
- 57. مستندسازی API
- 58. مستندسازی خودکار با Swagger UI و ReDoc
- 59. تولید مستندات API با FastAPI
- 60. مقدمهای بر تسکهای پسزمینه (Background Tasks)
- 61. اجرای تسکها در پسزمینه
- 62. کار با `BackgroundTasks` در FastAPI
- 63. مدیریت تسکهای طولانیمدت
- 64. مقدمهای بر معماری میکروسرویس
- 65. مفاهیم و مزایای میکروسرویسها
- 66. چالشهای معماری میکروسرویس
- 67. ارتباط بین میکروسرویسها
- 68. مقدمهای بر Docker و کانتینرسازی
- 69. مفاهیم کانتینر و Docker
- 70. نصب و راهاندازی Docker
- 71. نوشتن `Dockerfile` برای برنامه FastAPI
- 72. ساخت ایمیج Docker
- 73. اجرای برنامه در کانتینر
- 74. مقدمهای بر استقرار (Deployment)
- 75. روشهای مختلف استقرار اپلیکیشنها
- 76. استقرار برنامه FastAPI بر روی سرور
- 77. استقرار با استفاده از Gunicorn و Uvicorn
- 78. مقدمهای بر ذخیرهسازی دادهها (Caching)
- 79. اهمیت Caching در بهبود عملکرد
- 80. استراتژیهای Caching
- 81. کار با Redis برای Caching
- 82. نصب و پیکربندی Redis
- 83. پیادهسازی Caching در FastAPI با Redis
- 84. مقدمهای بر مفاهیم امنیتی وب
- 85. حملات رایج وب (XSS, CSRF)
- 86. پیشگیری از حملات امنیتی
- 87. امنیت در APIها
- 88. اهمیت بهروزرسانی وابستگیها
- 89. مقدمهای بر ابزارهای CI/CD (Continuous Integration/Continuous Deployment)
- 90. مفاهیم CI/CD
- 91. استفاده از GitHub Actions برای CI/CD
- 92. پیکربندی پایپلاین CI/CD
- 93. مقدمهای بر اصول SOLID در طراحی نرمافزار
- 94. تکمسئولیتی (Single Responsibility Principle)
- 95. اصل باز-بسته (Open/Closed Principle)
- 96. اصل جایگزینی لیسکوف (Liskov Substitution Principle)
- 97. اصل جداسازی رابط (Interface Segregation Principle)
- 98. اصل وارونگی وابستگی (Dependency Inversion Principle)
- 99. مقدمهای بر طراحی دیتابیس بهینه
- 100. نرمالسازی دیتابیس
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.