Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Boulevard Víctor M. Cervera Pacheco S/N por 62 Progreso, Yucatán, C.P. 97320 Tel. 01969 934 30 23. Cel. 999 278 6219 www.tecnm.mx | www.progreso.tecnm.mx Instituto Tecnológico Superior Progreso “2020, Año de Leona Vicario, Benemérita Madre de la Patria” Instituto Tecnológico Superior Progreso Ingeniería en Sistemas Computacionales SEMESTRE: Primero MATERIA: Fundamentos de programación TRABAJO: Actividad 4.3- Investigación PROFESOR: Mtro. Edgar Alejando Sagundo Duarte ALUMNO: Erick Jesús Aguilar Martínez Adrián De la Cruz Dzul Uicab Isaias Francisco Lavalle Acosta Carlos Raúl Morales Acosta Jorge Abraham Mena Torres Luis Ángel Quintal Chuc Abel Isaac Uc Cab FECHA DE ENTREGA: PROGRESO, YUCATÁN, 3 DE DICIEMBRE DEL 2020 http://www.tecnm.mx/ Boulevard Víctor M. Cervera Pacheco S/N por 62 Progreso, Yucatán, C.P. 97320 Tel. 01969 934 30 23. Cel. 999 278 6219 www.tecnm.mx | www.progreso.tecnm.mx Instituto Tecnológico Superior Progreso “2020, Año de Leona Vicario, Benemérita Madre de la Patria” PROGRAMACIÓN MODULAR El método más conocidos para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Esta técnica se usa mucho en programación ya que programar no es más que resolver problemas, y se le suele llamar diseño descendente, metodología del divide y vencerás o programación top-down. La programación modular es un paradigma de programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable. Es evidente que si esta metodología nos lleva a tratar con subproblemas, entonces también tengamos la necesidad de poder crear y trabajar con subprogramas para resolverlos. A estos subprogramas se les suele llamar módulos, de ahí viene el nombre de programación modular. TIPOS Los parámetros por valor: Los parámetros por valor tienen dicho nombre porque lo que recibe el subprograma no es más que copias de los valores de los datos que el programa invocador le pasa. Por tanto si en el procedimiento modificamos alguno de estos valores, los datos originales permanecerán inalterados Los parámetros por referencia: En cambio, en los parámetros por referencia lo que se pasa al procedimiento son los datos en sí. Y si éste los modifica, los cambios permanecerán una vez que la ejecución vuelva al módulo que invocó al procedimiento. Se utilizan para obtener valores de los cálculos que haga un subprograma. OBJETIVO Al aplicar la programación modular, un problema complejo debe ser dividido en varios subproblemas más simples, y estos a su vez en otros subproblemas más simples. Esto debe hacerse hasta obtener subproblemas lo suficientemente simples como para poder ser resueltos fácilmente con algún lenguaje de programación. Esta técnica se llama refinamiento sucesivo, divide y vencerás o análisis descendente (TopDown). Un 'módulo' es cada una de las partes de un programa que resuelve uno de los subproblemas en que se divide el problema complejo original. Cada uno de estos módulos tiene una tarea bien definida y algunos necesitan de otros para poder operar. En caso de que un módulo necesite de otro, puede comunicarse con éste mediante una interfaz de comunicación que también debe estar bien definida. Si bien un módulo puede entenderse como una parte de un programa en cualquiera de sus formas y variados contextos, en la práctica se los suele tomar como sinónimos de procedimientos y funciones. Pero no necesaria ni estrictamente un módulo es una función o un procedimiento, ya que el mismo puede contener muchos de ellos. No debe confundirse el término "módulo" (en el sentido de programación modular) con términos como "función" o "procedimiento", propios del lenguaje que lo soporte. http://www.tecnm.mx/ Boulevard Víctor M. Cervera Pacheco S/N por 62 Progreso, Yucatán, C.P. 97320 Tel. 01969 934 30 23. Cel. 999 278 6219 www.tecnm.mx | www.progreso.tecnm.mx Instituto Tecnológico Superior Progreso “2020, Año de Leona Vicario, Benemérita Madre de la Patria” VENTAJAS Reducción de los costos de mantenimiento. Aumento de la productividad del programador. Se facilita la utilización de las otras técnicas para el mejoramiento de la productividad en programación. Los programas quedan mejor documentados internamente. Hace posible la lectura secuencial de los programas y con ello facilita su comprensión. Permite reducir significativamente los errores producto de efectos colaterales inadvertidos. Debido a que el código es más fácil de comprender (si se lo compara con código que no usa estructuras de control del flujo de ejecución), los errores también suelen ser más fáciles de encontrar y corregir. Lo anterior hace que también sea más sencillo extender los programas (mantenimiento). Consecuencia directa de lo anterior es que el mantenimiento de los programas suele tener un costo más reducido. DESVENTAJAS No permite modelar directamente los conceptos del dominio del problema, por lo que el nivel de abstracción que se puede lograr es menor que en la programación orientada a objetos La necesaria traducción desde el dominio del problema al dominio de la solución requiere un mayor esfuerzo de compresión La separación entre datos (variables) y rutinas (procedimientos y funciones) conduce a la necesidad de utilizar variables globales e implica que las capacidades de encapsulamiento que el paradigma propone sean limitadas Una consecuencia de lo anterior es que la introducción de cambios suele ser muy problemática ya que los efectos secundarios (o colaterales) aparecen con frecuencia durante el mantenimiento de los programas. Inflexibilidad: es más difícil introducir cambios porque ello requiere mayores modificaciones en el código que ya está funcionando. http://www.tecnm.mx/ Boulevard Víctor M. Cervera Pacheco S/N por 62 Progreso, Yucatán, C.P. 97320 Tel. 01969 934 30 23. Cel. 999 278 6219 www.tecnm.mx | www.progreso.tecnm.mx Instituto Tecnológico Superior Progreso “2020, Año de Leona Vicario, Benemérita Madre de la Patria” HERRAMIENTAS PARA PROGRAMAR EN EQUIPO Calendly: Programar llamadas entre miembros del equipo y con terceros es difícil por correo electrónico o mensajería. Clockify: Medir el tiempo es importante, especialmente si tu empresa factura por horas o tu equipo trabaja en horarios flexibles. Hibox: Hibox es el mejor espacio de trabajo digital para ayudar a los equipos a aumentar la productividad y mantenerse organizados. Dropbox: Dropbox es la solución perfecta para compartir información confidencial del equipo a la que todos tienen acceso http://www.tecnm.mx/
Compartir