Notice
As part of Phase 3 of our return to campus plan, most units will now run tutorials, seminars and other small group learning activities on campus for the second half-year, while keeping an online version available for those students unable to return or those who choose to continue their studies online.
To check the availability of face to face activities for your unit, please go to timetable viewer. To check detailed information on unit assessments visit your unit's iLearn space or consult your unit convenor.
Unit convenor and teaching staff |
Unit convenor and teaching staff
Damian Jurd
Matthew Roberts
|
---|---|
Credit points |
Credit points
10
|
Prerequisites |
Prerequisites
COMP1010 or COMP125
|
Corequisites |
Corequisites
|
Co-badged status |
Co-badged status
|
Unit description |
Unit description
Object-oriented programming is a key technology for modern computing. This unit bridges the gap between introductory programming and larger multi-person projects by considering the use of object-oriented techniques to produce intermediate sized software. Practical exercises emphasise the importance of programming practices such as appropriate documentation, systematic approaches to debugging and testing, and the use of software development tools. The unit is taught using Java.
|
Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates
On successful completion of this unit, you will be able to:
No extensions will be granted without an approved application for Special Consideration. There will be a deduction of 20% of the total available marks made from the total awarded mark for each 24 hour period or part thereof that the submission is late. For example, 25 hours late in submission for an assignment worth 40 marks – 40% penalty – deducted from the total for an assignment marked out of 100. No submission will be accepted after solutions have been posted.
The unit has three module examinations which assess the material studied in weeks 1-4, 5-9, and 10-12, respectively. Each examination is offered twice: once during the workshop classes in weeks 5, 10 and 13, respectively, and once in the final examination period. The repeat offerings of the examination will not be identical examinations but will be designed to assess the same material. All examinations delivered electronically via iLearn in the computing laboratories on level 1 of building 9WW.
If a student attempts an examination more than once then the higher of their marks for the two attempts will be used to compute the grade.
If you receive Special Consideration for the final exam, a supplementary exam will be scheduled after the normal exam period, following the release of marks. By making a special consideration application for the final exam you are declaring yourself available for a resit during the supplementary examination period and will not be eligible for a second special consideration approval based on pre-existing commitments. Please ensure you are familiar with the policy prior to submitting an application. Approved applicants will receive an individual notification one week prior to the exam with the exact date and time of their supplementary examination.
Name | Weighting | Hurdle | Due |
---|---|---|---|
Weekly Tasks | 16% | No | Weeks 1-4, 6-9, 11, 12 |
Module Examinations | 44% | No | Weeks 5, 10, 13, Exam Period |
Assignment One | 8% | No | Week 4 |
Assignment Two | 14% | No | Week 8 |
Assignment Three | 18% | No | Week 12 |
Assessment Type 1: Participatory task
Indicative Time on Task 2: 12 hours
Due: Weeks 1-4, 6-9, 11, 12
Weighting: 16%
Each week you will be set a task to complete which will be submitted online or checked in a workshop session.
Assessment Type 1: Examination
Indicative Time on Task 2: 24 hours
Due: Weeks 5, 10, 13, Exam Period
Weighting: 44%
On three occasions during semester and once in the final exam period students sit a module examination. The three in-semester exams are run in practical workshops and each offers a different exam.
Assessment Type 1: Programming Task
Indicative Time on Task 2: 5 hours
Due: Week 4
Weighting: 8%
The assignments are programming exercises that allow skills to be demonstrated by solving a more substantial problem than in the weekly exercises.
Assessment Type 1: Programming Task
Indicative Time on Task 2: 10 hours
Due: Week 8
Weighting: 14%
The assignments are programming exercises that allow skills to be demonstrated by solving a more substantial problem than in the weekly exercises.
Assessment Type 1: Programming Task
Indicative Time on Task 2: 12 hours
Due: Week 12
Weighting: 18%
The assignments are programming exercises that allow skills to be demonstrated by solving a more substantial problem than in the weekly exercises.
1 If you need help with your assignment, please contact:
2 Indicative time-on-task is an estimate of the time required for completion of the assessment task and is subject to individual variation
Each week of COMP2000 has one hour of lectures and a two-hour mixed class (i.e., two hour combined tutorial and practical). The Mixed classes commence in Week 1 and are held in the Computer Laboratory in room 9WW 121 (Wednesdays and Thursdays) or 9WW 123 (Fridays). In all cases students are expected to do significant preparatory work, readings and exercises before attending classes.
The required text for the unit is:
Note that this text book was introduced for the 2011 offering of the unit (then known as COMP229), so you may be able to purchase a second hand copy from a former COMP229 student. Failing that, you will be able to purchase a copy from the University COOP Bookshop or from your favourite online purveyor of fine literary works.
There will be no lecture notes provided, all examinable material is given in course readings and the textbook. Students are required to study this material and answer preparatory questions before class.
The Macquarie library contains many books on object-oriented programming in general, and on programming specifically in Java, that you may want to use to supplement the text and lecture notes.
One particularly useful service that the library provides you with is access to many Java related titles online via the Safari Books Online (http://proquest.safaribooksonline.com/) service. Using this service, which you can only access from a machine connected to the University network, you might like to have a look at the following Java titles:
Online Resources
COMP2000 will make extensive use of the iLearn system for delivery of class materials, discussion boards, real time chat, submission of work and access to marks and feedback. Students should check the iLearn site (http://ilearn.mq.edu.au) regularly for unit updates.
Questions and general queries regarding the content of this unit, its tutorials or practicals should be posted to the appropriate discussion board on the COMP2000 iLearn site. In particular, any questions which are of interest to all students in this unit should be posted to one of these discussion boards, so that everyone can benefit from the answers.
Echo360
Audio and screen video recordings of the lectures will be made available online via Echo360. A link to these recordings will be provided on the iLearn site for this unit
Technology Used and Required
The practical work in this unit involves programming in Java (https://www.java.com) using the Microsoft Visual Studio Code IDE (https://code.visualstudio.com). We will also be using a distributed version control system called Git to access shared code repositories hosted on the BitBucket website (https://bitbucket.org).
This software is already installed for you in the 200 level computing labs (ground floor, 9 Wally's Walk) and it is available to download, install and use for free on your own machine(s). It should work equally well on Mac OSX, Linux or Microsoft Windows platforms.
Tools and libraries to support debugging, automated testing, GUI development and so forth will be introduced and used as the semester progresses. When that occurs you will be provided with full instructions in lectures on how to install and use each one.
week | lecture | lecturer | workshop | submit |
1 | Version Control | DJ | Version Control | |
2 | Java Classes and Objects | DJ | Java Classes and Objects | |
3 | Inheritance and Overloading | DJ | Inheritance and Overloading | |
4 | Generics | DJ | Generics | assign 1 |
5 | Exceptions, Introduction to Patterns | DJ | Exam: Java Concepts | |
6 | Strategy Pattern, Observer Pattern | DJ | Observer Pattern | |
7 | Decorator Pattern, Iterator/Composite Patterns | MR | Decorator Pattern, Iterator/Composite Patterns | |
8 | Singleton Pattern, Command Pattern | MR | Singleton Pattern, Command Pattern | assign 2 |
9 | Concurrency | MR | Concurrency | |
10 | Concurrency | MR | Exam: Design Patterns | |
11 | Concurrency | MR | Concurrency | |
12 | Concurrency | MR | Concurrency | assign 3 |
13 | Review | MR | Exam: Concurrency |
Macquarie University policies and procedures are accessible from Policy Central (https://staff.mq.edu.au/work/strategy-planning-and-governance/university-policies-and-procedures/policy-central). Students should be aware of the following policies in particular with regard to Learning and Teaching:
Students seeking more policy resources can visit the Student Policy Gateway (https://students.mq.edu.au/support/study/student-policy-gateway). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.
If you would like to see all the policies relevant to Learning and Teaching visit Policy Central (https://staff.mq.edu.au/work/strategy-planning-and-governance/university-policies-and-procedures/policy-central).
Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/study/getting-started/student-conduct
Results published on platform other than eStudent, (eg. iLearn, Coursera etc.) or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit ask.mq.edu.au or if you are a Global MBA student contact globalmba.support@mq.edu.au
Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/
Learning Skills (mq.edu.au/learningskills) provides academic writing resources and study strategies to help you improve your marks and take control of your study.
The Library provides online and face to face support to help you find and use relevant information resources.
Students with a disability are encouraged to contact the Disability Service who can provide appropriate help with any issues that arise during their studies.
For all student enquiries, visit Student Connect at ask.mq.edu.au
If you are a Global MBA student contact globalmba.support@mq.edu.au
For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/.
When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.