User:Lyrithya/Programming paradigm
A programming paradigm is nothing more than an application of unnecessarily big words used by computer scientists and Wikipedians to disguise the fact that programmers are in fact perfectly ordinary people with different personal preferences when it comes to programming, and as such prefer using various programming languages with different styles and mannerisms. The complication arises from the fact that those who tend to discuss the subject are not those who actually work with it, but instead an outside group of theorists, who, in order to justify the merit of discussing the subject in the first place, must emphasise how important it is. The easiest way to do this is to first emphasise how complicated it is, since after that almost nobody will understand it, but for fear of looking stupid, will pretend they will and follow along. By taking this approach, theorists also receive the added bonus of attracting people who want to seem smart as well, which helps them to simultaneously make up for other failings.
The paradigms themselves tend to be an overcomplicated mess as a result, many of which overlap with each other, would never work on their own, and/or do not, in reality, entirely exist at all.
Programmer perspective[edit | edit source]
Computer scientist perspective[edit | edit source]
Paradigms[edit | edit source]
Declarative[edit | edit source]
In effect, this is the result of mathematicians entering the realm of programming and finding that when it takes them twelve hours just to write down the maths, they have absolutely no desire whatsoever to so much as think about the algorithms the computer may or may not be using to actually work with such maths, and in fact at this point mostly just want a beer.
Imperative[edit | edit source]
Workaround-oriented[edit | edit source]
Object-oriented[edit | edit source]
Event-driven[edit | edit source]
Data-driven[edit | edit source]
Non-structured[edit | edit source]
This is a fancy way of saying the programmer does whatever he wants. In practice, most programmers do this, choosing a particular approach and language depending on whatever would work best for what they happen to be trying to achieve at the time. As this is a perfectly ordinary and logical thing to do, and completely undermines the point of studying such things in the first place, theorists usually try to avoid so much as mentioning it.