Object-oriented (OO) programming paradigm; class, object, method, attribute, inheritance, polymorphism, using an OO programming language; programming under specific environments; windows, web-based, mobile, predefined components, system library, predefined library, function and API, laboratory; using an OO programming language, using integrated development environment (IDE), testing and debugging; practice on related topics