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 is intended for students who have no prior experience of object-oriented programming. It does assume knowledge of basic programming concepts, but provides an introduction to object-oriented design and the Java programming language. Students with no programming experience will find this course challenging, but should be able to complete it if prepared to invest additional time in self-guided study of the required basics.
This course uses a flipped classroom model to provide a flexible learning environment. It follows a range of online materials and a recommended textbook that students explore at their own pace. Making the most of these resources requires students to manage their own schedule and locate materials appropriate to their level of experience. An online discussion board is used for asynchronous, guided learning and peer support. The only timetabled events are weekly live sessions, which are used flexibly for lectures, Q&A sessions and discussion of the assignments. Assessment is 100% coursework and based on two assignments.
The course covers the following topics:
- Introduction to the Java programming language
- Object-oriented design (classes, objects, inheritance, responsibility)
- Code readability and documentation
- The use of external libraries
- Graphical user interfaces
- Introduction to version control
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 2022/23, Available to all students (SV1)
|Learning and Teaching activities (Further Info)
Lecture Hours 7,
Supervised Practical/Workshop/Studio Hours 22,
Feedback/Feedforward Hours 4,
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, which are expected to take 40 hours in total.
||Students will receive formative feedback through interaction with other students and staff via the Piazza online discussion forum. Summative feedback will occur through automated and human marking of the 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
||Problem solving, Analytical thinking, Handling complexity and ambiguity, Independent learning and development, Change management, Planning, organising and time management, Creativity and inventive thinking.
|Course organiser||Mr David Symons
Tel: (0131 6)51 5661
|Course secretary||Ms Lindsay Seal
Tel: (0131 6)50 2701