1.2.4 Types of Programming Language Flashcards
(a) Need for and characteristics of a variety of programming paradigms. (b) Procedural languages. (c) Assembly language (including following and writing simple programs with the Little Man Computer instruction set). See appendix 5d. (d) Modes of addressing memory (immediate, direct, indirect and indexed). (e) Object-oriented languages (see appendix 5d for pseudocode style) with an understanding of classes, objects, methods, attributes, inheritance, encapsulation and polymorphism.
Name the four programming paradigms in the specification
Procedural, Object-Oriented, Functional and Declarative
How does procedural programming work?
A series of instructions tell the computer how to handle the data given in order to solve the problem.
What is structured programming?
A type of procedural programming which utilities the programming concepts of SIRS, Selection, Iteration, Recursion and Sequencing.
What data types do procedural languages have available?
Integer, Real, Floating numbers. Characters Boolean and String.
What data structures are found in procedural languages?
Arrays and records, however programmers can abstract their own data types such as stacks, queues, trees or a hash table.
What is a class?
A class is a template description of the methods and variables available within the objects produced from said class.
What is a object?
A object is a instance of a class.
What are the three defining features of OOP?
Inheritance, Polymorphism and Encapsulation.
What is inheritance?
Inheritance is the ability of a class to take attributes from another, when a class does this it is a sub class and the class the attributes were taken from is a super class.
What is polymorphism?
The ability of the programming language to differentiate between objects based on their class.
What is encapsulation?
The bundling of data and methods that operate on said data.
What are three advantages of OOP?
OOP methodology forces programmers to undertake extensive planning which makes for better design less prone to bugs.
Re usability, Objects defined, coded and tested can be reused in many different programs.
Maintenance, The modular structure of OOP makes it easier to maintain than other paradigms.
What is functional programming?
Functional programming is where statements are written as a series of functions where data input is taken as arguments and a output is produced.
What is declarative programming?
Where the programmer outlines the problem in statements and the programming language decides how best to solve said problem.
Give an example of a language that supports each programming paradigm.
Procedural - Python, Pascal
Object orientated - Java,Python,Delphi
Declarative - SQL
Functional - Haskell,Python,C#,Java.