Module Details

Module Code: PROG
Module Title: Advanced Programming
Title: Advanced Programming
Module Level:: 7
Credits:: 10
Module Coordinator: Nigel Whyte
Module Author:: Noel O'Hara
Domains:  
Module Description: To give students a thorough understanding and practical experience of programming with C, and to introduce Object Oriented Programming with C++.
 
Learning Outcomes
On successful completion of this module the learner will be able to:
# Learning Outcome Description
LO1 Be familiar with correct program structure and good programming practice
LO2 Have an understanding of C/C++ necessary to design and implement a given application
LO3 Utilise problem solving techniques to analyse a given problem and develop a solution for it;
Dependencies
Module Recommendations

This is prior learning (or a practical skill) that is recommended before enrolment in this module.

No recommendations listed
Co-requisite Modules
No Co-requisite modules listed
Additional Requisite Information
No Co Requisites listed
 
Indicative Content
Introduction
Building , Debugging; Testing; Programming paradigms;
C programming
Introduction; Data types; Enumerations; Symbolic constants; Operators; Expression evaluation - precedence & associativity;.
Flow control
Program structure; Programming standards
Functions
Parameter passing; Recursion; Stack issues; Scope; Static functions. Functions with variable sized parameter lists.
Arrays
Contiguousness; Arrays as function parameters; Strings; Initialisation.
Pointers
Pointer arithmetic; Pointers on PC
Pointers and arrays
Arrays of pointers; Character arrays vs. string constants; Pointers to functions; Dynamic memory; Stack & Heap;
Structures
Unions,bit fields, Typedef
I/O & file handling;
I/O & file handling;
C++
Building on C; OOP; Classes, objects, constructors and destructors; Data hiding; Encapsulation; Inheritance; Polymorphism; Operator and function overloading; Other C++ enhancements; GUI & systems programming
Module Content & Assessment
Assessment Breakdown%
Project45.00%
Practical25.00%
End of Module Formal Examination30.00%

Assessments

Full Time

No Continuous Assessment
Project
Assessment Type Project % of Total Mark 15
Timing Week 5 Learning Outcomes 1,2,3
Non-marked No
Assessment Description
Project assignments to apply learned knowledge and develop problem solving skills
Assessment Type Project % of Total Mark 15
Timing Week 8 Learning Outcomes 1,2,3
Non-marked No
Assessment Description
Practical assignments to apply learned knowledge and develop problem solving skills
Assessment Type Project % of Total Mark 15
Timing Week 12 Learning Outcomes 1,2,3
Non-marked No
Assessment Description
Practical assignments to apply learned knowledge and develop problem solving skills
Practical
Assessment Type Practical/Skills Evaluation % of Total Mark 25
Timing n/a Learning Outcomes 1,2
Non-marked No
Assessment Description
Practical assignments to apply learned knowledge and develop problem solving skills
End of Module Formal Examination
Assessment Type Formal Exam % of Total Mark 30
Timing End-of-Semester Learning Outcomes 1,2,3
Non-marked No
Assessment Description
No Description
Reassessment Requirement
Repeat examination
Reassessment of this module will consist of a repeat examination. It is possible that there will also be a requirement to be reassessed in a coursework element.

SETU Carlow Campus reserves the right to alter the nature and timings of assessment

 

Module Workload

Workload: Full Time
Workload Type Workload Category Contact Type Workload Description Frequency Average Weekly Learner Workload Hours
Lecture Contact Lecture 12 Weeks per Stage 3.00 36
Laboratory Contact Laboratory 12 Weeks per Stage 4.00 48
Estimated Learner Hours Non Contact Estimated Learning Hours 15 Weeks per Stage 11.07 166
Total Weekly Contact Hours 7.00
 
Module Resources
Recommended Book Resources
  • Brian W. Kernighan, Dennis M. Ritchie. (1988), The C programming language, Prentice Hall, Englewood Cliffs, N.J., [ISBN: 0 13 110362-8].
  • Stanley B. Lippman. C++ primer, Reading, Mass ; Addison-Wesley, c1991(1993 printing)., [ISBN: 0-201-54848-8].
  • W. Arthur Chapman. (1998), Mastering C++ programming, Macmillan, Basingstoke [England], [ISBN: 0-333-73179-4].
  • Kent Reisdorph. (1999), Sams Teach yourself Borland C++ Builder 4 in 24 hours, Sams, Indianapolis, Ind., [ISBN: 0 672 31626-9].
  • Margaret A. Ellis, Bjarne Stroustrup. (1995), The annotated C++ reference manual, Addison-Wesley, Reading, Mass., [ISBN: 0-201-51459-1].
This module does not have any article/paper resources
This module does not have any other resources
Discussion Note: