2.4.2
Programming Paradigms
Programming Paradigms
Programming Paradigms
There are several different types of programming paradigms to help us solve different types of problems.
Programming paradigms
Programming paradigms
- A programming paradigm is a way of coding to solve a problem.
- We have 4 types of paradigm and each one is geared towards certain types of situations.
- Within each paradigm there are many different programming languages that all offer different things to each other.
- Some programming languages can be used for more than one paradigm.
Procedural programming
Procedural programming
- Procedural programming is the most common paradigm of programming language.
- Procedural languages have built in simple data types like string, char, boolean, int and real.
- Procedural languages focus on a set of instructions that are followed through to achieve a desired outcome at the end.
- Python is foremost a procedural language.
Object orientated programming
Object orientated programming
- Object orientated programming came about as developers needed to model real world items that could be copied over and over again but given different attributes.
- An object “class” is set up and shows the attributes (such as colour of a car) and its behaviours (such as engine_start), this class is a blueprint for creating an object.
- Once a class is defined, it can be reused to create “instances” of the object as many times as the developer needs.
- Java and Python are object orientated languages.
Declarative programming
Declarative programming
- Declarative languages use statements to describe a problem to be solved instead of how to solve the problem.
- The statements are given to the programming language engine, it then figures out how to solve the problem and return a result.
- SQL is a declarative language.
Functional programming
Functional programming
- In functional programming, functions (not procedures) are the blocks we build programs out of.
- Functions are different to procedures as they have to follow set rules:
- They must take in valid inputs, return an output, and not have any side effects.
- Haskell and Python are examples of languages that can be functional languages.
Procedural Programming Languages
Procedural Programming Languages
Procedural languages are the most common type of programming language.
Procedural languages
Procedural languages
- Procedural languages have become more popular.
- Procedural languages now have many libraries of pre-compiled code to use.
- This speeds up the programming process.
- Netflix use the python programming language to manage their systems.
Data types and structures
Data types and structures
- Procedural languages have built in basic data types such as strings, integers, real numbers, boolean and char.
- Procedural languages also have advanced data structures such as arrays, stacks and queues.
Procedures
Procedures
- Procedural language programs are built up of procedures that perform an action.
- The procedures are reusable and make it quicker to program.
1Components of a Computer
1.1Structure & Function of the Processor
1.2Types of Processors
2Software & Software Development
2.1Systems Software
2.2Applications Generation
2.3Software Development
3Exchanging Data
3.1Compression, Encryption & Hashing
3.3Networks
4Data Types, Data Structures & Algorithms
4.1Data Types
5Legal, Moral, Cultural & Ethical Issues
5.1Computing Related Legislation
6Elements of Computational Thinking
6.1Thinking Abstractly
6.2Thinking Procedurally
6.3Thinking Logically
7Problem Solving & Programming
7.1Programming Techniques
7.2Programming Construction
Jump to other topics
1Components of a Computer
1.1Structure & Function of the Processor
1.2Types of Processors
2Software & Software Development
2.1Systems Software
2.2Applications Generation
2.3Software Development
3Exchanging Data
3.1Compression, Encryption & Hashing
3.3Networks
4Data Types, Data Structures & Algorithms
4.1Data Types
5Legal, Moral, Cultural & Ethical Issues
5.1Computing Related Legislation
6Elements of Computational Thinking
6.1Thinking Abstractly
6.2Thinking Procedurally
6.3Thinking Logically
7Problem Solving & Programming
7.1Programming Techniques
7.2Programming Construction
Unlock your full potential with GoStudent tutoring
Affordable 1:1 tutoring from the comfort of your home
Tutors are matched to your specific learning needs
30+ school subjects covered