Đề cương khóa học

Ngày 1 — Nền Tảng Python Robust & Công Cụ

Tính năng Python hiện đại và Kiểu Dữ liệu

  • Cơ bản về kiểu dữ liệu, generics, Protocols, và TypeGuard
  • Dataclasses, frozen dataclasses, và tổng quan về attrs
  • Bí quyết sử dụng pattern matching (PEP 634+) và cách dùng chuẩn mực

Chất lượng Mã Nguồn và Công Cụ

  • Công cụ định dạng mã và linter: black, isort, flake8, ruff
  • Kiểm tra kiểu tĩnh với MyPy và pyright
  • Các hook pre-commit và quy trình làm việc của nhà phát triển

Quản lý Dự án và Bao Gói

  • Quản lý phụ thuộc với Poetry và môi trường ảo
  • Bố cục gói, điểm vào, và các thực hành tốt nhất về phiên bản
  • Xây dựng và phát hành gói đến PyPI và các registry riêng

Ngày 2 — Mô Hình Thiết Kế & Thực Hành Kiến Trúc

Mô Hình Thiết Kế trong Python

  • Các mô hình sáng tạo: Factory, Builder, Singleton (phiên bản Pythonic)
  • Các mô hình cấu trúc: Adapter, Facade, Decorator, Proxy
  • Các mô hình hành vi: Strategy, Observer, Command

Những Nguyên Tắc Kiến Trúc

  • Các nguyên tắc SOLID áp dụng cho mã nguồn Python
  • Kiến trúc Hexagonal/Clean và các ranh giới
  • Các mô hình tiêm phụ thuộc và quản lý cấu hình

Tính Mô Đun và Reuse

  • Thiết kế mã thư viện so với mã ứng dụng
  • Các API, giao diện ổn định, và phiên bản ngữ nghĩa
  • Xử lý cấu hình, bí mật, và cài đặt cụ thể cho môi trường

Ngày 3 — Đồng Thời, Async IO, và Hiệu Suất

Đồng thời và Song song

  • Các nguyên lý cơ bản về luồng và tác động của GIL
  • Song công và pool quy trình cho các tác vụ CPU-bound
  • Khi nào sử dụng concurrent.futures so với multiprocessing

Lập Trình Async với asyncio

  • Mô hình async/await, vòng lặp sự kiện, và hủy bỏ
  • Thiết kế thư viện async và khả năng tương tác với mã sync
  • Các mô hình IO-bound, backpressure, và rate limiting

Định Mức và Tối Ưu hóa

  • Công cụ định mức: cProfile, pyinstrument, perf, memory_profiler
  • Tối ưu hóa các đường đi nóng và sử dụng C-extensions/Numba khi phù hợp
  • Đo đạc độ trễ, thông lượng, và sử dụng tài nguyên

Ngày 4 — Kiểm Thử, CI/CD, Quan Sát, và Triển Khai

Các Chiến Lược Kiểm Thử và Tự Động Hóa

  • Kiểm thử đơn vị và fixtures với pytest; tổ chức kiểm thử
  • Kiểm thử dựa trên thuộc tính với Hypothesis và kiểm thử hợp đồng
  • Công cụ mocking, monkeypatching, và kiểm thử mã bất đồng bộ

CI/CD, Phát Hành, và Giám Sát

  • Tích hợp kiểm thử và các cổng chất lượng vào GitHub Actions/GitLab CI
  • Xây dựng container có thể tái tạo với Docker và multi-stage builds
  • Sự quan sát ứng dụng: logging cấu trúc, metrics Prometheus, và tracing

Bảo Mật, Củng Cố, và Thực Hành Tốt Nhất

  • Kiểm tra phụ thuộc, SBOM cơ bản, và quét lỗ hổng
  • Các thực hành lập trình an toàn cho việc kiểm tra đầu vào và quản lý bí mật
  • Củng cố thời gian chạy: giới hạn tài nguyên, quyền người dùng, và bảo mật container

Dự Án Tổng Hợp & Đánh Giá

  • Lớp thực hành nhóm: thiết kế và triển khai một dịch vụ nhỏ sử dụng mô hình từ khóa học
  • Kiểm thử, kiểm tra kiểu, bao gói, và ống dẫn CI cho dự án
  • Xem xét cuối cùng, đánh giá mã, và kế hoạch cải tiến hành động

Tóm Tắt và Bước Tiếp Theo

Yêu cầu

  • Kinh nghiệm lập trình Python trung cấp mạnh mẽ
  • Familiarity with object-oriented programming and basic testing
  • Kinh nghiệm sử dụng dòng lệnh và Git

Đối Tượng Học Viên

  • Lập trình viên Python cao cấp
  • Kỹ sư phần mềm chịu trách nhiệm về chất lượng và kiến trúc mã nguồn Python
  • Các trưởng kỹ thuật và kỹ sư MLOps/DevOps làm việc với mã nguồn Python
 28 Giờ học

Số người tham gia


Giá cho mỗi người tham gia

Đánh giá (5)

Các khóa học sắp tới

Các danh mục liên quan