Extempo Essay
Extempo Essay
Paradigms
Extemporaneous – Unit 1
Data Engineering 2B
Programming paradigms.
Paradigms.
Research paradigms require that the concept of paradigms be reflected under the
assumption that it admits a plurality of meanings and different uses; therefore, it is
admitted as a generalist definition that it is a set of beliefs and attitudes, as a vision of
the world "shared" by a group of scientists that implies a determined methodology. The
paradigm is a theoretical scheme, or a way of perceiving and understanding the world,
adopted by a group of scientists.
1. Positivist or naturalistic paradigm.
The positivist paradigm, also called quantitative paradigm, empirical-analytical
rationalist, is the dominant paradigm; positivism is a philosophical school that defends
certain assumptions about the conception of the world and the way of knowing it, so the
characteristic of positivism is extended to the dimensions of the paradigm.
The positivist or naturalistic paradigm is characterized by the high interest in the
verification of knowledge through predictions. Some call it the "predictionist paradigm",
since the important thing is to pose a series of hypotheses such as predicting that
something is going to happen and then verifying or checking it. It has its greatest
application in the exact and natural sciences.
2. Realist paradigm
The realist paradigm focuses on the description and understanding of the phenomenon,
it questions the existence of an external and valuable reality to be analyzed; it focuses
on understanding reality from different angles, from a dynamic, multiple and holistic
perspective; The realist paradigm, in a way is a variant of the positivist paradigm, but
has its own status; here the prediction is not important, as is the explanation, what
matters is to advance in the knowledge of the causes, in reaching the ultimate
explanations, understanding that explanations are different from predictions.
3. Hermeneutic paradigm
The hermeneutic paradigm, also called qualitative paradigm, logical, humanistic or
ethnographic phenomenon, explains that "it is not interested in reaching an objective
knowledge" but in "reaching a consensual knowledge", what matters is to agree on the
interpretation of what is being studied. The limit of what would be good or bad
knowledge, obtained through interpretation, would be how close it is to reality. The
importance of having a certain fidelity in the interpretation is the possibility not only of
understanding, but also of modifying what is understood, and of being able to arrive at
deeper or broader knowledge from a first knowledge obtained that allows the researcher
to understand what is happening with his object of study, from giving an enlightened
interpretation, of course, or a more enlightened interpretation of what is being studied.
4. Interactionist paradigm
The interactionist paradigm arises as a response to the positive and interpretative
traditions and seeks to overcome the reductionism of the former and the conservatism
of the latter, admitting the possibility of a social science that is neither purely empirical
nor only interpretative. In the interactionist paradigm, as in the hermeneutic paradigm, it
is not important to arrive at an objective knowledge, the important thing is to see which
elements are interconnected with others and are interacting to produce something, the
important thing is to see the connections between them.
Programming paradigms.
For a computer to perform a task, it must be programmed to do so by placing in the
main memory an appropriate algorithm which is expressed in machine language. In the
early days of programming, this task was onerous because of the laboriousness and
difficulty of designing each algorithm (not to mention the errors that could be made).
The big step was taken when mnemonics began to be given to the various operation
codes and machine language operands. With this, programmers were able to
considerably increase the comprehensibility of the sequences of machine instructions.
The study of languages in terms of the approach to the programming process is called
programming paradigms, the term paradigm being understood as the way of seeing and
making programs. Under this approach there are four paradigms which are:
Procedural paradigm or imperative paradigm:
The procedural paradigm is perhaps the best known and most widely used paradigm in
the programming process, where programs are developed through procedures. Pascal
C and BASIC are three of the most important imperative languages. The Latin word
imperare means "to give instructions". The paradigm began in the early 1950s when
designers recognized that variables and assignment commands or instructions were a
simple but useful abstraction of memory access and update of the machine instruction
set. Because of the close relationship with the machine architecture, imperative
programming languages can be implemented very efficiently, at least in principle.
Declarative paradigm:
The declarative paradigm or logic programming paradigm is based on the fact that a
program implements a relation rather than a correspondence. Because relationships are
more general than mappings (identifier-memory address), logic programming is
potentially higher level than functional or imperative programming. The most popular
language within this paradigm is the PROLOG language. The rise of the declarative
paradigm is due to the fact that the formal logic area of mathematics offers a simple
problem-solving algorithm suitable for use in a general-purpose declarative
programming system.
Functional paradigm:
If imperative programming is characterized by the use of variables, commands and
procedures, functional programming is characterized by the use of expressions and
functions. A program within the functional paradigm is a function or a group of functions
composed of simpler functions, establishing that a function can call another, or the
result of a function can be used as an argument of another function. The language par
excellence located within this paradigm is LISP. For example, if you want to obtain the
average grade of a student you could build an average function which would be
obtained from other simpler functions: one (add) which obtains the sum of the entries in
the list, another (count) which counts the number of entries in the list and the third
(divide) which obtains the quotient of the previous values, its syntax would be:
(divide (add notes) (count notes))
Note that the nested structure reflects the fact that the function divide acts on the results
of add and count.
Object-oriented paradigm:
The object-oriented paradigm is based on the concepts of objects and object classes.
An object is a variable equipped with a set of operations that belong to it or are defined
for them. The object-oriented paradigm is currently the most popular paradigm and
everyday programmers, students and professionals try to take a course that has to do
with this paradigm, it could be said that object-oriented programming is fashionable.
The processors used in computers are capable of understanding and acting on
programs written in a fixed language for each architecture, called machine language.
Any program written in a high-level language can be executed in two ways:
Compiled languages.
Before the program can be used, a translator called a "compiler" must be used, which is
responsible for translating ("compiling") the original program ("source code") into the
equivalent program written in machine or assembly language ("binary"). Binaries are the
executable programs and the only ones necessary for the program to function.
Examples of compiled languages include C, C++, Java, Go and Rust, among many
others.
Coding:
A compiled language has an additional step. If you have a C compiler you can create a
file called hello.c with the following content, or any valid C code:
#include <stdio.h>
int main()
{
printf("Hola Mundo");
return 0;
That creates a file called hello (without extension) with the machine code (called the
executable) that you can run in the console with the following command:
$ ./hello
You should get the string "Hello World" below it. If you need to change the source code
you must recompile it and run it again.
Interpreted languages.
Each time the program is used, a translator called an "interpreter" must be used to
translate ("interpret") the instructions of the original program ("source code") into
machine code as they are used. The original code and the interpreter are always
necessary for the operation of the program.
Examples of interpreted languages include Ruby, Python and JavaScript, among many
others.
Coding:
Ruby is an interpreted language, so we can create a file called hello.rb with the
following code, or any valid Ruby code (this is known as the source code):
$ ruby hello.rb
You should get the string "Hello World" below it. If you want you can change the source
code and run it again.