FIT2034 - Computer programming 2
6 points, SCA Band 2, 0.125 EFTSL
Undergraduate Faculty of Information Technology
Leader(s): Mr Mike Smith (Caulfield); Mr Shane Moore (Gippsland); Ms Sheelagh Walton (South Africa)
Offered
Caulfield Second semester 2009 (Day)
Gippsland Second semester 2009 (Day)
Gippsland Second semester 2009 (Off-campus)
Singapore Second semester 2009 (Off-campus)
South Africa Second semester 2009 (Day)
Synopsis
Following on from FIT1002, this unit introduces more advanced object-oriented programming topics than its prerequisite, such as inheritance and polymorphism. It gives students a deeper understanding of programming and data structures by introducing recursion and dynamic data structures. It also gives more practical skills in designing, building and testing larger computer programs, including ones having graphical user interfaces, and utilising file I/O. Modern software tools to support programming activities of testing and group-based development are also demonstrated.
Objectives
At the completion of this unit, students will:
- demonstrate an understanding of advanced object-oriented concepts such as inheritance, polymorphism, and abstract classes and interfaces as provided for in Java.
- be able to create programs that provide a graphical user interface and use event handling.
- be able to write programs involving abstract and dynamic data structures, and implement algorithms for searching, insertion and deletion.
- be able to use the collection classes in the Java API.
- be able to implement algorithms that utilise recursion.
- have an understanding of design principles for building a multiple-class object-oriented program.
- be able to implement exception handling techniques
- be able to use files for persistent storage of data
- be able to construct test harnesses for multiple-class programs
- demonstrate an understanding of the range and purpose of modern tools to support the process of programming complex software systems.
Assessment
Examination (3 hours): 60%; Assignments: 40%
Contact hours
4 hrs/week
Prerequisites
CPE1001 or CSE1202 or GCO1811 or FIT1002 or equivalent
Students beginning Programming 2 are assumed to:
1. know the difference between a class and an object.
2. be able to read/explain existing Java code (at a basic level)
3. be able to implement a design in Java using multiple interacting classes and techniques such as sequence, selection, repetition, methods and parameter passing, scoping
Prohibitions
CFR1124, CFR2128, CFR3112, CPE1004, CSE1203, CSE2305, GCO1812, GCO3821, FIT1007, SFT1102.