COMP 2016 Programming Techniques (Advanced)
Credit Points 10
Legacy Code 300903
Coordinator Paul Davies Opens in new window
Description This subject builds on a basic understanding of procedural programming developed in previous subjects. Students continue to develop their programming skills and methodologies required for professional programming and for further study in later computing subjects. Topics covered include multi-dimensional arrays, file I/O, searching and sorting, and an introduction to object-oriented programming involving classes and inheritance. Students in this advanced subject will also investigate and apply advanced concepts such as function overloading and recursion.
School Computer, Data & Math Sciences
Discipline Programming
Student Contribution Band HECS Band 2 10cp
Check your fees via the Fees page.
Level Undergraduate Level 2 subject
Pre-requisite(s) COMP 1005
Incompatible Subjects COMP 2015 - Programming Techniques
Restrictions Students must be enrolled in 3688 Bachelor of Information Systems Advanced or 3684 Bachelor of Information and Communication Technology (Advanced)
Assumed Knowledge
Software development methodologies; Software analysis and design modelling tools and techniques; Programming languages; Implementing databases management systems; Software construction and testing; System documentation; Project Management.
Learning Outcomes
- With a chosen programming language in mind, analyse a given problem and: a). Develop an algorithm that applies structured programming techniques such as sequence, selection, iteration and modularisation that solve the given problem; b). Choose suitable data types to store relevant data for the given problem; c). Implement the solution algorithm using the chosen programming language, data types and control structures; d). Test and debug the program code to produce a working computer program.
- Write and implement programs that use data structures such as arrays to solve problems in programming involving multiple data items.
- Demonstrate how different searching and sorting methods operate and be able to implement them in working computer programs
- Store, retrieve and manipulate data programmatically from secondary storage
- Use object-oriented methodology to analyse relatively simple problems and develop object-oriented computer program solutions
- Write programs which utilise advanced object-oriented features such as function overloading
- Apply recursive algorithms to suitable types of problems.
- Solve programming problems by developing algorithms and fully tested/debugged program code that implement suitable structured programming techniques including appropriate choice of control and data structures.
- Use object-oriented methodology to analyse relatively simple problems and write object-oriented computer program solutions.
- Write programs which utilise more advanced object-oriented features such as function overloading, interfaces, aggregation, inheritance and polymorphism.
Subject Content
2. Multi-dimensional arrays
3. Character strings and textual data
4. Sorting and searching algorithms: Sequential Search, Binary Search, Selection Sort, Bubble Sort
5. Object-Oriented Programming including: a. Introduction to classes and objects b. Class construction c. Constructors and destructors d. Inheritance e. Polymorphism
6. Data files
7. Function overloading
8. Recursion
5. Object-Oriented Programming including: a. Introduction to classes and objects b. Class construction c. Constructors and destructors d. Inheritance e. Polymorphism f. Aggregation g. Interfaces
Assessment
The following table summarises the standard assessment tasks for this subject. Please note this is a guide only. Assessment tasks are regularly updated, where there is a difference your Learning Guide takes precedence.
Type | Length | Percent | Threshold | Individual/Group Task | Mandatory |
---|---|---|---|---|---|
Professional Task | Two Practical Deliverables. 1 to 5 programming tasks per practical deliverable. | 30 | N | Individual | Y |
Applied Project | 700 – 1200 lines of code | 40 | N | Individual | Y |
Professional Task | 90 minutes | 30 | Y | Individual | Y |
Prescribed Texts
- Gaddis. T. (2016). Starting out with Java: From control structures through objects (6th Ed.). Boston, MA : Pearson
Teaching Periods
Spring (2024)
Campbelltown
On-site
Subject Contact Paul Davies Opens in new window
View timetable Opens in new window
Penrith (Kingswood)
On-site
Subject Contact Paul Davies Opens in new window
View timetable Opens in new window
Parramatta - Victoria Rd
On-site
Subject Contact Paul Davies Opens in new window
View timetable Opens in new window
Spring (2025)
Campbelltown
On-site
Subject Contact Paul Davies Opens in new window
View timetable Opens in new window
Penrith (Kingswood)
On-site
Subject Contact Paul Davies Opens in new window
View timetable Opens in new window
Parramatta - Victoria Rd
On-site
Subject Contact Paul Davies Opens in new window