Y2D35 ECTS
Advanced Programming Concepts II
Course description
This course equips students with advanced programming practices essential for deploying and maintaining machine learning applications. Emphasis is placed on writing modular, testable, and well-documented code in collaborative development environments.
Students transition from exploratory notebooks to production-ready Python packages and APIs, applying best practices in software engineering.
Course content
- Writing Modular and Maintainable Python Code
- Logging and Error Handling
- Developing and Publishing Python Packages (Wheels & Source Distributions)
- CLI Tools and Interfaces
- API Development with FastAPI
- Code Documentation and Docstring Standards
- Code Quality: Linting, Formatting, and Pre-Commit Hooks
- Unit Testing and Continuous Integration
- Version Control and Branching Strategies in Git