IME-USP
Object Oriented Programming Lab - Part 1
University of Sao Paulo
Ministered by:Fabio Kon, Professor
Department of Computer Science - IME
About this course
Offered by the Computer Science Department of the Institute of Mathematics and Statistics at USP, the course is aimed at those who already know the basic concepts of OOP and want to go deeper into the subject, becoming an excellent programmer. It works well as a natural sequel to the 2 previous courses by Prof. Fabio Kon from IME-USP on coursera: Introduction to Computer Science with Python. If you still don't know how to program, you should start with this other course: https://www.coursera.org/learn/ciencia-computacao-python-conceitos But, if you already know how to program in another language comfortably, you can come straight to this course without major difficulties. Most of the code examples will be in Java and Python and we provide a small overview of these languages at the beginning of the course. The course is divided into two parts of approximately 6 weeks each. In this Part 1, the topics covered are: (1) Recap of basic OOP concepts (2) UML (Unified OO Modeling Language) (3) Interpreted vs. OOP languages. compiled (4) Object Orientation in Java and Python (5) Code Quality and Good OO Programming Practices (6) Bugs, debugging and testing (7) Dynamic vs. (8) Abstract Classes and Interfaces (9) Object Collections (10) Polymorphism (11) Exception Handling (12) Streams (13) Design Patterns (Strategy, Adapter, Singleton, Factory Method, Abstract Factory, Prototype, State (14) Model-View-Controller (MVC)