Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Conceptos Fundamentales
Paradigmas de programacin
Prog. orientada a objetos
Programacin estructurada
Programacin imperativa
A.Ortigosa POO - EPS - UAM 2
Paradigmas de programacin
Prog. orientada a objetos
Comandos E. de D. simples
Programacin estructurada
Programacin imperativa
A.Ortigosa
Paradigmas de programacin
Prog. orientada a objetos
Abstraccin de Operaciones
Tipos Abstractos de Datos
Programacin estructurada
Programacin imperativa
A.Ortigosa
arg1
arg1
arg2
arg3
Salida
A.Ortigosa POO - EPS - UAM
Salida
Qu hace?
Implementacin
A.Ortigosa
Qu hace?
Implementacin
A.Ortigosa
Programacin estructurada
Ejemplo:
void main () { double u1, u2, m; u1 = 4; u2 = -2; m = sqrt (u1*u1 + u2*u2); printf (%lf, m); }
double modulo (double u1, double u2) { double m; m = sqrt (u1*u1 + u2*u2); return m; } void main () { printf (%lf, modulo (4, -2)); }
A.Ortigosa
Se evita la repeticin del trabajo Trabajo de programacin dividido en mdulos independientes Diseo top-down: descomposicin en subproblemas Claridad del cdigo Independencia de los mdulos
Facilita el mantenimiento
Favorece la reutilizacin
A.Ortigosa
Paradigmas de programacin
Prog. orientada a objetos
Programacin estructurada
Programacin imperativa
A.Ortigosa
10
A.Ortigosa
11
TAD
Un TAD consiste en:
Estructura de datos que almacena informacin para representar un determinado concepto Funcionalidad: conjunto de operaciones que se pueden realizar sobre el tipo de datos
A.Ortigosa
12
TAD: ejemplo en C
struct vector { double x; double y; }; void construir (vector *u, double u1, double u2) { u->x = u1; u->y = u2; } void main () { double modulo (vector u) vector u; { construir (&u, 4, -2); double m; printf (%lf, modulo (u)); m = sqrt (u.x*u.x + u.y*u.y); } return m; }
A.Ortigosa POO - EPS - UAM 13
A.Ortigosa
14
TAD: ventajas
Conceptos del dominio reflejados en el cdigo. Encapsulamiento: ocultacin de la complejidad interna y detalles de los datos y las operaciones. Especificacin vs. implementacin: utilizacin del tipo de datos independiente de su programacin interna. Mayor modularidad: tambin los datos. Mayor facilidad de mantenimiento, reutilizacin.
A.Ortigosa
15
Paradigmas de programacin
Prog. orientada a objetos
Programacin estructurada
Programacin imperativa
A.Ortigosa
16
nfasis en la transformacin de datos. Las funciones y los datos son gestionados como entidades separadas. Difcil de entender y modificar. Normalmente las funciones dependen de la estructura de los datos F
A.Ortigosa
18
nfasis en la abstraccin de datos. Las funciones y los datos son encapsulados en entidades compactas. Facilita el mantenimiento a travs de especializacin. Mejor traduccin de entidades del dominio
A.Ortigosa
19
A.Ortigosa
20
10