This course introduces an object-oriented approach to programming, demonstrates the importance of object-oriented programming and its advantages over structured programming. The main contents provided include: concepts and principles of object programming; how the class and its components are designed; implements object-oriented properties such as inheritance, closure, abstraction, polymorphism. Through practicing some simple applications on the C# programming language to gain insight into key properties of the object-oriented model.