Está en la página 1de 4

1.

- Realice un análisis de 5 Paradigmas de Programación, incluya la Programación Orientada a


Objetos y explique cada uno de ellos, realizar dicha explicación con sus propias palabras, del
mismo modo coméntenos que paradigma le pareció más interesante.

- Paradigma Procedural o Imperativo

En este paradigma se define como una serie de pasos obligatorios a seguir; es decir no podemos
llegar al paso dos sin antes pasar por el paso uno.

- Paradigma Orientado a Objetos

En este paradigma podemos definirlo como la representación de una idea o modelo de la realidad
que cuando se programa se llama objeto.

Dicho objeto tiene características (Propiedades) y funcionalidades (métodos) y tienen una


identidad, que representado en una plantilla se convertiría en una clase y no tienen una identidad.

- Paradigma de Programación Declarativa

En este paradigma la prioridad es la declaración de lo que debe hacer mas no como lo hace; es
decir oculta la forma de realizar las cosas.

- Paradigma de Programación Funcional

Este paradigma las funciones mandan, pero con la particularidad que siempre devuelve un valor;
es utilizado mucho programas matemáticos y estadísticos.

Se basa en el principio de Entrada – Proceso - Salida

- Paradigma de Programación Lógica

Este paradigma es una serie de reglas lógicas, llamado hechos, que se aplican para deducir un
resultado. Utiliza la lógica matemática para resolver problemas complejos mediante la aplicación
de reglas, hipótesis y teoremas.

El paradigma que me pareció más interesante es la de orientado a objetos ya que me permite


expresar la realidad a través de clases para luego instanciándolo tener objetos. Es llevar la realidad
del mundo real a la programación.

2.- Con respecto a la JVM Memory investigue y mencione la relación y diferencias que existen
entre las zonas de memoria Stack y Heap, adicionalmente presente un breve ejemplo (código
java) del uso de estas 2 zonas, utilice de ser necesario imágenes explicativas.

Stack y Heap están dentro de la memoria RAM, pero son dos sectores diferentes.

En la Stack(Pila) se utiliza para almacenar variables locales, variables de refencia, parámetros,


valores de entorno, resultados parciales, llevar contorl de invocación y retorno de resultados.

En el Heap almacena objetos y variables de instancia. Es un espacio de memoria dinámica que se


crea al inicio de la maquina virtual y es único. El que administra este especio de memoria es el
Garbage Collector.
3.- Defina que es una Colección con sus propias palabras en base a su investigación y mencione
las principales diferencias que presenta frente a los Arrays.

La colección es una especie de arrays de tamaño dinámico, permite almacenar cualquier tipo de
objeto y nos proporciona una serie de metodos para trabajarlos. Mientras los arrays son estáticos
es decir se declara al momento de la ejecución y solo almacena un mismo tipo de dato.

4.- Investigue acerca de los conceptos de Herencia simple y la Herencia múltiple, y del cómo
podemos aplicar estos conceptos en java y mediante que palabras reservadas, realice un
ejemplo (código java) de ambos conceptos.

La herencia simple es la mas usada ya que es una relación entre una clase padre con una clase hija.
Mientras que una herencia múltiple existen dos tipos: Herencia múltiple de Implementación( de
Clases) y Herencia Múltiple de Implementación con Tipos(Con interfaces).

Herencia Múltiple de Implementación (de clases). No es posible en Java.

Herencia Múltiple de Implementación con Tipos. A partir de Java 8, gracias a la introducción de los
métodos predeterminados (default methods) se puede usar una forma de herencia múltiple de
implementación, usando interfaces. Es decir, una clase puede implementar (implements) más de
una interfaz, que puede contener métodos predeterminados que tienen el mismo nombre.

Ejemplo de Herencia Simple:


Ejemplo Herencia Multiple
5.- Realice una investigación sobre las expresiones Lambda y mencione sus ventajas.

Ventajas:

- Reduce la escritura de líneas de código, escribiendo líneas de código mas claros y precisos.
- Se abre la puerta a la programación funcional en java.
- Permiten referencias métodos anónimos o sin nombre sin tener que recurrir al uso de
clases anónimas.

También podría gustarte