This new edition has been brought up to date with new developments in the field: the increase in the use of object-oriented languages as a student's first language, the growth in the importance of graphical user interfaces and the widespread use of the internet.