Monash University Handbooks 2008

FIT3126 - Applications with C++

6 points, SCA Band 2, 0.125 EFTSL

Undergraduate Faculty of Information Technology

Leader: Jon McCormack

Offered

Caulfield Second semester 2008 (Day)

Synopsis

The main topics covered in this unit are: Object-oriented design and programming in C++ which include object identification, data encapsulation, inheritance, and polymorphism; concurrent programming techniques which include principles of concurrency, safety and liveness design, multithreaded programming in C++; network and distributed software construction principles and techniques which include network software performance, client-server software construction, socket and RPC programming in C++; and study and compare C++ with Java and Ada in terms of large software constructions.

Objectives

By the completion of this unit students will have a theoretical and conceptual understanding of:

  1. object-oriented design and programming with C++ for large software development;
  2. concurrent design and programming with programming languages which do not have built-in features to support concurrency like C++;
  3. how to develop high performance software with programming languages that do not support concurrency such as C++;
  4. and good experience of network and distributed programming using C++.
At the completion of this unit, students will:
  1. Appreciate OO application design and implementation with C++;
  2. Appreciate design and implementation techniques of concurrent applications with C++;
  3. Appreciate design and implementation techniques of network applications with C++;
  4. have the practical skill of object identification in software development;
  5. have the practical skill of concurrent design with mutual exclusion, deadlock free software construction, live lock avoidance, and efficient task communications;
  6. achieved good programming skill with multithreading, semaphores, thread communication and synchronisation mechanism;
  7. Achieved good experience of network and distributed programming using OO programming, sockets and C++;
  8. Achieved real experience to develop high performance applications with C++ using OO programming together with concurrency and networking.
Relationships, Communication and TeamWork
Objectives in this domain cover skills for building relationships and working collaboratively. They include communication skills, teamwork skills and leadership and management skills. This domain is closely linked to the affective domain, but involves objectives that develop skills related to group work.










Assessment

Examination: 50%
Practical work : 50%

Contact hours

4 x contact hrs/week

Prerequisites

CPE1001 or CSE1202 or FIT1002 or equivalent

Prohibitions

(translation set CSE3400), CSE4530

[an error occurred while processing this directive]