Diseño de Sistemas de Software: paradigmas de programación y árboles binarios

Diapositivas de Ceneval sobre Diseño de Sistemas de Software. El Pdf explora los paradigmas de programación y la representación de árboles binarios, incluyendo ejemplos de código Java para operaciones fundamentales. Este material de Informática es ideal para estudiantes universitarios.

Ver más

39 páginas

DISEÑO DE SISTEMAS DE SOFTWARE
3.2 PARADIGMAS DE PROGRAMACIÓN
PARADIGMAS DE PROGRAMACIÓN

Visualiza gratis el PDF completo

Regístrate para acceder al documento completo y transformarlo con la IA.

Vista previa

DISEÑO DE SISTEMAS DE SOFTWARE

PARADIGMAS DE PROGRAMACIÓN

CENEVAL®f(x)

PARADIGMAS DE
PROGRAMACIÓN

PARADIGMAS DE PROGRAMACIÓNPARADIGMAS DE PROGRAMACIÓN

¿QUÉ SON LOS PARADIGMAS DE PROGRAMACIÓN?

Los paradigmas son los
diferentes estilo de usar
la programación para
resolver un problema.

</>
< >

PROGRAMACIÓN ESTRUCTURADA

PROGRAMACIÓN ORIENTADA A OBJETOS

Programación
secuencial con la que
todos aprendemos a
programar. Usa ciclos
y condicionales.

Divide los componentes del
programa en objetos que tienen
datos y comportamiento y se
comunican entre sí.

J

PROGRAMACIÓN REACTIVA

Observa flujos de
datos asincrónicos y
reacciona frente a sus
cambios.

PROGRAMACIÓN FUNCIONAL

< >

Divide el programa
en tareas pequeñas
que son ejecutadas
por funciones.

Aprende a programar en cualquier lenguaje (primer curso gratis) en:
ed.team/cursos/paradigmas

C
EDteam

M. en E. Georgina Varona VargasPARADIGMAS DE PROGRAMACIÓN

En programación, se conocen como paradigmas de programación a los métodos usados para
realizar determinadas tareas o proyectos. En otras palabras, son métodos de programación de
software que sirven para resolver un problema de sistemas o para llegar a los resultados
esperados.

Tipos de paradigmas de programación

De acuerdo a los lenguajes de programación que se usen, se deben adoptar determinados
paradigmas para darle continuidad al proceso de forma fluida y sin contratiempos. Sin embargo,
existen muchos paradigmas de programación y aquí te contaremos 5 de los más importantes.

M. en E. Georgina Varona VargasPARADIGMAS DE PROGRAMACIÓN

  1. Paradigma imperativo. El paradigma imperativo o de procedimientos es,
    probablemente, uno de los paradigmas más conocidos en el mundo de la
    programación. Como su nombre lo indica, este es un método que permite desarrollar
    programas a través de procedimientos. Mediante una serie de instrucciones, se explica
    paso por paso cómo funciona el código para que el proceso sea lo más claro posible.
  2. Paradigma funcional. Una de las características del paradigma funcional es que
    este, como su nombre lo indica, trabaja a través de determinadas funciones
    matemáticas. Este es un tipo de paradigma que se usa, principalmente, en el ámbito
    académico más que en el comercial. A diferencia del paradigma imperativo, aquí
    importa más el "qué" y no tanto el "cómo" se desarrolla un proyecto.

M. en E. Georgina Varona VargasPARADIGMAS DE PROGRAMACIÓN

  1. Paradigma declarativo. El paradigma declarativo es aquel que se preocupa por el
    resultado final desde el inicio. Determinar de forma automática la ruta a seguir para conseguir
    una solución puede resultar muy eficaz a la hora de programar, solo se necesita tener claridad
    en torno al proceso que se va a llevar adelante.
  2. Paradigma reactivo. El paradigma reactivo está enfocado en analizar el flujo de datos, ya
    sean finitos o infinitos, con el fin de responder a las necesidades que se presenten durante el
    desarrollo de los proyectos en términos de escalado, y para procurar una reacción inmediata
    al cambio de valores que se producen por los flujos de datos.
  3. Paradigmas de programación orientada a objetos. Este tipo de paradigma de
    programación ofrece una guía que permite identificar cómo trabajar con él a través de
    objetos y planos de código. Este tipo de paradigma se constituye por piezas simples u objetos
    que al relacionarse entre sí forman diferentes componentes del sistema que estemos
    trabajando.

UTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS
DE ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

COLAS

Una cola es un grupo ordenado de elementos del mismo tipo, en la cual dichos
elementos se añaden por un extremo (Final) y se quitan por el otro extremo
(Frente). Esto significa que los elementos se sacan en el mismo orden en el que
fueron insertados o introducidos en la cola, siendo por ello considerada como
una estructura de datos FIFO (First In First Out), es decir, que el primer
elemento en entrar es el primer elemento en salir.

Frente
Final
A
B
C
D
E
F
G
1
Eliminación
Inserción

UTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS DE
ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

Operaciones básicas sobre una cola

Para manejar una estructura de datos de tipo cola, un programador debe definir un conjunto de
operaciones que permitan al usuario acceder y manipular los elementos almacenados en ella. La
terminología más común utilizada para referenciar este conjunto de operaciones es la mostrada a
continuación:

  • InicializarCola: nos permite dejar inicialmente vacía la cola una vez creada.
  • Encolar: permite añadir un elemento al final de la cola.
  • Desencolar: se usará para sacar un elemento de la cola.
  • Cola Vacia: devolverá cierto si la cola está vacía antes de sacar un elemento de la misma.
  • ColaLlena: sólo en aquellos casos en los que sea necesario determinar si la cola se encuentra
    llena antes de añadir un nuevo elemento debido a la implementación utilizada (sólo en el caso de
    implementación con tablas), emplearemos esta operación de tipo lógico.

UTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS
DE ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

PILAS

Una pila es una lista ordinal o estructura de datos en la que el modo de acceso a sus elementos es de tipo LIFO
que permite almacenar y recuperar datos. Esta estructura se aplica en multitud de ocasiones en el área de
informática debido a su simplicidad y ordenación implícita de la propia estructura.

Para el manejo de los datos se cuenta con dos operaciones básicas: apilar (push), que coloca un objeto en la pila, y
su operación inversa, retirar (o desapilar, pop), que retira el último elemento apilado.

En cada momento sólo se tiene acceso a la parte superior de la pila, es decir, al último objeto apilado . La
operación retirar permite la obtención de este elemento, que es retirado de la pila permitiendo el acceso al
siguiente, que pasa a ser el nuevo TOS.

Por analogía con objetos cotidianos, una operación apilar equivaldría a colocar un plato sobre una pila de platos, y
una operación retirar a retirarlo.

M. en E. Georgina Varona vargasUTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS
DE ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

El método de pila para la evaluación de expresiones fue propuesto en 1955 y dos años después patentado por
Fiedrich L.Bauer, quién recibió en 1988 el premio "IEEE Computer Society Pioneer Award" por su trabajo en el
desarrollo de dicha estructura de datos.

Una pila cuenta con 2 operaciones imprescindibles: apilar y desapilar, a las que en las implementaciones modernas
de las pilas se suelen añadir más de uso habitual.

  • Crear: se crea la pila vacía. (constructor)
  • Tamaño: regresa el numero de elementos de la pila. (size)
  • Apilar: se añade un elemento a la pila.(push)
  • Desapilar: se elimina el elemento frontal de la pila.(pop)
  • Cima: devuelve el elemento que esta en la cima de la pila. (top o peek)
  • Vacía: devuelve cierto si la pila está vacía o falso en caso contrario (empty).

Push
Pop

UTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS
DE ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

ARREGLOS

Un arreglo puede definirse como un grupo o una colección finita, homogénea y ordenada de elementos.
Los arreglos pueden ser de los siguientes tipos:

  • De una dimensión.
  • De dos dimensiones.
  • De tres o más dimensiones.

0 1 2
3
N-1
...
Primer elemento
del vector
Último elemento
del vector

UTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS
DE ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

Arreglos unidimensionales

Es un tipo de datos estructurado que está formado de una colección finita y ordenada de datos del mismo tipo. Es la
estructura natural para modelar listas de elementos iguales. Están formados por un conjunto de elementos de un
mismo tipo de datos que se almacenan bajo un mismo nombre, y se diferencian por la posición que tiene cada
elemento dentro del arreglo de datos. Al declarar un arreglo, se debe inicializar sus elementos antes de utilizarlos.
Para declarar un arreglo tiene que indicar su tipo, un nombre único y la cantidad de elementos que va a contener.

ELEMENTO
1
2
3
4
5
6
7 8
9
10
0
1
2
3
4
5
6
7
8
9
I
INDICE

UTILIZAR EL PARADIGMA IMPERATIVO PARA MANIPULAR DATOS DE
ESTRUCTURAS (COLAS, PILAS, ARREGLOS, MATRICES)

Arreglos multidimensionales

Es un tipo de dato estructurado, que está compuesto por dimensiones. Para hacer referencia a cada componente del
arreglo es necesario utilizar n índices, uno para cada dimensión. El término dimensión representa el número de
índices utilizados para referirse a un elemento particular en el arreglo. Los arreglos de más de una dimensión se
llaman arreglos multidimensionales.

Arreglo[i, j]
j
nxm
0 1 2 3 4
5
| 6
0
0 0 0 0 12
3
1
4
5
6 7
8
9
10
i
2
11
12
13
14
15
16
17
3
18
19
20
21
22
23
24
4
25
26
27
28
0 0 0

RECURSIVIDAD

La recursividad es un concepto que se indica cuando un método se llama a si mismo. Cuando
creamos un método recursivo debemos tener en cuenta que este tiene que terminar por lo
que dentro del método debemos asegurarnos de que no se está llamando a si mismo todo el
rato, Lo que quiere decir que el ciclo es finito.

1 reference
public int EjemploRecursividad(int numero)
{
if (numero == 0) return 1;
return numero * EjemploRecursividad(numero - 1);
}

Debemos tener mucho cuidado cuando realizamos llamadas recursivas ya que si la utilizamos
sin control podríamos desbordar la memoria del ordenador, causando que el programa se
rompa.

HERENCIA

La herencia, junto con la encapsulación y el polimorfismo, es una de las tres características principales de
la programación orientada a objetos. La herencia permite crear clases que reutilizan, extienden y
modifican el comportamiento definido en otras clases. La clase cuyos miembros se heredan se denomina
clase base y la clase que hereda esos miembros se denomina clase derivada. Una clase derivada solo
puede tener una clase base directa, pero la herencia es transitiva.

Vehiculo
Clase Padre
Coche
Moto
Bus
Clases Hijas
o derivadas

M. en E. Georgina Varona Vargas

¿Non has encontrado lo que buscabas?

Explora otros temas en la Algor library o crea directamente tus materiales con la IA.