Learners will be exposed to the main concepts of procedural programming, building on the theory previously explored in problem-solving. The principles of effective program design, implementation and debugging will be explored.
- This course is offered in 50 contact hours.
Upon successful completion of this unit, learners will be able to:
- Understand the concepts, principles and features involved in programming in a high-level language;
- Design a computer program;
- Develop programs in a high-level programming language;
- Test a computer program.
Understand the concepts, principles, practices and features of programming in a high-level language:
- Characteristics of programming: low-level languages; high-level languages; generations; algorithms, source code, machine code etc.
- Programming languages and paradigms: procedural; object oriented; functional; event driven; simple overviews and uses
- Language selection considerations, criteria for selection
- Key features of high-level programming languages: comments, variables, constants, functions, procedures, keywords, predefined functions; programming libraries, I/O
- Programming Environments: Compiler, Interpreter; Features of the development environment: code generation, syntax highlighting, line numbering, refactoring, debuggers, watch, breakpoints, single-step, step-throughs; tools and techniques.
- Programming standards and practice: modularization; use of comments, code layout eg. consistent indentation and descriptive identifiers
Design a computer program:
- Systematic approach for the development of a solution to a problem: structure diagrams, data flow diagrams, entity relationship models, flow charts, pseudo code, decision tables, state-transition diagrams
- Basic constructs of algorithms: assignment, sequence, selection and repetition
- Technical documentation: requirements specification, preliminary design, detailed design, data design, input/output design, procedural design, modular design, structured design, object design, file design
Develop programs in a high-level programming language:
- Programming language features, keywords and syntax
- Comments; data types and structures; declare and use variables, constants; variable scope; statements, expressions, creating and evaluating expressions, rules of precedence; assignment operator; operators (arithmetic, relational and boolean); constructs (sequence, selection and repetition)
- Arrays: one and two-dimensional arrays; iterating through; linear search;
- Methods, procedures, functions, subroutines
- Parameters: data types, passing data, return values
- Basic I/O functions: Input and Output – Screen; File Handling: reading and writing files.
- Exception Handling
Test a computer program:
- Program testing and documentation: Debugging; Test documentation; Test plan, Test strategy; black box, white box testing, unit testing, functional testing, regression testing, usability testing; Dry run, trace tables
- Types of error in programs: logic, syntax, runtime
- Test data: Normal, abnormal, extreme
Students must utilize one of the following programming languages:
- C-based language
- Matriculation to Higher National Diploma: Computing
Your path to a Computing degree starts here.
The Matriculation to the Higher National Diploma (HND) in Computing is a Pearson (UK) and ACTT approved Foundation programme, geared toward CSEC / CXC graduates as an alternative to CAPE or 6th Form. It provides such learners with the opportunity to pursue a higher level qualification in a Computing discipline by enabling a seamless transfer from Secondary to Post-secondary education.
Graduates of the Matriculation programme will progress directly to Pearson's Higher National Diploma in Computing and then onto the final year of an undergraduate honours degree in Computing & Information Systems (University of Greenwich).