Many world wide academic institutions, teach the fundamental ideas behind the object-oriented approach to programming through the widely used Java programming language. Concentrating on aspects of Java that best demonstrate object-oriented principles and good practice, you’ll gain a solid basis for further study of the Java language and object-oriented software development. Some experience in writing computer programs is essential.
In theObject-orientedview of software, programs are considered to be collections of objects that interact using each other’s methods and their results. These ideas are at the forefront of modern software development.
The module takes an ‘objects first’ approach to teaching; you start seeing and interacting with objects right from the very start. This is achieved using IDE features that allow you to learn principles about construction and method calling.
These module continues the teaching about fundamental object-oriented ideas by investigating:
how to control the initial state of newly created objects
different kinds of variables and methods in Java
different kinds of data, including primitive and object types
inheritance hierarchies and their impact on code reuse
overriding methods and polymorphism
abstract classes and interfaces
file input and output.
Along the way, you’ll learn about Java structures for selection and iteration, and more about some of the core, provided Java classes. We introduce you to ideas about writing Java code in a good style and using appropriate design, as well as about different kinds of errors you will encounter and how to deal with them.
As you go on, you’ll develop increasingly complex Azure based object-oriented projects from scratch, using the various IDEs, and gain a better understanding of the more complex examples of Azure Services.
The last part of the module begins by investigating how data is written to and from files in Java and how objects can be made persistent by writing them to file. These techniques are useful in larger scale programs and implement cloud based services.