LÓGICA DE PROGRAMACIÓN
En esta materia, los estudiantes comprenderán los conceptos básicos de programación lógica y los principios fundamentales de la lógica, lenguajes de programación, algoritmos y estructuras de programación. Desarrollarán habilidades para diseñar, planificar y ejecutar algoritmos utilizando diagramas de flujo y pseudocódigo, aplicando herramientas como PSeInt y DFD. A través de un enfoque analítico y metódico, los estudiantes aprenderán a resolver problemas y valorarán la importancia de la precisión y claridad en la programación, aplicando técnicas e instrucciones para implementar programas o software personalizados.
Explora las pestañas y descubre el contenido que se encuentra en cada una de ellas. Encontrarás recursos, materiales, vídeos con información fundamental para tu formación.
Ingresa a los vídeos. Aquí
Información
CONTENIDOS:
- Conceptos básicos de programación lógica.
- La lógica
- Concepto de lenguajes de programación
- Algoritmos y diagramas de flujo
- El pseudocódigo
- Los interpretes y los compiladores
- Conceptualización de tipos de datos
- Tipos de estructuras de programación
- Modularidad
Actividades
Cualquier duda, comunicarla con el profesor.
Actividad 3 de Agosto
Tema 1: Conceptos Básicos de Programación Lógica
Actividad en Clase
Objetivo: Introducir a los estudiantes en los conceptos básicos de la programación lógica y su aplicación en la resolución de problemas.
Introducción
1. ¿Qué es la programación lógica?
Explicación:
La programación lógica es un paradigma de programación que utiliza la lógica formal para expresar algoritmos y resolver problemas. A diferencia de otros paradigmas como la programación imperativa, la lógica de programación se basa en declarar hechos y reglas que describen el problema y las soluciones posibles.
2. Componentes principales:
Hechos: Afirmaciones básicas que representan datos ciertos. Ejemplo: es_un_perro(fido).
Reglas: Expresiones que definen relaciones entre hechos. Ejemplo: es_un_animal(X) :- es_un_perro(X).
Consultas: Preguntas que se hacen al sistema basado en hechos y reglas para obtener respuestas. Ejemplo: ?- es_un_animal(fido).
Demostración Práctica
Código de Ejemplo en Prolog:
prolog
% Hechos
es_un_perro(fido).
es_un_gato(tom).
% Reglas
es_un_animal(X) :- es_un_perro(X).
es_un_animal(X) :- es_un_gato(X).
% Inicialización
:- initialization(main).
main :-
(es_un_animal(fido) -> write('fido es un animal'), nl; write('fido no es un animal'), nl),
halt. % Para asegurar que el programa termine después de la consulta
Actividad Práctica
Crear Hechos y Reglas:
Proveer a los estudiantes con un conjunto de hechos simples.
Pedirles que definan reglas basadas en esos hechos y realicen consultas.
Revisión y Discusión
Presentación y Retroalimentación:
Los estudiantes presentan sus hechos, reglas y consultas.
Retroalimentación sobre la precisión y claridad de las declaraciones y consultas.
Alterna Actividad de Consulta
Investigación sobre Prolog:
Explorar la historia y aplicaciones de Prolog en inteligencia artificial y otras áreas.
Tema 2: La Lógica
Actividad en Clase
Objetivo: Comprender la lógica y su aplicación en la programación.
Introducción
1. ¿Qué es la lógica?
Explicación:
La lógica es una disciplina que estudia los principios del razonamiento válido. En el contexto de la programación, la lógica se utiliza para estructurar algoritmos y tomar decisiones basadas en condiciones verdaderas o falsas.
2. Tipos de lógica en programación:
Lógica proposicional: Se ocupa de las proposiciones y sus conexiones mediante operadores lógicos (AND, OR, NOT).
Lógica de predicados: Extiende la lógica proposicional para incluir cuantificadores y variables.
Demostración Práctica
Ejemplo de Lógica Proposicional:
python
# -*- coding: utf-8 -*-
# Lógica proposicional en Python
a = True
b = False
# AND lógico
c = a and b
# OR lógico
d = a or b
# NOT lógico
e = not a
print("AND:", c) # False
print("OR:", d) # True
print("NOT:", e) # False
Explicación Línea por Línea:
a = True: Declara la variable a como verdadera.
b = False: Declara la variable b como falsa.
c = a and b: Realiza la operación AND lógico entre a y b, resultando en False.
d = a or b: Realiza la operación OR lógico entre a y b, resultando en True.
e = not a: Realiza la operación NOT lógico sobre a, resultando en False.
print("AND:", c): Imprime el resultado de la operación AND.
print("OR:", d): Imprime el resultado de la operación OR.
print("NOT:", e): Imprime el resultado de la operación NOT.
Actividad Práctica
Resolver Problemas Lógicos:
Proveer a los estudiantes con problemas que requieran el uso de operadores lógicos.
Pedirles que escriban código para resolver estos problemas y expliquen su razonamiento.
Revisión y Discusión
Presentación y Retroalimentación:
Los estudiantes presentan sus soluciones.
Retroalimentación sobre el uso correcto de la lógica y los operadores.
Alterna Actividad de Consulta
Investigación sobre Lógica Proposicional y de Predicados:
Estudiar la aplicación de la lógica proposicional y de predicados en lenguajes de programación y bases de datos.
Tema 3: Concepto de Lenguajes de Programación
Actividad en Clase
Objetivo: Entender qué son los lenguajes de programación y su importancia en la informática.
Introducción
1. ¿Qué es un lenguaje de programación?
Explicación:
Un lenguaje de programación es un conjunto de reglas y sintaxis que permiten a los programadores escribir instrucciones que una computadora puede ejecutar.
2. Clasificación de los lenguajes de programación:
Lenguajes de bajo nivel: Más cercanos al lenguaje máquina (ej. Assembly).
Lenguajes de alto nivel: Más cercanos al lenguaje humano y más fáciles de entender (ej. Python, Java).
Demostración Práctica
Ejemplo de Código en Python:
python
# Ejemplo de programa en Python
def saludo(nombre):
return "Hola, {}!".format(nombre)
print(saludo("Mundo"))
def saludo(nombre):: Define una función llamada saludo que toma un argumento nombre.
return f"Hola, {nombre}!": Devuelve una cadena formateada que incluye el nombre proporcionado.
print(saludo("Mundo")): Llama a la función saludo con el argumento "Mundo" y imprime el resultado.
Actividad Práctica
Escribir Programas Simples:
Proveer a los estudiantes con tareas simples que impliquen escribir funciones y utilizar variables.
Pedirles que escriban programas en un lenguaje de alto nivel (ej. Python).
Revisión y Discusión
Presentación y Retroalimentación:
Los estudiantes presentan sus programas.
Retroalimentación sobre la claridad del código y la corrección lógica.
Alterna Actividad de Consulta
Investigación sobre Lenguajes de Programación:
Explorar la historia y evolución de los lenguajes de programación, destacando las diferencias entre lenguajes de bajo y alto nivel.
Glosario de 30 Palabras
Las consultas serán discutidas en clase y allí se afianzarán los conocimientos.
Cualquier duda, comunicarla con el profesor.
Recuerden explorar las pestañas donde se encontrará el material y los recursos necesarios para desarrollar la actividad
Textos
Clase 1: Conceptos Básicos de Programación Lógica
Objetivos de la Clase
Comprender los conceptos básicos de la programación lógica.
Aprender la importancia de la lógica en la programación.
Realizar ejercicios prácticos para aplicar los conceptos aprendidos.
Contenido
1. ¿Qué es la Programación Lógica?
Definición:
La programación lógica es un paradigma de programación basado en la lógica formal. Los programas se construyen declarando hechos y reglas sobre problemas y se resuelven mediante el razonamiento lógico.
Importancia:
Resolución de Problemas: Facilita la resolución de problemas complejos mediante la aplicación de reglas lógicas.
Claridad y Mantenimiento: Los programas lógicos tienden a ser más claros y fáciles de mantener debido a su estructura declarativa.
2. Componentes de la Programación Lógica
Componentes Clave:
Hechos: Declaraciones que describen el estado del mundo o del problema.
Reglas: Instrucciones que describen cómo se derivan nuevos hechos a partir de hechos existentes.
Consultas: Preguntas formuladas al sistema para obtener información basada en los hechos y reglas.
Ejemplo:
Hechos: "Juan es un humano."
Reglas: "Si alguien es un humano, entonces es mortal."
Consultas: "¿Juan es mortal?"
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Crear un conjunto de hechos y reglas simples.
Desarrollo: Proporcionar un escenario básico y pedir a los estudiantes que escriban hechos y reglas.
Solución:
Definir hechos sobre diferentes animales.
Crear reglas que determinen características comunes.
Formular consultas basadas en los hechos y reglas.
Tips y Recomendaciones
Claridad en las Declaraciones: Asegurarse de que los hechos y reglas sean claros y precisos.
Practicar con Ejemplos Sencillos: Comenzar con ejemplos simples antes de avanzar a problemas más complejos.
Trucos
Uso de Diagramas: Utilizar diagramas para visualizar la relación entre hechos y reglas.
Software de Soporte: Emplear herramientas como Prolog para practicar la programación lógica.
Clase 2: La Lógica
Objetivos de la Clase
Comprender los fundamentos de la lógica y su aplicación en la programación.
Aprender sobre los diferentes tipos de lógica utilizados en programación.
Realizar ejercicios prácticos para aplicar los conceptos de lógica.
Contenido
1. ¿Qué es la Lógica?
Definición:
La lógica es el estudio de los principios de validación y razonamiento. En programación, la lógica se utiliza para estructurar y evaluar condiciones y operaciones.
Tipos de Lógica:
Lógica Proposicional: Se basa en proposiciones que pueden ser verdaderas o falsas.
Lógica de Predicados: Extiende la lógica proposicional incluyendo variables y cuantificadores.
Ejemplo de Lógica Proposicional:
Proposición: "Si llueve, entonces llevaré un paraguas."
Símbolos: p: "Llueve", q: "Llevaré un paraguas"
Expresión: p → q
Ejemplo de Lógica de Predicados:
Proposición: "Todos los humanos son mortales."
Símbolos: H(x): "x es humano", M(x): "x es mortal"
Expresión: ∀x (H(x) → M(x))
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Crear expresiones lógicas para diferentes escenarios.
Desarrollo: Proporcionar varias situaciones y pedir a los estudiantes que formulen proposiciones lógicas.
Solución:
Definir proposiciones para cada situación.
Escribir las expresiones lógicas correspondientes.
Evaluar la validez de las proposiciones.
Tips y Recomendaciones
Practicar Regularmente: Practicar la formulación de proposiciones y expresiones lógicas para mejorar la comprensión.
Utilizar Herramientas de Validación: Emplear herramientas como tablas de verdad para validar las proposiciones.
Trucos
Diagramas de Venn: Utilizar diagramas de Venn para visualizar la lógica de predicados.
Software de Lógica: Emplear software como Logicly para practicar la lógica proposicional.
Clase 3: Concepto de Lenguajes de Programación
Objetivos de la Clase
Comprender qué son los lenguajes de programación y su importancia.
Aprender sobre los diferentes tipos de lenguajes de programación.
Realizar ejercicios prácticos de programación básica.
Contenido
1. ¿Qué son los Lenguajes de Programación?
Definición:
Los lenguajes de programación son herramientas que permiten a los desarrolladores escribir instrucciones que una computadora puede entender y ejecutar.
Importancia:
Comunicación: Facilitan la comunicación de instrucciones complejas a la computadora.
Automatización: Permiten la automatización de tareas y la creación de software.
2. Tipos de Lenguajes de Programación
Tipos Comunes:
Lenguajes de Bajo Nivel: Lenguajes cercanos al lenguaje máquina (e.g., Assembly).
Lenguajes de Alto Nivel: Lenguajes que abstraen detalles del hardware (e.g., Python, Java).
Lenguajes de Programación Lógica: Enfocados en la lógica declarativa (e.g., Prolog).
Ejemplo:
Python: print("Hello, World!")
Java: System.out.println("Hello, World!");
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Escribir programas básicos en diferentes lenguajes de programación.
Desarrollo: Proporcionar ejemplos y pedir a los estudiantes que escriban programas similares.
Solución:
Escribir un programa en Python que imprima "Hello, World!".
Escribir un programa en Java que imprima "Hello, World!".
Tips y Recomendaciones
Elegir el Lenguaje Adecuado: Seleccionar el lenguaje de programación adecuado según el proyecto y los requisitos.
Practicar Diferentes Lenguajes: Experimentar con diferentes lenguajes para comprender sus fortalezas y debilidades.
Trucos
Entornos de Desarrollo Integrado (IDE): Utilizar IDEs como PyCharm o Eclipse para facilitar la programación.
Documentación: Consultar la documentación oficial de cada lenguaje para resolver dudas y aprender mejores prácticas.
Clase 4: Algoritmos y Diagramas de Flujo
Objetivos de la Clase
Comprender qué son los algoritmos y su importancia en la programación.
Aprender a representar algoritmos mediante diagramas de flujo.
Realizar ejercicios prácticos de creación de algoritmos y diagramas de flujo.
Contenido
1. ¿Qué es un Algoritmo?
Definición:
Un algoritmo es un conjunto de instrucciones claras y finitas que se utilizan para resolver un problema o realizar una tarea específica.
Importancia:
Eficiencia: Los algoritmos optimizan la solución de problemas.
Claridad: Proporcionan un enfoque estructurado para la resolución de problemas.
Ejemplo:
Algoritmo para sumar dos números:
Leer el primer número.
Leer el segundo número.
Sumar los dos números.
Mostrar el resultado.
2. Diagramas de Flujo
Definición:
Los diagramas de flujo son representaciones gráficas de un algoritmo, que muestran el flujo de control mediante diferentes símbolos.
Símbolos Comunes:
Óvalo: Inicio o fin del diagrama.
Rectángulo: Proceso o instrucción.
Diamante: Decisión.
Flechas: Dirección del flujo de control.
Ejemplo:
Diagrama de flujo para sumar dos números:
css
Copiar código
[Inicio] --> [Leer Número 1] --> [Leer Número 2] --> [Sumar Números] --> [Mostrar Resultado] --> [Fin]
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Crear un algoritmo y su diagrama de flujo para una tarea específica.
Desarrollo: Proporcionar una tarea simple y pedir a los estudiantes que diseñen el algoritmo y el diagrama de flujo.
Solución:
Definir los pasos del algoritmo.
Dibujar el diagrama de flujo con los símbolos adecuados.
Verificar la lógica del diagrama y corregir errores si es necesario.
Tips y Recomendaciones
Claridad y Simplicidad: Mantener los algoritmos y diagramas de flujo claros y sencillos.
Revisar y Probar: Revisar y probar los algoritmos para asegurarse de que funcionen correctamente.
Trucos
Herramientas de Diagramas de Flujo: Utilizar herramientas como Lucidchart o Draw.io para crear diagramas de flujo.
Practicar con Ejemplos: Practicar la creación de algoritmos y diagramas de flujo con diferentes problemas para mejorar las habilidades.
Clase 5: El Pseudocódigo
Objetivos de la Clase
Comprender qué es el pseudocódigo y su importancia en la programación.
Aprender a escribir pseudocódigo para diferentes problemas.
Realizar ejercicios prácticos de escritura de pseudocódigo.
Contenido
1. ¿Qué es el Pseudocódigo?
Definición:
El pseudocódigo es una descripción de alto nivel de un algoritmo, que utiliza una mezcla de lenguaje natural y estructuras de control de programación.
Importancia:
Claridad: Ayuda a entender y comunicar algoritmos antes de escribir el código real.
Planificación: Facilita la planificación y estructuración del código.
Ejemplo:
Pseudocódigo para sumar dos números:
mathematica
Copiar código
Inicio
Leer Número 1
Leer Número 2
Sumar Números
Mostrar Resultado
Fin
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Escribir pseudocódigo para un problema específico.
Desarrollo: Proporcionar un problema simple y pedir a los estudiantes que escriban el pseudocódigo correspondiente.
Solución:
Definir los pasos del algoritmo en lenguaje natural.
Estructurar los pasos utilizando palabras clave y estructuras de control.
Revisar el pseudocódigo para asegurarse de que sea claro y completo.
Tips y Recomendaciones
Simplicidad y Claridad: Mantener el pseudocódigo simple y claro.
Estructuras de Control: Utilizar estructuras de control como bucles y condiciones para representar la lógica del algoritmo.
Trucos
Práctica Regular: Practicar la escritura de pseudocódigo para diferentes tipos de problemas para mejorar las habilidades.
Revisión y Retroalimentación: Revisar el pseudocódigo con compañeros o instructores para obtener retroalimentación y mejorar.
Clase 6: Los Intérpretes y los Compiladores
Objetivos de la Clase
Comprender la diferencia entre intérpretes y compiladores.
Aprender cómo funcionan los intérpretes y compiladores.
Realizar ejercicios prácticos de compilación e interpretación de código.
Contenido
1. ¿Qué son los Intérpretes y los Compiladores?
Definición:
Intérprete: Programa que traduce y ejecuta código línea por línea.
Compilador: Programa que traduce todo el código fuente a código máquina antes de su ejecución.
Importancia:
Ejecución: Facilitan la ejecución de programas escritos en lenguajes de programación de alto nivel.
Optimización: Los compiladores pueden optimizar el código para mejorar el rendimiento.
Ejemplo:
Intérprete: Python utiliza un intérprete.
Compilador: C++ utiliza un compilador.
2. Funcionamiento de Intérpretes y Compiladores
Proceso del Intérprete:
Leer el código fuente.
Traducir y ejecutar cada línea.
Continuar hasta el final del programa.
Proceso del Compilador:
Leer todo el código fuente.
Traducir el código fuente a código máquina.
Ejecutar el código máquina generado.
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Compilar e interpretar un programa simple.
Desarrollo: Proporcionar un programa en Python y uno en C++ y pedir a los estudiantes que los ejecuten utilizando el intérprete y el compilador, respectivamente.
Solución:
Ejecutar el programa en Python utilizando el intérprete de Python.
Compilar el programa en C++ utilizando un compilador como g++.
Ejecutar el programa compilado en C++.
Tips y Recomendaciones
Conocer las Herramientas: Familiarizarse con las herramientas de compilación e interpretación para diferentes lenguajes.
Probar Diferentes Ejemplos: Practicar con ejemplos de código para comprender mejor las diferencias entre intérpretes y compiladores.
Trucos
IDEs con Integración: Utilizar IDEs que integren herramientas de compilación e interpretación para facilitar el desarrollo.
Errores de Compilación: Aprender a interpretar y solucionar errores de compilación para mejorar la eficiencia.
Clase 7: Conceptualización de Tipos de Datos
Objetivos de la Clase
Comprender los diferentes tipos de datos en programación.
Aprender a utilizar y manipular diferentes tipos de datos.
Realizar ejercicios prácticos de manipulación de datos.
Contenido
1. ¿Qué son los Tipos de Datos?
Definición:
Los tipos de datos son categorías de datos que determinan qué tipo de valores pueden ser almacenados y qué operaciones se pueden realizar sobre ellos.
Tipos Comunes:
Enteros: Números sin parte decimal (e.g., 5, -3).
Reales (Flotantes): Números con parte decimal (e.g., 3.14, -0.001).
Caracteres: Letras y símbolos (e.g., 'a', '!', '3').
Cadenas de Texto: Secuencias de caracteres (e.g., "Hola, Mundo!").
Booleanos: Valores de verdadero o falso (e.g., True, False).
Ejemplo:
Declarar y utilizar diferentes tipos de datos en Python:
python
Copiar código
entero = 5
flotante = 3.14
caracter = 'a'
cadena = "Hola, Mundo!"
booleano = True
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Manipular diferentes tipos de datos en un programa.
Desarrollo: Proporcionar un conjunto de datos y pedir a los estudiantes que realicen operaciones sobre ellos.
Solución:
Declarar variables de diferentes tipos de datos.
Realizar operaciones aritméticas y lógicas sobre las variables.
Mostrar los resultados de las operaciones.
Tips y Recomendaciones
Elegir el Tipo Adecuado: Seleccionar el tipo de datos adecuado para cada variable según el contexto del problema.
Validar Datos: Asegurarse de validar y verificar los datos antes de realizar operaciones sobre ellos.
Trucos
Conversión de Tipos: Aprender a convertir entre diferentes tipos de datos según sea necesario.
Uso de Funciones Integradas: Utilizar funciones integradas en el lenguaje de programación para manipular y operar sobre los datos.
Clase 8: Tipos de Estructuras de Programación
Objetivos de la Clase
Comprender los diferentes tipos de estructuras de programación.
Aprender a utilizar estructuras de control de flujo y datos.
Realizar ejercicios prácticos utilizando diferentes estructuras de programación.
Contenido
1. Estructuras de Control de Flujo
Definición:
Las estructuras de control de flujo determinan el orden en el que se ejecutan las instrucciones en un programa.
Tipos Comunes:
Secuenciales: Instrucciones que se ejecutan en orden.
Condicionales: Instrucciones que se ejecutan según una condición (e.g., if-else).
Bucles: Instrucciones que se repiten (e.g., for, while).
Ejemplo:
Estructura condicional en Python:
python
Copiar código
if edad >= 18:
print("Eres mayor de edad.")
else:
print("Eres menor de edad.")
2. Estructuras de Datos
Definición:
Las estructuras de datos son formas de organizar y almacenar datos para su uso eficiente.
Tipos Comunes:
Listas: Colecciones ordenadas de elementos (e.g., [1, 2, 3]).
Tuplas: Colecciones ordenadas e inmutables de elementos (e.g., (1, 2, 3)).
Diccionarios: Colecciones de pares clave-valor (e.g., {'nombre': 'Juan', 'edad': 25}).
Ejemplo:
Declarar y utilizar una lista en Python:
python
Copiar código
lista = [1, 2, 3, 4]
print(lista[0]) # Imprime 1
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Utilizar estructuras de control de flujo y datos en un programa.
Desarrollo: Proporcionar un problema y pedir a los estudiantes que lo resuelvan utilizando diferentes estructuras de programación.
Solución:
Declarar variables y estructuras de datos necesarias.
Utilizar estructuras de control de flujo para resolver el problema.
Mostrar los resultados de las operaciones realizadas.
Tips y Recomendaciones
Elegir la Estructura Adecuada: Seleccionar la estructura de control o de datos adecuada según el contexto del problema.
Probar y Depurar: Probar y depurar el código para asegurar que las estructuras funcionan correctamente.
Trucos
Anidar Estructuras: Aprender a anidar estructuras de control y datos para resolver problemas más complejos.
Documentar el Código: Documentar el código para mejorar su legibilidad y mantenimiento.
Clase 9: Modularidad
Objetivos de la Clase
Comprender el concepto de modularidad en programación.
Aprender a dividir el código en módulos y funciones.
Realizar ejercicios prácticos de creación de módulos y funciones.
Contenido
1. ¿Qué es la Modularidad?
Definición:
La modularidad es el principio de dividir un programa en partes más pequeñas y manejables llamadas módulos o funciones, cada una con una responsabilidad específica.
Importancia:
Mantenibilidad: Facilita la comprensión, prueba y mantenimiento del código.
Reutilización: Permite reutilizar módulos y funciones en diferentes partes del programa o en otros proyectos.
2. Creación de Módulos y Funciones
Pasos para Crear Módulos y Funciones:
Identificar Tareas: Dividir el problema en tareas más pequeñas.
Definir Funciones: Crear funciones para cada tarea con responsabilidades claras.
Integrar Funciones: Llamar a las funciones desde el programa principal o desde otros módulos.
Ejemplo:
Crear una función para sumar dos números en Python:
python
Copiar código
def sumar(a, b):
return a + b
resultado = sumar(3, 5)
print(resultado) # Imprime 8
Ejemplo Práctico
Ejercicio Práctico:
Actividad: Dividir un programa en módulos y funciones.
Desarrollo: Proporcionar un problema complejo y pedir a los estudiantes que lo resuelvan utilizando modularidad.
Solución:
Dividir el problema en tareas más pequeñas.
Crear funciones para cada tarea.
Integrar las funciones en el programa principal.
Tips y Recomendaciones
Funciones Claras y Simples: Mantener las funciones pequeñas y con una responsabilidad específica.
Reutilización de Código: Escribir funciones reutilizables para mejorar la eficiencia del desarrollo.
Trucos
Documentación de Funciones: Documentar cada función con su propósito, parámetros y valor de retorno.
Pruebas Unitarias: Crear pruebas unitarias para verificar que cada función se comporta como se espera.
Recursos
Ingrese al Google Drive y descargue los recursos de apoyo. Aquí
VÍDEOS