Topic 6 of 6 · Form 6
Programming, software development and advanced theory
Constructs (sequence, selection, iteration), procedures and functions (by value and by reference parameters), string handling, file processing (sequential, random access), exception handling.
Notes for this topic 1 file, in order
Create a free account to download PDFs.
Programming
Constructs (sequence, selection, iteration), procedures and functions (by value and by reference parameters), string handling, file processing (sequential, random access), exception handling.
Programming paradigms
Low-level, imperative (procedural), object-oriented (classes, objects, attributes, methods, encapsulation, inheritance, polymorphism, containment, getters and setters) and declarative (Prolog facts, rules and goals).
Worked example: A Prolog fact base contains parent(sara, tom). parent(tom, rudo). Write a rule for grandparent.
grandparent(X, Z) :- parent(X, Y), parent(Y, Z).
Software development
Program development life cycles (waterfall, iterative, rapid application development); program design (structure charts, state-transition diagrams); testing (white-box, black-box, dry run, walkthrough, integration, alpha, beta, acceptance); test data (normal, abnormal, extreme, boundary); maintenance (corrective, perfective, adaptive).
Advanced theory
User-defined data types (enumerated, pointer, set, record, class); file organisation (serial, sequential, random) and access; floating-point representation and normalisation; protocols (TCP/IP layers); circuit and packet switching; Boolean algebra and Karnaugh maps; flip-flops; RISC versus CISC and pipelining; parallel processing; virtual machines; artificial intelligence (graphs, machine learning, neural networks).
Check yourself
- What is the difference between passing by value and by reference?
- What is polymorphism?
- Give one advantage of pipelining.
Show answers
- By value passes a copy; by reference passes the address so changes affect the original variable.
- Methods in different classes with the same name behaving differently (overriding).
- More instructions are processed in a given time because stages overlap.
Questions about this topic (0)
No questions about this topic yet.
Sign in or create a free account to join in.