اپلیکیشن اندرویدی فلشکارت آموزشی FastAPI و ساخت API برای مدیریت آگاهی
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب FastAPI و ساخت API برای مدیریت آگاهی
موضوع کلی: برنامه نویسی
موضوع میانی: فست ایپیآی (FastAPI)
📋 سرفصلهای کتاب (100 موضوع)
- 1. مقدمه ای بر وب سرویس ها و API ها
- 2. آشنایی با REST، GraphQL و RPC
- 3. مروری بر فریمورک های وب پایتون
- 4. چرا FastAPI؟ مزایا و ویژگی ها
- 5. تنظیم محیط توسعه: پایتون، venv، pip و ویرایشگر
- 6. اولین برنامه FastAPI: "سلام دنیا"
- 7. اجرای برنامه با Uvicorn
- 8. آشنایی با عملیات مسیر (Path Operations): GET
- 9. پارامترهای مسیر (Path Parameters)
- 10. نکات تایپی (Type Hints) برای پارامترهای مسیر
- 11. پارامترهای جستجو (Query Parameters)
- 12. پارامترهای جستجوی اختیاری
- 13. ترکیب پارامترهای مسیر و جستجو
- 14. عملیات مسیر POST، PUT، DELETE
- 15. مدل های پاسخ (Response Model) و Pydantic basics
- 16. مقدمه ای بر Pydantic
- 17. تعریف یک مدل Pydantic
- 18. استفاده از مدل های Pydantic در درخواست های POST
- 19. اعتبارسنجی خودکار بدنه درخواست
- 20. فیلدهای الزامی و اختیاری
- 21. مدل های تودرتو (Nested Models)
- 22. لیست هایی از مدل ها
- 23. به روزرسانی داده ها با PUT/PATCH و Pydantic
- 24. اعتبارسنجی پیشرفته فیلد با Field (min_length, gt, etc.)
- 25. حذف فیلدها از پاسخ با `exclude`
- 26. استفاده از `alias` و `description` برای فیلدها
- 27. مدیریت داده های اضافی با `Extra`
- 28. کلاس `Config` در Pydantic
- 29. اعتبارسنجی سفارشی با `validator`
- 30. استفاده از Type Aliases و Generic Models
- 31. مقدمه ای بر تزریق وابستگی (Dependency Injection) در FastAPI
- 32. توابع وابستگی ساده
- 33. وابستگی های همراه با `yield` (مدیریت منابع)
- 34. استفاده از وابستگی ها در `APIRouter`
- 35. وابستگی های سراسری (Global Dependencies)
- 36. معرفی OAuth2 و Password Flow
- 37. پیاده سازی OAuth2 با FastAPI (نام کاربری و رمز عبور)
- 38. ساخت و رمزگشایی توکن های JWT
- 39. استفاده از `Depends(oauth2_scheme)` برای احراز هویت
- 40. وابستگی `current_user` برای دسترسی به کاربر فعلی
- 41. مدیریت Scope ها برای مجوزها
- 42. کنترل دسترسی مبتنی بر نقش (RBAC) با وابستگی ها
- 43. احراز هویت با API Key
- 44. پیاده سازی روش های احراز هویت سفارشی
- 45. تست وابستگی ها
- 46. انتخاب نوع پایگاه داده: SQL در مقابل NoSQL
- 47. مقدمه ای بر SQLAlchemy ORM
- 48. تنظیم SQLAlchemy و FastAPI
- 49. مدیریت Session های پایگاه داده (وابستگی با yield)
- 50. تعریف مدل های SQLAlchemy
- 51. عملیات CRUD با SQLAlchemy: ایجاد (Create)
- 52. عملیات CRUD با SQLAlchemy: خواندن (Read) یک آیتم
- 53. عملیات CRUD با SQLAlchemy: خواندن (Read) چندین آیتم
- 54. عملیات CRUD با SQLAlchemy: به روزرسانی (Update)
- 55. عملیات CRUD با SQLAlchemy: حذف (Delete)
- 56. استفاده از Pydantic برای درخواست/پاسخ با مدل های SQLAlchemy
- 57. معرفی مهاجرت های پایگاه داده با Alembic
- 58. دستورات پایه Alembic (init, revision, upgrade, downgrade)
- 59. مقدمه ای بر MongoDB و Motor (Async MongoDB Driver)
- 60. عملیات پایه MongoDB (insert, find, update, delete)
- 61. وظایف پس زمینه (Background Tasks)
- 62. وبسوکتها (WebSockets) در FastAPI
- 63. ارائه فایل های استاتیک
- 64. مدیریت خطاها (HTTPException و خطاهای سفارشی)
- 65. سازماندهی کد با Router و APIRouter
- 66. میان افزارها (Middleware)
- 67. CORS (Cross-Origin Resource Sharing)
- 68. مقدمه ای بر تست برنامه های FastAPI
- 69. استفاده از `TestClient` و تست های واحد پایه
- 70. Mocking وابستگی ها برای تست
- 71. مدیریت آگاهی (KM) چیست؟
- 72. انواع آگاهی: صریح (Explicit) و ضمنی (Tacit)
- 73. مزایای پیاده سازی سیستم های مدیریت آگاهی
- 74. چرخه حیات مدیریت آگاهی (ایجاد، ذخیره، اشتراک، کاربرد)
- 75. اجزای اصلی یک سیستم مدیریت آگاهی
- 76. تعریف اقلام آگاهی (اسناد، مقالات، سوالات متداول، درس آموخته ها)
- 77. مدل سازی داده برای یک قلم آگاهی پایه (عنوان، محتوا، نویسنده، برچسب ها، دسته بندی)
- 78. طراحی Endpoints برای عملیات CRUD اقلام آگاهی
- 79. افزودن قابلیت نسخه بندی به اقلام آگاهی
- 80. طراحی قابلیت جستجو در سیستم آگاهی
- 81. مدل سازی داده برای برچسب ها (Tags) و دسته بندی ها (Categories)
- 82. طراحی Endpoints برای مدیریت برچسب ها و دسته بندی ها
- 83. مدل سازی تعاملات کاربران (لایک، کامنت، امتیاز)
- 84. اصول طراحی یک سیستم توصیه گر (Recommendation System)
- 85. طراحی مجوزها و کنترل دسترسی برای آگاهی ها
- 86. پیاده سازی CRUD برای اقلام آگاهی (با استفاده از پایگاه داده)
- 87. پیاده سازی جستجوی پیشرفته (مفاهیم جستجوی تمام متن)
- 88. پیاده سازی قابلیت برچسب گذاری (Tagging)
- 89. پیاده سازی قابلیت دسته بندی (Categorization)
- 90. پیاده سازی پایه نسخه بندی (Versioning)
- 91. پیاده سازی بازخورد کاربران (لایک، امتیاز)
- 92. یکپارچه سازی آپلود فایل برای دارایی های دانشی
- 93. تولید خلاصه ای از آگاهی (پردازش متن پایه)
- 94. API برای اشتراک گذاری آگاهی (مثلاً از طریق ایمیل)
- 95. پیاده سازی یک موتور توصیه گر ساده (مبتنی بر محتوا/همکاری)
- 96. مستندسازی API (Swagger UI و ReDoc)
- 97. بهترین روش ها برای Logging
- 98. کانتینرسازی با Docker
- 99. استقرار در محیط عملیاتی (Deploying to Cloud Providers)
- 100. بهترین روش های امنیتی برای API (Rate Limiting, Input Sanitization)
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.