Learn advanced Python concepts and how you can leverage AI to move faster, covering collections, generators, mocking, advanced testing, multiprocessing, combining Python with C++, and more.
This course teaches advanced topics in Python programming and how to carefully use AI to assist with the problem understanding, verification and speed up the development. Course starts with advanced topics in object-oriented programming in Python and an overview of the Python collections module. Continue working with generators, iterators, and decorators, as well as advanced testing and mocking, fully utilizing AI to speed up testing and verification. Python multiprocessing module is laid out, with details on how to create and work with processes. Finally, learn how to combine Python and C/C++ applications, build C/C++ applications using Python programs and create virtual environments, as well as create releases and libraries from the Python code. Learn how to utilize AI to speed up repetitive programming and setup tasks, while still retaining the understanding of all concepts.
Course topics:
- Orientation
- Advanced object-oriented programming in Python: Inheritance; static methods; special objects and methods; metaclasses; PEP8 style guide. Using AI to set up code templates.
- Advanced data collections, generators, iterators, decorators. Using AI to verify algorithmic implementations.
- Advanced testing and mocking in Python utilizing AI-generated test cases.
- Multiprocessing: Python multiprocessing module. Distinguishing multiprocessing from multithreading; how to create processes using multiprocessing module and work with them. Using AI to derive best multiprocessing architectures.
- C/C++ and Python: How to combine Python and C/C++ applications. Building C/C++ applications using Python programs. Integration verification using AI.
- Virtual environments: Introduction to virtual environments and pip tool. How to create and work with different virtual environments.
- Making Python libraries and creating releases from Python code. AI-assisted release verification.
- AI-assisted project implementation and verification in Python
Requirements
Software: Python IDE ( e.g Visual Studio Code with Python extension).
Hardware: Computer with an Internet connection, working speakers, and microphone.
Prior knowledge: Course attendees should also have knowledge and experience in writing basic object-oriented programs in Python, lambda and regular expressions and the basic unit tests. It is recommended that Python Programming course is already taken.
