TECH6100 Intermediate Programming This subject builds on the knowledge and skills acquired in the Fundamentals of Programming subject by expanding on the principles and techniques that support the development and testing of Python-based applications. This necessitates competence on unit tests, the test-driven development environment, exception handling, debugging and the advanced features of the integrated development environment and the external test libraries. The application of object-oriented programming design, creation, and evaluation are the primary focus of this subject, which include the design patterns and best practices associated with Python programming language.