| Java: Just In Time
Updated and Revised 2018 version now available
John Latham
At last -- a first programming in Java course that is truly aimed at students who have not programmed before! (It has an entry point for those who have.)
* Using neither the confusing `objects first' approach found in many books, nor the confidence destroying `objects late' ordering used by some others, here you are taken gently from your natural `task oriented' view of problem solving, through the basics of programming and then *soon* onto objects.
* Every programming and Java concept is introduced, Just in Time, in the context of one of more than a hundred program examples, so motivation is never lacking. Even when objects are introduced, you immediately see their benefit, and thus happily augment your `task oriented' view with the `object oriented' one.
* Programming skill, being at least 51% confidence, is built in manageable layers by you undertaking carefully structured pieces of coursework.
* Other aspects enhancing your learning include coffee time questions, end of chapter collected concepts, no use of non-standard library code, and independence of any confidence-entrapping learning environment.
John Latham has been teaching first programming since 1982 using various languages and styles, and this course has been running since 2004 at The University of Manchester, UK.
The Table of Contents:
1 Introduction 2 Sequential execution and program errors 3 Types, variables and expressions 4 Conditional execution 5 Repeated execution 6 Control statements nested in loops 7 Additional control statements 8 Separate methods and logical operators 9 Consolidation of concepts so far 10 Separate classes 11 Object oriented design 12 Software reuse and the standard Java API 13 Graphical user interfaces 14 Arrays 15 Exceptions 16 Inheritance 17 Making our own exceptions 18 Files 19 Generic classes 20 Interfaces, including generic interfaces 21 Collections 22 Recursion 23 The end of the beginning
http://www.cs.man.ac.uk/~jtl/JJIT/
January 2011
978-1-84890-025-7
|