Module Identifier CH11020  
Module Title INTRODUCTION TO PROGRAMMING  
Academic Year 2002/2003  
Co-ordinator Dr Edel M Sherratt  
Semester Semester 1  
Other staff Mr John Woodbury  
Co-Requisite Available only to students taking the Diploma/MSc in Computer Science scheme at Aberystwyth.  
Course delivery Lecture   45 hours  
  Other   Workshop. 14 hours  
  Practical   Up to 60 hours  
Assessment Semester Assessment   (A1) Assignment: Three practical assignments   75%  
  Semester Assessment   (A2) Assignment: Final written assignment   25%  
  Supplementary Exam   There is no provision for supplementary examinations or resits.    
Further details http://www.aber.ac.uk/compsci/ModuleInfo/CH11020  

Learning outcomes

On successful completion of the module, students should:

Brief description

There is much more to computing than programming and many graduates from the Diploma/MSc course may never need to do any programming in their professional careers. Nevertheless, an understanding of programming and, more generally, of the software development process is an important part of the education of anyone who wishes to be an IT professional. Such an understanding needs some practical skill and experience and this is what this module provides. It also introduces students to the computing environment and other information services available to them in Aberystwyth, and gives them some experience of working in teams.

Aims

To make students understand what is involved in software development and to give them the basic skills necessary
to develop well-structured, non-trivial programs in a well-designed programming language using a modern
environment.

Content

1. Computer System appreciation - 4 Lectures
Introduction to the basic computer organisation. Emphasis is placed on the relationships between hardware,
architecture and software, with reference to the computer systems at Aberystwyth. Using the computing facilities
at Aberystwyth.

2. Programming in the large - An introduction to Java - 30 Lectures
Software crisis, abstraction, algorithms and programs. The design of algorithms, object oriented programming and
an introduction to Java. Programming constructs, expressions, primitive types, classes and objects. Information
hiding. Further object oriented design; inheritance. Robust programs; exceptions.

3. Testing - 2 Lectures
Techniques and aids for error detection.

4. Persistent data - 4 Lectures
Advanced input/output and files. Worked example bringing together file handling and exceptions.

5. Graphical interfaces - 5 Lectures
An introduction to Java's Abstract Window Toolkit (AWT) and Java Swing and their use in developing more attractive user
interfaces.

Reading Lists

Books
Ivor Horton. (March 1999) Beginning Java 2. Wrox Press Inc ISBN 1861002238
J. M. Bishop. (2001) Java Gently: Programming Principles Explained. 3rd edition. Addison-Wesley Pub Co ISBN: 0201710501
S. Heller. (1998) Who's Afraid of Java. AP Professional ISBN 0123391016
Y. Daniel Liang. (2000) Introduction to Java Programming. 3rd Edition. ISBN: 013031997X
Walter Savitch. (2000) Java: An Introduction to Computer Science & Programming. 2nd edition. Prentice Hall ISBN: 0130316970
Elliot B. Koffman and Ursula Wolz. (Aug 1998) Problem Solving with Java. Addison-Wesley ISBN 0201357437
Samuel N. Kamin, M. Dennis Mickunas, and Edward M. Reingold. (Nov 1997) An Introduction to Computer Science: Using Java. WCB/McGraw-Hill ISBN 0070342245
Cay Horst Mann. (2000) Computing Concepts with Java 2 Essentials. John Wiley ISBN 0471 346098
John Lewis and William Loftus. (2000) Java Software Solutions. Addison Wesley ISBN 0201 612712
Patrick Henry Winston, Sundar Narasimhan. (2001) On to Java. 3rd edition. Addison-Wesley Pub Co ISBN: 0201725932
Stephen J. Chapman. (1999) Java for Engineers and Scientists . Prentice Hall ISBN: 0139195238
It is considered essential that students buy one of these general texts on Java. Exactly which is left to your own personal preference. Advice will be offered in lectures..