Postgraduate Course: Introduction to Java Programming (INFR09021)
|School||School of Informatics
||College||College of Science and Engineering
||Availability||Available to all students
|Credit level (Normal year taken)||SCQF Level 9 (Postgraduate)
|Home subject area||Informatics
||Other subject area||None
||Taught in Gaelic?||No
|Course description||The study of Informatics generally involves the formation of hypotheses and theories which can then be tested through the creation of computer models. In order to create these models, students need to be able to write their own computer programs as well as use pre-existing special purpose systems and tools. This module is intended to provide students who do not already have significant computing experience, with the ability and confidence to use Java as their programming tool for their summer project work.
The course material follows the BlueJ book, supported by a series of online, recorded lectures which allow students to work at their own time and pace. Practical work is supported by timetabled laboratory sessions, and the use of online tools for demonstrator and peer support outside of the scheduled times.
Entry Requirements (not applicable to Visiting Students)
|Prohibited Combinations|| Students MUST NOT also be taking
Informatics 1 - Object-Oriented Programming (INFR08014)
||Other requirements|| For Informatics PG students only, or by special permission of the School. Students are expected to have some basic familiarity with the concepts of computing and data representation.
|Additional Costs|| None
Information for Visiting Students
|Displayed in Visiting Students Prospectus?||Yes
Course Delivery Information
|Delivery period: 2012/13 Semester 1, Available to all students (SV1)
||Learn enabled: Yes
|Central||Lecture||1-11|| 15:00 - 15:50|
||Week 1, Tuesday, 15:00 - 15:50, Zone: Central. LTA David Hume Tower |
|Main Exam Diet S1 (December)||1:30|
Summary of Intended Learning Outcomes
|1 - Students will be able to state, in writing and verbally, basic principles of object-oriented software design.
2 - Given an object oriented design as a diagram or textual description, students will be able to evaluate the quality of that design and discuss its strengths and weaknesses with respect to its stated purpose.
3 - Students will be able to design an object oriented software solution to a problem using diagrammatic and textual representations.
4 - Students will be able to implement an object oriented design in the Java language.
5 - Students will be able to relate the syntax of the Java language to its semantics, and analyse the result of executing fragments of Java syntax.
6 - Given a Java program, students will be able to explain, in writing and verbally, what would happen when that program is executed, and identify bugs which would prevent it executing as described in the program documentation.
7 - Given a Java program and a debugging tool, students will be able to identify and correct bugs which prevent the program from functioning as intended.
8 - Students will be to write documentation in Javadoc style to explain the design and implementation of their own code, or example code which is supplied to them.
9 - Students will be able to use an appropriate software development environment, such as BlueJ, Eclipse or NetBeans.
10 - Students will be able to integrate library code with their own programs using appropriate software tools.
11 - Students will be able to use online technical documentation to solve implementation problems as they arise during software development.
12 - Students will be able to describe stages in the software development process and the identify software tools which are used to support these stages.
|Written Examination 25|
Assessed Assignments 75
Oral Presentations 0
Assessment is through two major practical programming exercises, and an online, multiple-choice exam. Students will carry out some of the work on the programming exercises during the assigned laboratory sessions.
If delivered in semester 1, this course will have an option for semester 1 only visiting undergraduate students, providing assessment prior to the end of the calendar year.
||Object-oriented programming concepts:
- Classes, objects, sub-classes, inheritance, encapsulation, polymorphism.
Software development - principles and practice:
- Producing correct, understandable and maintainable classes.
- Responsibility driven design.
- Coupling, cohesion, refactoring.
Using appropriate development tools:
- Integrated development environments.
The Java programming language and standard library packages:
- Packages, classes, interfaces, instances, fields, methods.
- Variables, identifiers, types, values.
- Expressions, statements, conditionals, loops, iterators.
Basic User Interfaces:
- Swing components.
- Event handling.
Relevant QAA Computing Curriculum Sections: Programming Fundamentals
||* Objects First with Java - A Practical Introduction Using BlueJ by David J. Barnes & Michael Kölling, Fourth Edition (Prentice Hall / Pearson Education, 2008. ISBN-10: 0137005628)
* The Java Tutorial, Third Edition by Mary Campione, Kathy Walrath, and Alison Huml (Addison Wesley, 2001)
Timetabled Laboratories 20
Non-timetabled assessed assignments 40
Private Study/Other 40
|Course organiser||Dr Iain Murray
Tel: (0131 6)51 9078
|Course secretary||Miss Kate Weston
Tel: (0131 6)50 2701
© Copyright 2012 The University of Edinburgh - 14 January 2013 4:08 am