A Programming Paradigm is a systematic arrangement of all the inflected forms of Programming languages. It is a hierarchical form of a preformed research that had been done and what direction for further research should take and how that should be performed. In focus a programming paradigm is a fundamental way of computer programming language evaluation prototype or image development, that serving as a way of building the structure and elements of programming language development. Formally a programming paradigm is formulated as;
Programming paradigm = The basic structuring of thought underlying the programming activity
A programming paradigm is also explained as, “It is a model, pattern or group of ideas to understand about how a computer programming language should be done, build or future enhancement”. Programming paradigm is all about to organizing thought in computer concept. For example: when a developer think about a programming problem, its main focal points are as;
- The sequence of actions to perform (first download the file, then display it)
- How to divide the problem-space into sub-tasks (to compute the spanning tree, i can divide the graph arbitrarily in two, and then …)
- What are the agents involved (sensors, a simulator, a renderer, …)
- What data do we need to handle? Do we need intermediate representations? What are the relations between the different forms?
- Which platform of computer programming is well suited to accomplish task in short time and space.
By considering above points of programming language users we characterize the programming paradigm in main programming paradigm and minor programming paradigm.
A main programming paradigm stems an idea within some basic discipline which is relevant for performing computations.
Main programming paradigms
- The imperative programming paradigm (Procedural language)
- The functional programming paradigm
- The logical programming paradigm (Rule-based Programming language)
- The object-oriented programming paradigm
- Concurrent programming paradigm
Other possible programming paradigms
- The visual paradigm
- One of the parallel paradigms
- The constraint based paradigm
We will characterize the five main programming paradigms mentioned above. We will in particular attempt to trace the idea and basic discipline behind the five main programming paradigms in detail.