Postgraduate Course: Introduction to Practical Programming with Objects (INFR11189)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Postgraduate)
||Availability||Available to all students
|Summary||*This course replaces 'Introduction to Java Programming (INFR09021)' from 2019/20*
This module is intended for students who have some previous programming experience, but would like to develop their ability to write complete, practical applications. Students with no programming experience should be able to complete the course, although this will almost certainly be challenging and will require additional time. The course uses an object-oriented approach, based around the Java language, but no previous experience of specific languages or technologies is assumed.
Learning to program requires practice, and students on this course typically have very diverse programming backgrounds. Locating and working with online materials is also an essential skill for developing real applications. For these reasons, the course has no regular lectures on the content - it is facilitated by structured assignments, a recommended textbook, online materials, well-supported lab sessions (or online tutorials for distance learning students), and an online forum. This provides a flexible learning environment, and students should be prepared to manage their own schedule and to take advantage of the resources in a way which is most appropriate to their own experience.
The course content includes the following topics:
- Object-oriented design - classes, objects, inheritance, coupling, cohesion, responsibility.
- The basics of the Java programming language.
- The use of external libraries - collections, graphical interfaces, networking.
- Development tools.
- Code readability and documentation.
- Graphical user interfaces
Entry Requirements (not applicable to Visiting Students)
|Prohibited Combinations|| Students MUST NOT also be taking
Informatics 1 - Object-Oriented Programming (INFR08014)
Students MUST NOT also be taking
Introduction to Practical Programming with Objects (INFD11001)
|Other requirements|| This course is open to Informatics PG students. For external students where this course is not listed in your DPT, please seek special permission from the course organiser (lecturer).
Students are expected to have some previous programming experience (not necessarily with an object-oriented language). It is possible to take the course without any previous experience, but this will almost certainly be challenging, and require additional time.
Information for Visiting Students
|High Demand Course?
Course Delivery Information
|Academic year 2020/21, Available to all students (SV1)
|Learning and Teaching activities (Further Info)
Lecture Hours 2,
Supervised Practical/Workshop/Studio Hours 22,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
|Assessment (Further Info)
|Additional Information (Assessment)
||Assessment is through two major practical programming exercises. Students will carry out some of the work on the programming exercises during the assigned laboratory sessions.
You should expect to spend approximately 40 hours on the coursework for this course.
||Students will receive extensive formative feedback through interaction with other students and the demonstrators during lab sessions, and via the Piazza online discussion forum.
Each student will also receive oral feedback during the coursework demonstrations.
Summative feedback will occur through automated and human marking of the 2 assignments.
|No Exam Information
On completion of this course, the student will be able to:
- Design and implement a complete, realistic Java application to a given specification.
- Utilise an object-oriented approach to produce a well-structured, modular and maintainable design which is evaluated and justified by comparison with plausible alternatives.
- Produce code which is clear, readable and adequately documented.
- Locate and utilise supporting resources, including 3rd party library code, documentation, and online materials to support development and debugging.
- Utilise appropriate development tools to support development, debugging and documentation.
|* Objects First with Java - A Practical Introduction Using BlueJ by David J. Barnes & Michael Kölling, (Prentice Hall / Pearson Education, 2016 ISBN 9780132835541)|
|Graduate Attributes and Skills
|Course organiser||Mr Paul Anderson
Tel: (0131 6)51 3241
|Course secretary||Ms Lindsay Seal
Tel: (0131 6)50 2701