Module 08744 (2001)

Syllabus page 2001/2002

06-08744
Software Workshop 1 A

Level 1/C

mdr
20 credits in Semester 1

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus


The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)

Relevant Links

First-year workshop home page


Outline

A first course in imperative, object-oriented programming, with a strong emphasis on practical program development skills.


Aims

The aims of this module are to:

  • present the fundamental concepts of imperative and object oriented programming
  • develop a the skills needed to write, test, and debug programs
  • gain working knowledge of the Java programming language

Learning Outcomes

On successful completion of this module, the student should be able to: Assessed by:
1understand the fundamental constructs of the Java programming language Practical work, examination
2write programs using those constructs in Java Practical work, examination
3identify the common pitfalls of programming in Java, and overcome them Practical work, examination
4debug programs by interpreting compiler error messages, run-time error messages, and by testing Practical work, examination
5complete and/or correct partially-written programs Practical work, examination
6understand the compiler and interpreter and be able to determine the behaviour of a program, given its source code Examination
7use the Java API documentation to discover new classes and how to program using them Practical work
8 undertake medium-sized development projects in Java Practical work, examination
9 work independently, and employ books and on-line resources to solve problems Practical work

Restrictions, Prerequisites and Corequisites

Restrictions:

May not be taken with 06-08747 (Software Workshop 1(A) A).

Prerequisites:

None

Co-requisites:

06-08745 (Software Workshop 1 B) (linked module)


Teaching

Teaching Methods:

Lectures: 3 hrs/week, Tutorials: 1 hr/week, Labs: 8 hrs/week

Contact Hours:

136


Assessment

  • Supplementary (where allowed): As the sessional assessment
  • 3 hr examination (80%), practical work (20%), divided equally between this module and 06-08745 (Software Workshop 1 B). Students who fail these linked modules but achieve at least 30% will be allowed to resit, by examination only. Students whose mark is below 30% will be required to repeat the modules in the following academic year.

Recommended Books

TitleAuthor(s)Publisher, Date
Java by DissectionIra Pohl and Charlie McDowellAddisson Wesley, 2000
Computing concepts with Java essentialsCay HorstmannJohn Wiler & Sons, 1998
Core Java 2, Vol 1 (4th Ed)Gary Cornell & Cay S HorstmannPrentice Hall, 1999
Core Java 2, Vol 2 (4th Ed)Gary Cornell & Cay S HorstmannPrentice Hall, 1999

Detailed Syllabus

  1. The basic constructs common to all programs in Java.
  2. Editing, compiling and running programs. Dealing with errors. Assignments, basic data types, expressions, casting. Operators and precedence.
  3. Round-off errors. Calling methods.
  4. Flow of control: if-statements, for-loops, while-loops, do-loops. Break and continue.
  5. Arrays and strings.
  6. Methods: declaring and calling. Call-by-value. Overloading. Recursion.
  7. Classes and objects. Constructors. Modifiers (public and private).
  8. Pointers and reference. What happens when "new" is executed. Comparing objects for equality.
  9. More on classes and objects: passing object references. Class variables and class methods.
  10. Packages: the import statement. Arrays and strings.
  11. Inheritance. Introduction to exception handling.
  12. Unix utilities, and how they work. Programming unix utilities like grep and wc in Java
  13. Image processing using Portable Greymaps: flipping, scaling, rotating, fish-eye transformation

Last updated: 16 November 2001

Source file: /internal/modules/COMSCI/2001/xml/08744.xml

Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus