Before we learn about Programming Paradigm. We should be clear about and understand meanings of the word ‘Paradigm’. Let’s discuss it first, if you already know about this. Please skip to our section ‘Programming Paradigms’. As per Wikipedia here.
A paradigm is a distinct set of concepts or thought patterns, including theories, research methods, postulates, and standards for what constitutes legitimate contributions to a field.
I have highlighted these words ‘distinct set’, ‘standards’ and ‘field’ for a reason. Let’s simplify definition from Wikipedia by taking out all other extra words.
A paradigm is a distinct set of standards of a field.
So our simplest definition or elaboration of ‘Programming Paradigm’ will be something like this.
A programming paradigm is a distinct set of standards or features of a programming language group.
Here is formal definition of ‘Programming Paradigm’ on Wikipedia.
Programming paradigms are a way to classify programming languages based on their features.
Therefore, when a programming language is following standards or features defined within a programming paradigm, it mean that language belong to or can be classified as part of that programming paradigm.
And what if a programming language is following standards from more than one programming paradigms? Than that programming language can be classified into or belong to all those programming paradigms. It is rare at start or introduction of a programming language. But, when a programming language evolve than this might occur. For example, we used to classify PHP as a procedural or functional programming language at early stages or versions. But later when they introduced some features from Object-Oriented Programming in it. We started classifying or referring it as both a Procedural and Object-Oriented Programming language.
There are 6-7 different programming paradigms. And these can be categorized this way.
I will not go into details of all these different programming paradigms in this course; As it might shift our focus and de-track us.
But, if you would like to explore and learn fundamental differences between these programming paradigms, I would encourage you to search online for this.
Let’s move on to our next chapter and learn about Object-Oriented Programming (OOP). Please click on “Next” to continue.