Module 06-27821 (2017)
Software Workshop 1
Level 1/C
Ian Kenny | Semester 1 | 20 credits |
Martin Escardo | Semester 2 | 20 credits |
Co-ordinator: Ian Kenny
Reviewer: David Parker
The Module Description is a strict subset of this Syllabus Page.
Outline
A first module 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 the skills needed to design, develop and document programs
- gain working knowledge of the Java programming language
Learning Outcomes
On successful completion of this module, the student should be able to:
- explain and apply the fundamental constructs of imperative and object-oriented programming
- describe and apply the main features of the Java programming language
- analyse Java programs, for example by determining the behaviour of a program from its source code or by completing and/or correcting partially-written programs
- write Java programs, where appropriate making effective use of an integrated development environment (IDE) and other programming aids
- test and debug programs, interpreting compiler and run-time error messages
- design, develop and document complete Java programs to solve given software problems, including some open-ended tasks
Restrictions
None
Teaching methods
Lectures: 2-3 hrs/week, Tutorials/Examples classes: 1-2 hrs/week, Timetabled labs
Contact Hours:
104 plus timetabled lab work
Assessment
Sessional: 100% Continuous Assessment. The module also has an internal hurdle in the form of class tests. These tests will not contribute to the final overall mark for the module but students must pass the class test component in order to pass the module.
Supplementary (where allowed): by repeat only
Detailed Syllabus
- Simple Programs
- Working with Data
- Classes
- Static Methods and Constants
- Graphics
- Graphical User Interfaces
- Model-View-Control
- Layout Managers
- Abstract Data Types (ADTs)
- Expression trees, their evaluation, and their conversion to string representation
- Binary search trees of integers
- Generics
- Composite Pattern
- Maps in the collections framework
- Exceptions
- Graphs
Programmes containing this module
- BSc Artificial Intelligence & Computer Science [0144]
- BSc Artificial Intelligence & Computer Science with an Industrial Year [9502]
- BSc Artificial Intelligence & Computer Science with Study Abroad [452B]
- BSc Computer Science [4436]
- BSc Computer Science with an Industrial Year [9499]
- BSc Computer Science with Business Management [5914]
- BSc Computer Science with Business Management with an Industrial Year [9503]
- BSc Computer Science with Study Abroad [5571]
- BSc Mathematics and Computer Science [5196]
- BSc Mathematics and Computer Science with an Industrial Year [9495]
- MEng Computer Science/Software Engineering [4754]
- MEng Computer Science/Software Engineering with an Industrial Year [9501]
- MSci Computer Science [4443]
- MSci Computer Science with an Industrial Year [9509]
- MSci Computer Science with Study Abroad [5576]
- MSci Mathematics and Computer Science [5197]
- MSci Mathematics and Computer Science with an Industrial Year [9496]