codingcogs' logo

codingcogs / roadmaps

نقشه‌ی راه برنامه‌نویسی بک‌اند
براساس زبان پایتون

یک راهنمای کامل برای مسیر واضح‌تر در توسعه‌ی بک‌اند با پایتون. تکنولوژی‌ها، مهارت‌ها و استانداردهای ضروری در این رودمپ گنجانده شده‌اند.

1. مبانی اولیه

کارگاه پایتون

اول مبانی برنامه‌نویسی به زبان پایتون رو یاد بگیر

  • مبانی پایتون Variables, Data Types, Control Flow, Functions
  • شی‌گرایی در پایتون Classes, Objects, Inheritance, Polymorphism
  • ساختارهای داده Lists, Dictionaries, Sets, Arrays
  • الگوریتم‌ها Sorting, Searching, Time/Space Complexity

2. فریم‌ورک وب

دوره‌ی جنگو

یکی را باید برای شروع یاد بگیرید ولی بعدا باید با بقیه هم آشنا بشوید

  • Django یک فریم ورک کامل برای توسعه‌ی فرانت‌اند و بک‌اند، دارای داشبورد ادمین
  • FastAPI فریم‌ورک وب ساده و مدرن و سریع برای ساخت APIها
  • Robyn مثل FastAPI ولی سریع تر و نوشته شده با Rust

3. دیتابیس‌ها

تسلط به دیتابیس‌ها مهم‌ترین چیزی است که باید حسابی به آن توجه کنید

  • SQL PostgreSQL, Tables, Models and Relations
  • NoSQL RavenDB, Redis, Elastic Search
  • ORM SQLAlchemy, Django ORM, Piccolo ORM
  • Database Normalization 3nf, 2nf, 1nf, ...
  • Query Optimization N+1 problem, prefetch, defer, ...

4. توسعه‌ی API

APIهای خوب و دقیق و امن بسازید

  • REST APIs HTTP methods, Status codes, Authentication , Standards
  • API Security JWT, OAuth, API Keys, Token Rotation
  • GraphQL Queries, Mutations, Schemas
  • gRPC Protocol Buffers

5. DevOps & Deployment

کارگاه داکر

درک lifecycle برنامه‌های خود را نباید فراموش کنید

  • Docker کانیتریزیشن ساده و کاربردی و ضروری
  • CI/CD GitHub Actions, Argo CD, GitLab CI
  • سرویس‌های مهم SonarQube, Sentry, Graylog
  • Cloud Platforms AWS, GCP, Azure

6. مباحث پیشرفته

مباحث پیشرفته برای افزایش سرعت و کیفیت کد

  • معماری نرم‌افزار Scalability, Load Balancing, Caching
  • Message Queues Celery و Celery-beat
  • تست نرم‌افزار Unit , Integration , E2E, Load Testing
  • Typing Typing , Pydantic , MyPy

بریم بک‌اند را شروع کنیم؟

مسیر یادگیری و پیشرفت شغلی همینجا تموم نمی‌شه. با مبانی پایتون شروع کنید و آروم‌آروم دانش‌تان را گسترش دهید.

شروع به یادگیری