Module Title:Advanced Programming
Language of Instruction:English
Credits: 10
NFQ Level:7
Module Delivered In 4 programme(s)
Teaching & Learning Strategies: Lectures, Laboratories, Programming Assignments, Continuous Assessment and Final Examination
Module Aim: To give students a thorough understanding and practical experience of programming with C, and to introduce OOP and GUI programming with C++ and C#.
Learning Outcomes
On successful completion of this module the learner should be able to:
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 Be able to identify time critical or hardware critical code components.
Pre-requisite learning
Module Recommendations

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

No recommendations listed
Incompatible Modules
These are modules which have learning outcomes that are too similar to the learning outcomes of this module.
No incompatible modules listed
Co-requisite Modules
No Co-requisite modules listed
Requirements
This is prior learning (or a practical skill) that is mandatory before enrolment in this module is allowed.
No requirements listed
 

Module Content & Assessment

Indicative Content
Application types
Development details of multiple source file programs using external object files, libraries, components, etc.; 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;
Complex declarations
n/a
Preprocessor
n/a
Structures
Unions,bit fields, Typedef
I/O & file handling; Scripting;
I/O & file handling; Scripting;
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
Assessment Breakdown%
Continuous Assessment25.00%
Practical25.00%
End of Module Formal Examination50.00%
Continuous Assessment
Assessment Type Assessment Description Outcome addressed % of total Assessment Date
Other Continuous assessments to test knowledge and application of lecture material 1,3 25.00 n/a
No Project
Practical
Assessment Type Assessment Description Outcome addressed % of total Assessment Date
Practical/Skills Evaluation Practical assignments to apply learned knowledge and develop problem solving skills 1,2 25.00 Sem 1 End
End of Module Formal Examination
Assessment Type Assessment Description Outcome addressed % of total Assessment Date
Formal Exam No Description 1,2,3 50.00 End-of-Semester

ITCarlow reserves the right to alter the nature and timings of assessment

 

Module Workload

Workload: Full Time
Workload Type Frequency Average Weekly Learner Workload
Lecture 20 Weeks per Stage 2.00
Laboratory 20 Weeks per Stage 4.00
Estimated Learner Hours 20 Weeks per Stage 2.50
Total Hours 170.00
 

Module Delivered In

Programme Code Programme Semester Delivery
CW_KCCYB_B Bachelor of Science (Honours) in Cyber Crime & IT Security 3 Mandatory
CW_KCSOF_B Bachelor of Science (Honours) in Software Development 3 Mandatory
CW_KCCYB_D Bachelor of Science in Cyber Crime & IT Security 3 Mandatory
CW_KCSOF_D Bachelor of Science in Software Development 3 Mandatory