Back to Module List

CMPC1X04 - PROGRAMMING FOR APPLICATIONS

Module Code:
CMPC1X04
Department:
Computing Sciences
Credit Value:
20
Level:
1
Organiser:
Dr. Geoffrey Mckeown
This module gives an introduction to computer systems and to programming using Java. The module assumes no prior knowledge of programming and is aimed at the non-specialist. This module is an alternative pre-requisite for a number of second level CMP modules, including CMPC2M11 and CMPC2G04.

Submission:

Written coursework should be submitted by following the standard CMP practice. Students are advised to refer to the Guidelines and Hints on Written Work in CMP.

Deadlines:

If coursework is handed in after the deadline day or an agreed extension:
 

Work submitted Marks deducted
After 15:00 on the due date and before 15:00 on the day following the due date 10 marks
After 15:00 on the second day after the due date and before 15:00 on the third day after the due date 20 marks
After 15:00 on the third day after the due date and before 15:00 on the 20th day after the due date.  All the marks the work merits if submitted on time (ie no marks awarded) 
After 20 working days Work will not be marked and a mark of zero will be entered


Saturdays and Sundays will NOT be taken into account for the purposes of calculation of marks deducted.

All extension requests will be managed through the LTS Hub. A request for an extension to a deadline for the submission of work for assessment should be submitted by the student to the appropriate Learning and Teaching Service Hub, prior to the deadline, on a University Extension Request Form accompanied by appropriate evidence. Extension requests will be considered by the appropriate Learning and Teaching Service Manager in those instances where (a) acceptable extenuating circumstances exist and (b) the request is submitted before the deadline. All other cases will be considered by a Coursework Coordinator in CMP.

For more details, including how to apply for an extension due to extenuating circumstances download Submission for Work Assessment (PDF, 39KB)
 

Plagiarism:

Plagiarism is the copying or close paraphrasing of published or unpublished work, including    the work of another student; without due acknowledgement. Plagiarism is regarded a serious offence by the University, and all cases will be investigated. Possible consequences of plagiarism include deduction of marks and disciplinary action, as detailed by UEA's Policy on Plagiarism and Collusion.


Module specific:

  • To introduce the essential concepts of object-oriented programming
  • To present the Java programming language
  • To introduce the use of stepwise refinement in the problem-solving process
  • To introduce File Input-Output in Java

Transferable skills:
On completion of this unit students will:

  • Have enhanced their analytic problem solving skills
  • Be able to recognise and use appropriately technical terminology
  • Have had experience of writing simple technical reports
  • Have developed their programming skills
  • Have increased experience of using software tools.

On successful completion of this unit a student will:

  • Understand the essential concepts of object-oriented programming.
  • Be familiar with the essential algorithmic control constructs, that is, sequence, selection and repetition.
  • Know how to develop simple algorithms by stepwise refinement.
  • Be familiar with the organisation of the standard Java class library and its documentation.
  • Know how to use javadoc comments to document Java classes.
  • Know how to use a simple integrated development environment (IDE) to develop and test simple object-oriented programs making appropriate use of these concepts and techniques

In addition, students are expected to spend time reading and working on worksheets for the lab classes. Each worksheet contains exercises of both a theoretical and a practical nature relating to the material covered in the previous week's lectures.

Total Hours: 47 hours

Lectures: 27 hours

  1. Introduction, Java program structure (3 hrs lecture)
  2. Static methods (1 hr lecture)
  3. Invoking methods, object reference variables (2 hrs lecture)
  4. Control statements (2 hrs lecture)
  5. The problem-solving process (3 hrs lecture)
  6. Object interaction (2 hrs lecture)
  7. Looping and fixed-size collections (3 hrs lecture)
  8. Generic types and flexible-sized collections (2 hrs lecture)
  9. Introduction to graphics (3 hrs lecture)
  10. Introduction to exception handling (1 hr lecture)
  11. Java interfaces and abstract classes (2 hrs lecture)
  12. Inheritance and Polymorphism (3 hrs lecture)


Laboratory work: 20 hours


Examination with Coursework or Project