Computer Laboratory Home Page Search A-Z Directory Help
University of Cambridge Home Computer Laboratory
Computer Science Tripos Syllabus - Programming in Java
Computer Laboratory > Computer Science Tripos Syllabus - Programming in Java

Programming in Java next up previous contents
Next: Regular Languages and Finite Up: Lent Term 2005: Part Previous: Probability (50% option only)   Contents


Programming in Java

Lecturer: Dr A.C. Norman

No. of lectures: 16

This course is a prerequisite for Concurrent Systems and Applications, Group Project.


Aims


This course is provided to ensure that all students have exposure to a common imperative programming language. It will give them experience with the fundamentals of object-oriented programming, and provide a foundation upon which various Part IB courses (especially Concurrent Systems and Applications and the Group Project) can build. It also provides specific guidance on the design and debugging of (small) programs to complement Software Engineering which will concentrate on issues that arise with larger bodies of code.


Lectures

  • Introduction. Course objectives. Historical introduction to Java and its relatives. Comparisons with ML. The sorts of programming task addressed here.

  • Basic use of Java. Compiling and running Java programs. The layout of a program in Java. The basic data types and operations on them. Some important libraries. More control structures. Defining new types.

  • Design and testing programs in Java. Understanding your objective. Decomposing a task into manageable units. Incremental development. Data structures. Program structure and information hiding. Using existing library code.

  • Representative Java applications. Calculation. File access. User interface. Network access.

  • Conclusion. Strengths and limitations of Java. A brief mention of alternatives.

Objectives


At the end of the course students will be able to write Java code both in the form of applications and applets. They should have an overview of all features of the language and of major parts of its associated libraries.


Recommended book


*Eckel, B. (1998). Thinking in Java. Prentice-Hall.



next up previous contents
Next: Regular Languages and Finite Up: Lent Term 2005: Part Previous: Probability (50% option only)   Contents
Christine Northeast
Wed Sep 8 11:57:14 BST 2004