Simon Kendal is a senior lecturer who has worked for the University of Sunderland since 1990. He was awarded a D. Phill. in 1991 for research leading to the development of a flexible learning mechanism and has always had a keen interest in the development of intelligent computing systems, expert syste...
This book will explain the Object Oriented approach to programming and through the use of small exercises, for which feedback is provided, develop some practical skills as well. At the end of the book one larger case study will be used to illustrate the application of the techniques. This will culminate in the development of a complete Java program which can be downloaded with this book. Topics covered include : Abstraction, Inheritance, Polymorphism, Object Oriented Software Analysis and Design, The Unified Modelling Language (UML) , Agile Programming and Test Driven Development.
This book aims to instil the reader with an understanding of the Object Oriented approach to programming and aims to develop some practical skills along the way. These practical skills will be developed by small exercises that the reader will be invited to undertake and the feedback that will be provided.
The concepts that will be explained and skills developed are in common use among programmers using many modern object oriented languages and are thus transferrable from one language to another. However for practical purposes these concepts are explored and demonstrated using the Java programming language.
While the Java programming language is used to highlight and demonstrate the application of fundamental object oriented principles and modelling techniques this book is not an introduction to Java programming. The reader will be expected to have an understanding of basic programming concepts and their implementation in Java (inc. the use of loops, selection statements, performing calculations, arrays, data types and a basic understanding of file handling).
This text is designed not as a theoretical textbook but as a learning tool to aid in understanding theoretical concepts and learning the practical skills required to implement these. To this end each chapter will incorporate small exercises with solutions and feedback provided.
At the end of the book one larger case study will be described – this will be used to illustrate the application of the techniques explored in the earlier chapters. This case study will culminate in the development of a complete Java program that can be downloaded with this book.