This topic provides a quick review of Java Objects, Classes and Interfaces. You will also cover packages, constructors, polymorphism, information hiding and abstract classes.
Test Driven Development has been among the most influential approaches in recent software engineering history. Here we look at its origins, principles and some of the important benefits of the approach.
All programming languages will have support for a range of common data structures. Unlike typical dynamic programming language, collections are implemented as a standard library in Java (as opposed to being built in). We will survey the major features of this library, focusing on the principle interfaces and implementations. There is considerable more to collections, which should be investigated independently.
As you begin to create more complex programs that process large amounts of data you will need to consider performance (e.g. how long will my program take to run?). This topic introduces the scientific method for predicting the running time of your algorithms. You will also learn how to produce mathematical models for algorithms and estimate an algorithms order of growth using tilda notation.
Repeat assignment specification.