کتاب Creating Web Services with Python and Flask

249,950 تومان

📚 کتاب آموزشی جامع

📚 اطلاعات کتاب

عنوان کتاب: کتاب Creating Web Services with Python and Flask

موضوع کلی: برنامه نویسی

موضوع میانی: ای‌پی‌آی (API) و وب‌سرویس‌ها

📋 سرفصل‌های کتاب (100 موضوع)

  • 1. مقدمه‌ای بر وب‌سرویس‌ها و APIها
  • 2. آشنایی با معماری Client-Server
  • 3. پروتکل HTTP: درخواست‌ها و پاسخ‌ها
  • 4. متدهای HTTP: GET, POST, PUT, DELETE
  • 5. کدهای وضعیت HTTP (Status Codes)
  • 6. ساختار یک درخواست و پاسخ HTTP
  • 7. فرمت‌های تبادل داده: مقدمه‌ای بر JSON
  • 8. ساختار داده JSON: اشیاء و آرایه‌ها
  • 9. آشنایی با XML به عنوان جایگزین
  • 10. چرا پایتون و فلسک برای ساخت API؟
  • 11. نصب و راه‌اندازی پایتون و pip
  • 12. مدیریت محیط‌های مجازی با venv
  • 13. نصب فلسک (Flask) و ایجاد اولین پروژه
  • 14. ساختار یک پروژه ساده فلسک
  • 15. اجرای اولین اپلیکیشن فلسک: Hello, World!
  • 16. مسیریابی (Routing) در فلسک: معرفی @app.route
  • 17. ساخت اولین Endpoint: GET Request
  • 18. بازگرداندن پاسخ‌های JSON با jsonify
  • 19. مسیرهای داینامیک: استفاده از متغیر در URL
  • 20. کار با شیء Request در فلسک
  • 21. دریافت داده از Query Parameters
  • 22. مدیریت متدهای مختلف HTTP در یک Route
  • 23. ساخت Endpoint برای متد POST
  • 24. دریافت داده‌های JSON از بدنه درخواست (Request Body)
  • 25. ساخت Endpoint برای متدهای PUT و PATCH
  • 26. ساخت Endpoint برای متد DELETE
  • 27. ایجاد یک API کامل CRUD با داده‌های موقت (In-memory)
  • 28. معرفی ابزارهای تست API: Postman و Insomnia
  • 29. تست عملی Endpoints با Postman
  • 30. شیء Response و سفارشی‌سازی پاسخ‌ها
  • 31. چرا به پایگاه داده نیاز داریم؟
  • 32. مقدمه‌ای بر ORM و SQLAlchemy
  • 33. نصب و پیکربندی Flask-SQLAlchemy
  • 34. تعریف مدل‌های داده (Models)
  • 35. ایجاد جداول در پایگاه داده
  • 36. مدیریت تغییرات پایگاه داده (Migrations) با Flask-Migrate
  • 37. افزودن داده به پایگاه داده از طریق API
  • 38. خواندن داده‌ها از پایگاه داده و نمایش در API
  • 39. به‌روزرسانی رکوردهای موجود در پایگاه داده
  • 40. حذف رکوردها از پایگاه داده
  • 41. سریالایز کردن (Serialization): تبدیل آبجکت‌ها به JSON
  • 42. معرفی Flask-Marshmallow برای سریالایز کردن
  • 43. تعریف اسکما (Schema) با Marshmallow
  • 44. استفاده از اسکما برای بازگرداندن پاسخ‌های ساختاریافته
  • 45. دی‌سریالایز کردن (Deserialization): تبدیل JSON به آبجکت
  • 46. اعتبارسنجی (Validation) داده‌های ورودی با Marshmallow
  • 47. مدیریت روابط در پایگاه داده: One-to-Many
  • 48. مدیریت روابط در پایگاه داده: Many-to-Many
  • 49. پیاده‌سازی روابط در API Endpoints
  • 50. صفحه‌بندی (Pagination) نتایج API
  • 51. مدیریت خطاها در فلسک
  • 52. ایجاد صفحات خطای سفارشی برای API
  • 53. بازگرداندن پاسخ‌های خطای استاندارد به فرمت JSON
  • 54. مقدمه‌ای بر احراز هویت (Authentication) و مجوزدهی (Authorization)
  • 55. پیاده‌سازی Basic Authentication
  • 56. احراز هویت مبتنی بر توکن (Token-Based Authentication)
  • 57. آشنایی با JSON Web Tokens (JWT)
  • 58. استفاده از افزونه Flask-JWT-Extended
  • 59. ایجاد Endpoints برای ورود (Login) و تولید توکن
  • 60. محافظت از Endpoints با توکن JWT
  • 61. مدیریت Refresh Tokens
  • 62. سازماندهی پروژه با Blueprints
  • 63. ثبت (Register) کردن یک Blueprint در اپلیکیشن اصلی
  • 64. نسخه‌بندی API (API Versioning)
  • 65. پیاده‌سازی نسخه‌بندی از طریق URL Prefix
  • 66. مدیریت CORS (Cross-Origin Resource Sharing)
  • 67. آپلود فایل در فلسک
  • 68. ذخیره‌سازی و ارائه فایل‌های آپلود شده
  • 69. لاگ‌گیری (Logging) در اپلیکیشن‌های فلسک
  • 70. مدیریت پیکربندی‌ها (Configurations) برای محیط‌های مختلف
  • 71. اصول تست نرم‌افزار برای API
  • 72. نوشتن تست‌های واحد (Unit Tests) با Pytest
  • 73. تست Endpoints با کلاینت تست فلسک
  • 74. نوشتن تست‌های یکپارچه‌سازی (Integration Tests)
  • 75. Mock کردن وابستگی‌ها در تست‌ها
  • 76. امنیت در API: جلوگیری از SQL Injection
  • 77. امنیت در API: جلوگیری از حملات XSS و CSRF
  • 78. محدود کردن نرخ درخواست‌ها (Rate Limiting)
  • 79. بهینه‌سازی عملکرد: کش کردن (Caching) پاسخ‌ها
  • 80. پیاده‌سازی کش با Flask-Caching
  • 81. اجرای وظایف پس‌زمینه (Background Tasks) با Celery
  • 82. ارتباطات Real-time با WebSockets
  • 83. مقدمه‌ای بر Flask-SocketIO
  • 84. مستندسازی API با OpenAPI و Swagger
  • 85. استفاده از افزونه Flasgger برای مستندسازی خودکار
  • 86. اصول طراحی RESTful API
  • 87. مفهوم HATEOAS (Hypermedia as the Engine of Application State)
  • 88. مقایسه REST با GraphQL
  • 89. مقدمه‌ای بر معماری میکروسرویس (Microservices)
  • 90. ارتباط بین میکروسرویس‌ها
  • 91. مقدمه‌ای بر استقرار (Deployment) وب‌سرویس‌ها
  • 92. آشنایی با وب سرورهای WSGI: Gunicorn
  • 93. آماده‌سازی اپلیکیشن برای محیط Production
  • 94. کانتینرسازی اپلیکیشن با Docker
  • 95. نوشتن یک Dockerfile برای پروژه فلسک
  • 96. مدیریت سرویس‌ها با Docker Compose
  • 97. استقرار روی پلتفرم‌های ابری (مانند Heroku یا AWS)
  • 98. راه‌اندازی CI/CD با GitHub Actions
  • 99. مدیریت متغیرهای محیطی (Environment Variables) و اسرار (Secrets)
  • 100. مانیتورینگ و Health Checks برای API و جمع‌بندی دوره

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.