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.

Slides:



Advertisements
Presentaciones similares
Programación de Computadores
Advertisements

Fundamentos de Diseño de Software INFT.1
ANÁLISIS DE REQUERIMIENTOS
Secuencia finita, ordenada y lógica de instrucciones (ó pasos), los cuales permiten realizar una ó varias tareas.
CARRERA: INGENIERIA CIVIL UNI-RUACS
ALGORITMOS.
Diseño orientado al flujo de datos
Programación modular Procedimientos y Funciones
Introducción a la Programación
Tipos de Datos Abstractos Modularidad
Historia La base del C proviene del BCPL (lógica programable en codigo binario), escrito por Martin Richards, y del B escrito por Ken Thompson en 1970.
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
POO Santiago, Mayo 2004 TRABAJO DE INVESTIGACIÓN POO Programación Orientada a Objetos CENAFOM Carolina Bravo V. Jaime Jofré B.
1.3 Programación modular. Subprogramas.
UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
Metodología de la Programación
Programación 1 Introducción
Programas Son una serie o secuencia de instrucciones entendibles por los ordenadores que permiten la realización de las acciones o tareas para las que.
Objetivos Específicos de la Unidad
METODOLOGIA DE LA PROGRAMACION
Funciones en lenguaje C
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.
VHDL.
Laura Patricia Pinto Prieto Ingeniera de sistemas.
 La resolución de problemas algorítmicos no solamente implica que los informáticos sepan programar sino necesitan de otras habilidades como tener una.
TRADUCTOR DE UN PROGRAMA
Semana 5 Subprogramas..
Academia de Informática
PROCEDIMIENTOS FUNCIONES
Funciones y Procedimientos(Pseudocódigo)
Programación Modular (Pseudocódigo)
Fundamentos de programación

M.S.C. Ivette Hernández Dávila
DISEÑO DE SOFTWARE 1ª. Parte
DATA WAREHOUSE Equipo 9.
DISEÑO DEL SISTEMA DE COMUNICACIÓN ENTRE EL APRENDIZ Y EL MEC
Fundamentos de Programación
LENGUAJE DE PROGRAMACIÓN
PROGRAMACIÓN PROCEDIMENTAL
Fundamentos de programación Organización de una computadora.
Material de apoyo Unidad 4 Estructura de datos
Diseño de Programas.
Tipos de Datos. Entrada-Salida.. La entrada-salida (I/O) le permite a un programa comunicarse con el mundo exterior. Esta comunicación puede realizarse.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
TEMAS PRINCIPALES. ALGORITMOS. CONCEPTOS El algoritmo es un método para resolver un problema mediante una serie de pasos definidos, precisos y finitos.
Ingeniería en Sistemas de Información
Diseño: Fundamento y Documentación ISF5501 Ingeniería de Software Semana 13/2.
Metodología para la construcción de programas
COMPUTO III Ing. Jimmy Ojeda Arnica.
Facultad de Ingeniería
Lenguajes de Programación
COMPUTACIÓN I TEMA 5. Subprogramas o funciones. Alcance de variables
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Nuestra herramienta mental más importante para competir con la complejidad es la abstracción. Por tanto, un problema no deberá considerarse inmediatamente.
Metodología de la programación
DEV- C++ ·include <iostream> Int x x=x+2(x)
Diseño de Sistemas.
Elaboración de algoritmos usando lógica de programación
1.4 CLASIFICACION DE LA TECNOLOGIA EN EL DESARROLLO DEL SOFTWARE
Capítulo 2 “Subprogramas/Funciones - Arreglos”
Las funciones son librerías ya estandarizadas que permiten al usuario realizar sus respectivas programaciones. Una función es un conjunto de líneas de.
 Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman unos valores de entrada, llamados parámetros y proporcionan.
Curso: Fundamentos de Computación
PROCESADOR.- El procesador es el cerebro del sistema, encargado de procesar toda la información. Básicamente, es el "cerebro" de la computadora. Prácticamente,
Programación I Prof. Carolina Cols. Algoritmo es una lista bien definida, ordenada y finita de operaciones que permite hallar la solución a un problema.
Algoritmos Computacionales
PARADIGMA viene del Griego Paradeima = Modelo. Un paradigma es el resultado de los usos, y costumbres, de creencias establecidas de verdades a medias,
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
ALGORITMOS Y PROGRAMAS. OBJETIVOS  Resolver problemas mediante la especificación algorítmica.  Proporcionar los procedimientos y técnicas para el desarrollo.
Transcripción de la presentación:

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.paradigma de programación Se presenta históricamente como una evolución de la programación estructurada para solucionar problemas de programación más grandes y complejos de lo que ésta puede resolver.programación estructurada

Al aplicar la programación modular, un problema complejo debe ser dividido en varios sub problemas 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. Ésta técnica se llama refinamiento sucesivo, divide y vencerás ó análisis descendente (Top- Down).divide y vencerás 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 "modulo" (en el sentido de programación modular) con términos como "función" o "procedimiento", propios del lenguaje que lo soporte.procedimientos funciones

 Cada programa contiene un módulo denominado programa principal que controla todo lo que sucede; se transfiere el control a los submódulos o subprogramas. Estos ejecutan su función y una vez completada su tarea, devuelven el control al módulo principal.  Cada submódulo se puede descomponer en otros submódulos, dependiendo de la complejidad de la tarea a realizar y la subdivisión continúa hasta que cada módulo tenga una sola tarea para ejecutar.  Un submódulo puede realizar tareas de distinta naturaleza como: entrada, salida, manipulación de datos, control de otros módulos o una combinación de éstos. Un módulo puede transferir temporalmente (bifurcar) el control a otro módulo; sin embargo, cada módulo debe eventualmente devolver el control al módulo del cual recibió originalmente el control.

Objetivos de la programación modular Hacer mas legible y manejable un programa Simplificación del problema: Divide y vencerás Aumentar su capacidad de reutilización Facilita el trabajo en equipo Funciones Transforman datos Variables de entradas Variables de salida Variables de Entrada / Salida Realizan una única tarea, bien definida El nombre indicara su función Pueden usar otras funciones Si se llama a si misma => función recursiva

Funciones Espacio de trabajo local Aisladas del programa, solo se comunican mediante los argumentos de entrada y la salida de la función Excepción: Variables globales Ej.: A = f(B) Si B es una variable de entrada, f no puede modificar B En matlab todos los argumentos son de entrada La salida se guarda en A Funciones Matlab function [out1, out2,..., outN] = nombre función (in1, in2,..., inM) Mismo nombre que el fichero.m donde se define Las variables definidas dentro de la función son locales Al modificar un parámetro de entrada se hace una copia para evitar su modificación out1=salida1 %modifica la salida

Programa vs Función Programa: Mismo efecto que ejecutar línea a línea en ventana de comandos Funciones: Solo accede a los argumentos de entrada y variables globales declaradas Variables de programa: globales Variables de función: locales Variables locales: Se destruyen al salir de la función No interfieren con variables del mismo nombre en otras partes del programa

PROCEDIMIENTOS Y FUNCIONES Un algoritmo que resolviera un problema complejo, contendría cientos o miles de líneas de código en su interior. Esto es inabarcable para cualquier programador, por lo que se utiliza el concepto de procedimientos y funciones para subdividir el problema en partes. La idea es que cada una de estas partes contenga un conjunto de instrucciones que permita la ejecución de algún proceso determinado y lógico desde el punto de vista humano. Dos ejemplos, función y procedimiento respectivamente: FUNCION multiplicar(E a: ENTERO, E b: ENTERO): ENTERO RETORNA ( a * b ) FIN_FUNCION ó PROCEDIMIENTO escribirEdad(E mensaje: CADENA, E edad: ENTERO) ESCRIBIR( mensaje, edad ) FIN_PROCEDIMIENTO La descomposición del software en tareas también se conoce con el nombre de top-down y fue presentada por primera vez por Niklaus Wirth. Este autor proporciona la siguiente visión de refinamiento: “En cada paso (del refinamiento), una o varias instrucciones del programa dado, se descomponen en instrucciones más detalladas. Esta descomposición sucesiva o refinamiento de especificaciones termina cuando todas las instrucciones están expresadas en términos de la computadora usada o del lenguaje de programación… Conforme se refinan las tareas, también los datos pueden ser refinados, descompuestos o estructurados siendo natural refinar las especificaciones del programa y los datos en Paralelo, Cada paso de refinamiento implica algunas decisiones de diseño. Es importante que el programador sea consciente de los criterios subyacentes (en las decisiones de diseño adoptadas) y de la existencia de soluciones alternativas…” Típicamente, una descomposición insuficiente de un problema en tareas conduce a la definición de pocos procedimientos, cada uno de las cuales implementará múltiples funcionalidades.