Schița de curs
Ziua 1 — Fundamente Robuste ale Python și Instrumentare
Caracteristici Moderne ale Python și Tipizare
- Bazele tipizării, generice, Protocoale și TypeGuard
- Dataclasses, dataclasses imutabile și prezentarea attrs
- Corelarea modelării (PEP 634+) și utilizarea idiomatičă
Calitatea Codului și Instrumentare
- Formatare cod și linteri: black, isort, flake8, ruff
- Verificarea statică a tipurilor cu MyPy și pyright
- Găncuri pre-commit și fluxuri de lucru ale dezvoltatorilor
Gestionarea Proiectelor și Pachetare
- Gestionarea dependențelor cu Poetry și medii virtuale
- Structura pachetului, puncte de intrare și practici de versiune
- Construirea și publicarea pachetelor la PyPI și registre private
Ziua 2 — Modele de Design și Prințipi Arhitecturale
Modele de Design în Python
- Modele creționiste: Factory, Builder, Singleton (variante Pythonice)
- Modele structurale: Adapter, Facade, Decorator, Proxy
- Modele comportamentale: Strategy, Observer, Command
Prințipi Arhitecturale
- Principiile SOLID aplicate bazelor de cod Python
- Arhitectura Hexagonală/Clean și limitele acesteia
- Modele de injecție a dependențelor și gestionarea configurărilor
Modularitatea și Reutilizarea
- Gestionarea codului bibliotecii vs. codului aplicației
- API-uri, interfețe stabilizate și versiune semantice
- Gestionarea configurărilor, secretelor și setărilor specifice mediilor
Ziua 3 — Concurența, Async IO și Performanța
Concurența și Paralelismul
- Fundamentele threading și implicațiile GIL
- Multiprocessing și pooluri de procese pentru sarcini CPU-bound
- Când să folosiți concurrent.futures vs multiprocessing
Programarea Async cu asyncio
- Patronele async/await, event loop și anulare
- Gestionarea bibliotecilor asincrone și interoperaționalitatea cu codul sincron
- Patrune IO-bound, backpressure și limitări ale ratelor
Profilare și Optimizare
- Unelte de profilare: cProfile, pyinstrument, perf, memory_profiler
- Optimizarea căilor calde și utilizarea extensiunilor C/Numba unde este potrivit
- Măsurarea latentei, a debitului și a utilizării resurselor
Ziua 4 — Testare, CI/CD, Observabilitate și Implementare
Strategii de Testare și Automatizare
- Testare unitară și fixuri cu pytest; organizarea testelor
- Testare bazată pe proprietăți cu Hypothesis și testare de contracte
- Simularea, monkeypatching și testarea codului asincron
CI/CD, Eliberare și Monitorizare
- Integrarea testelor și a poartelor de calitate în GitHub Actions/GitLab CI
- Construirea containerelor reproductibile cu Docker și construcții multi-stagiu
- Observabilitatea aplicațiilor: logging structurat, metricile Prometheus și trasee
Siguranță, Hardening și Practici de Bază
- Auditarea dependențelor, noțiunile de SBOM și scanarea vulnerabilităților
- Practici de codare securizată pentru validarea intrărilor și gestionarea secretelor
- Hardening la timpul de rulare: limite de resurse, drepturi utilizator și siguranța containerelor
Proiect Capstone și Revizuire
- Laborator de echipă: conceperea și implementarea unui serviciu mic folosind modele din curs
- Testare, verificarea tipurilor, pachetare și pipeline CI pentru proiect
- Revizuire finală, critica codului și plan de îmbunătățiri acțiune
Rezumat și Următorii Pași
Cerințe
- Solidă experiență la nivel intermediar în programare Python
- Cunoștințe în programarea orientată pe obiecte și testare de bază
- Experiență cu linia de comandă și Git
Audientă
- Dezvoltatori Python seniori
- Ingineri software responsabili pentru calitatea codului Python și arhitectura
- Lideri tehnici și ingineri MLOps/DevOps care lucrează cu baze de cod Python
Mărturii (5)
Faptul de a avea mai multe exerciții practice folosind date mai asemănătoare cu cele pe care le folosim în proiectele noastre (imagini satelitare în format raster)
Matthieu - CS Group
Curs - Scaling Data Analysis with Python and Dask
Tradus de catre o masina
Am considerat că antrenatorul era foarte cunoscutitor și a răspuns la întrebări cu încredere pentru a clarifica înțelegerea.
Jenna - TCMT
Curs - Machine Learning with Python – 2 Days
Tradus de catre o masina
Pregătirea și experțiza foarte bune a formatorului, comunicare perfectă în engleză. Cursul a fost practic (exerciții + împărtășire de exemple de cazuri de utilizare)
Monika - Procter & Gamble Polska Sp. z o.o.
Curs - Developing APIs with Python and FastAPI
Tradus de catre o masina
Explicația
Wei Yang Teo - Ministry of Defence, Singapore
Curs - Machine Learning with Python – 4 Days
Tradus de catre o masina
Formatorul dezvoltă formarea în funcție de ritmul participanților
Farris Chua
Curs - Data Analysis in Python using Pandas and Numpy
Tradus de catre o masina