کتاب 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 و جمعبندی دوره
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.