Most modern programming languages such as Java C Ruby and Python are objectoriented languages which help group individual bits of code into a complex and coherent application However objectorientation itself is not a language its simply a set of ideas and concepts Let Simon Allardice introduce you to the termswords like abstraction inheritance polymorphism subclassand guide you through defining your requirements and identifying use cases for your program The course also covers creating conceptual models of your program with design patterns class and sequence diagrams and unified modeling language UML tools and then shows how to convert the diagrams into code