اپلیکیشن اندرویدی فلشکارت آموزشی مستندسازی RESTful API ها (Swagger/OpenAPI)
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب مستندسازی RESTful API ها (Swagger/OpenAPI)
موضوع کلی: برنامه نویسی
موضوع میانی: RESTful API
📋 سرفصلهای کتاب (100 موضوع)
- 1. مقدمه ای بر برنامه نویسی و اهمیت API ها
- 2. مفاهیم بنیادی RESTful API: منابع و عملیات
- 3. متدهای HTTP در REST: GET, POST, PUT, DELETE, PATCH
- 4. کدهای وضعیت HTTP: موفقیت، خطاها، ریدایرکت ها
- 5. مفهوم بدون حالت (Statelessness) در REST
- 6. ضرورت و مزایای مستندسازی API ها
- 7. چالش های رایج در مستندسازی API
- 8. معرفی Swagger و OpenAPI: تاریخچه و اهداف
- 9. تفاوت های بین Swagger و OpenAPI Specification (OAS)
- 10. آشنایی با اکوسیستم ابزارهای Swagger
- 11. ساختار کلی یک سند OpenAPI
- 12. فرمت های YAML و JSON برای OpenAPI
- 13. آبجکت `openapi` و `info`: عنوان، نسخه، توضیحات
- 14. آبجکت `servers`: تعریف URL های پایه API
- 15. آبجکت `paths`: تعریف مسیرها و عملیات API
- 16. آبجکت `operation`: خلاصه، توضیحات، ID عملیات
- 17. تعریف عملیات GET برای بازیابی منابع
- 18. تعریف عملیات POST برای ایجاد منابع جدید
- 19. تعریف عملیات PUT برای به روزرسانی کامل منابع
- 20. تعریف عملیات DELETE برای حذف منابع
- 21. تعریف عملیات PATCH برای به روزرسانی جزئی منابع
- 22. استفاده از `tags` برای گروه بندی عملیات
- 23. آبجکت `parameters`: نام، مکان، توضیحات
- 24. پارامترهای مسیر (Path Parameters)
- 25. پارامترهای کوئری (Query Parameters)
- 26. پارامترهای هدر (Header Parameters)
- 27. پارامترهای کوکی (Cookie Parameters)
- 28. مشخص کردن پارامترهای الزامی و اختیاری (`required`)
- 29. تعریف `requestBody`: بدنه درخواست
- 30. آبجکت `content`: نوع محتوا (Media Type)
- 31. تعریف نوع داده (`schema`) برای بدنه درخواست
- 32. آبجکت `responses`: نگاشت کدهای وضعیت به پاسخ ها
- 33. آبجکت `response`: توضیحات، هدرها، محتوا
- 34. تعریف پاسخ برای کد وضعیت 200 OK
- 35. تعریف پاسخ برای کد وضعیت 201 Created
- 36. تعریف پاسخ برای کد وضعیت 204 No Content
- 37. تعریف پاسخ های خطا: 400 Bad Request, 401 Unauthorized
- 38. تعریف پاسخ های خطا: 403 Forbidden, 404 Not Found
- 39. تعریف پاسخ های خطا: 500 Internal Server Error
- 40. استفاده از `schema` برای تعریف ساختار بدنه پاسخ
- 41. افزودن مثال های پاسخ (Examples) به مستندات
- 42. معرفی Schema Object: پایه و اساس مدل سازی داده
- 43. انواع داده بنیادی: `string`, `number`, `integer`, `boolean`
- 44. فرمت های `string`: `date`, `date-time`, `email`, `uuid`, `binary`
- 45. تعریف لیست ها (Arrays) با `items`, `minItems`, `maxItems`
- 46. تعریف آبجکت ها (Objects) با `properties`, `required`
- 47. افزودن توضیحات (`description`) و مثال (`example`) به فیلدها
- 48. مقادیر پیش فرض (`default`) برای فیلدها
- 49. مقادیر مجاز (`enum`) برای فیلدها
- 50. استفاده از `nullable` برای فیلدهای اختیاری
- 51. ترکیب Schema ها با `allOf` (ارث بری)
- 52. ترکیب Schema ها با `anyOf` (یکی یا بیشتر)
- 53. ترکیب Schema ها با `oneOf` (دقیقاً یکی)
- 54. استفاده از `not` برای رد یک Schema
- 55. مفهوم چندشکلی (Polymorphism) در OpenAPI
- 56. `discriminator` برای مدیریت چندشکلی
- 57. اعتبار سنجی مقادیر: `minLength`, `maxLength`, `pattern`
- 58. اعتبار سنجی عددی: `minimum`, `maximum`, `multipleOf`
- 59. `readOnly` و `writeOnly` برای فیلدها
- 60. `externalDocs` در Schema ها برای ارجاعات خارجی
- 61. معرفی آبجکت `components` و اهمیت آن
- 62. `schemas` در Components: مدل های داده قابل استفاده مجدد
- 63. `responses` در Components: پاسخ های مشترک
- 64. `parameters` در Components: پارامترهای مشترک
- 65. `requestBodies` در Components: بدنه درخواست های مشترک
- 66. `headers` در Components: هدرهای مشترک
- 67. ارجاع به Components با `$ref`
- 68. `examples` در Components: مثال های قابل استفاده مجدد
- 69. `links` در Components: تعریف روابط بین عملیات
- 70. `callbacks` در Components: مستندسازی Webhooks
- 71. مفاهیم احراز هویت (Authentication) و مجوزدهی (Authorization)
- 72. آبجکت `securitySchemes`: تعریف مکانیزم های امنیتی
- 73. امنیت با API Key: `apiKey` و `in` (header, query, cookie)
- 74. امنیت با HTTP: Basic Authentication
- 75. امنیت با HTTP: Bearer Token (JWT)
- 76. امنیت با OAuth2: معرفی و انواع Flow ها
- 77. OAuth2 Authorization Code Flow
- 78. OAuth2 Client Credentials Flow
- 79. OAuth2 Implicit Flow و Resource Owner Password Flow (با ملاحظات امنیتی)
- 80. امنیت با OpenID Connect (OIDC)
- 81. اعمال مکانیزم های امنیتی در سطح API کلی
- 82. اعمال مکانیزم های امنیتی در سطح عملیات (Operation)
- 83. تعریف Scopes برای OAuth2 و اعمال آن
- 84. ترکیب مکانیزم های امنیتی
- 85. Swagger UI: مشاهده و تست تعاملی API
- 86. Swagger Editor: ویرایش و اعتبارسنجی اسناد OpenAPI
- 87. Swagger Codegen: تولید کدهای کلاینت و سرور از OpenAPI
- 88. OpenAPI Generator: جایگزینی قدرتمند برای Swagger Codegen
- 89. معرفی ابزارهای دیگر برای اعتبار سنجی و Linting (Spectral)
- 90. ابزارهای تست API با قابلیت وارد کردن OpenAPI (Postman, Insomnia)
- 91. تبدیل فرمت های مختلف به OpenAPI (Postman Collections to OpenAPI)
- 92. ابزارهای مدیریت API Gateway و ادغام با OpenAPI
- 93. رویکرد "API First Design" با OpenAPI
- 94. مستندسازی API های موجود (Code-First)
- 95. نگهداری و به روزرسانی مستندات API
- 96. نسخه بندی API ها در مستندات OpenAPI
- 97. اتوماسیون تولید مستندات در CI/CD
- 98. نکات و ترفندهای نوشتن توضیحات واضح و جامع
- 99. استفاده از Markdown در توضیحات
- 100. ایجاد یک پورتال توسعه دهنده API با مستندات OpenAPI
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.