Object Oriented Programming
Knowledge Object-Oriented Programming (OOP) concepts, namely classes, interfaces, polymorphism and inheritance. Techniques and algorithms for processing data structures such as lists, strings, vectors, dictionaries, and sets. Basic mechanisms of generic programming. Class libraries and learn how to reuse them. Basic Software Engineering concepts, from a developer perspetive, such as software quality, reuse, development and maintenance costs, or implementation efficiency.
Application Design and develop software applications using OOP. Problem solving with OOP. Using verification and validation techniques. Increasingly autonomous software development skills, both in solo and as a team member.
Soft-Skills Build up an interest for programming and solving problems.