Python started as an educational programming language, became popular as an intelligent scripting language and is now widely accepted and highly popular as a comprehensive multi-paradigm programming language, suitable for writing applications of any size and complexity. Its enthusiastic user-base and wide standard library, with the addition of numerous third-party libraries, frameworks and extensions, make it suitable for application in any area. Especially, Python’s layered multi-paradigm architecture makes it ideal as a first programming language and allows the novice to acquire it in convenient stages, where each stage attained may be sufficient to write serious applications.
Accordingly, this course starts by arming the student with all the tools necessary for developing conventional procedural application in Python. Then, it adds advanced procedural and functional tools. Then, data abstraction – classes with magic functions and iteration support. Finally – the object-oriented programming in Python is overviewed. This way, each student emerges from the course with a substantial and useful body of knowledge. Even students who come with a rudimentary programming background are capable to accomplish much with the procedural/functional level of Python and consider the object-oriented level as enhancement.
This course consists of an instructor led presentation and hands on exercises. MS Windows is used for convenience, but the learnt material is applicable to any other platform that supports Python, such as Linux.
The course addresses both Python versions 2 and 3, with no preference.