Kort om undervisningen
Python er designet til at være nemt at lære: Det er fx ikke nødvendigt at deklarere typer, og du kan hurtigt installere tredjeparts-pakker fra PyPI. Derfor er det nemt at skrive protoyper i Python. Når prototyperne vokser og kommer i produktion, dukker der dog ofte problemer op: Hvilke nøgler er der præcis i hvilke dictionaries? Hvilken version af ”requests”-pakken var det nu lige, vi brugte? Er vi sikre på, at vi har håndteret den nye edge case alle steder i koden? Production grade Python gør deltagerne i stand til at løse disse og mange flere problemer, så de kan udvikle Python-kode fra prototype til produktion og samtidig ramme en god balance mellem fleksibilitet og robusthed.
Indhold
- Input validation: Pydantic Formatting: Black, isort, yapf, other tools Linting: pylint, flake8, ruff Type: type hinting, mypy, pyright Version management pyenv, poetry. Nævn også pipenv, pip freeze etc. Conda, anaconda? Commit hook Misc: Docker, data science-specifikke overvejelser?, git (trunk-based vs andre processer)