Programacion Orientada A Objetos Java
Laura M. Castro Souto Primer Cuatrimestre Curso 2000/2001
2
´ Indice de cuadros
4.1. Tabla resumen de la evoluci´n de la Orientaci´n a Objetos . . . . . . . . . 34 o o
3
4
´ INDICE DE CUADROS
Cap´ ıtulo 1 Evoluci´n de los lenguajes de o programaci´n o
La programaci´n ha ido evolucionando desde sus or´ o ıgenes, donde los lenguajes erande muy bajo nivel y las posibilidades reducidas, refin´ndose cada vez m´s hasta alcanzar a a el alto nivel y relativa sencillez actuales. Veremos a grandes rasgos c´mo se ha desarrollado este proceso. o
1.1.
Programaci´n no estructurada o
En sus primeros momentos, decimos que la programaci´n llevada a cabo en lenguajes o como el basic es no estructurada. Los programas eran una serie de l´ıneas de c´digo con o saltos (instrucci´nes tipo goto) y en un unico bloque (sin posibilidad de subrutinas; o ´ ´ basic cuenta unicamente con la instrucci´n gosub ). ´ o
1.2.
Programaci´n procedimental o
Con la aparici´n de lenguajes como Pascal, surge la posibilidad del empleo de subrutio nas (funciones y procedimientos), lo que da nombre a esta “etapa” en que la programaci´n o se diceprocedimental.
1.3.
Programaci´n estructurada o
La necesidad de dar claridad y legibilidad al c´digo provoca que se reconozcan una serie o de principios o reglas a la hora de estructurar un programa. Surge as´ la programaci´n ı o estructurada, cuyas directivas son: Estructura jer´rquica top-down. a Dise˜o modular. n Salidas y entradas claramente definidas. ´ Unico punto de entrada y unicopunto de salida (tambi´n aplicable a funciones). ´ e Constructores de programaci´n estructurada: secuencia, selecci´n, iteraci´n y llao o o madas a procedimientos. 5
6
´ ´ CAP´ ITULO 1. EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
Existe una analog´ entre este modo programaci´n, esta forma de programar, propugıa o nada por la programaci´n estructurada y el llamado dise˜ o mediante refinamientoo n progresivo. Se afronta el problema desde la “cima” y se va analizando de forma que se delimitan sucesiva y claramente las partes y funciones que realizar´n cada una de las a cuales, hasta llegar a las m´s sencillas, directamente implementables de una manera f´cil. a a
1.4.
Programaci´n modular o
El siguiente paso consisti´ en la divisi´n de los largos programas, compuestos de l´ o oıneas y l´ ıneas de c´digo en secuencia sin interrupci´n en diferentes m´dulos, en los que, por o o o ejemplo, pod´ trabajar simult´neamente los diferentes integrantes de un grupo ´ deparıan a o tamento. Los m´dulos, sin embargo, no permiten la instanciaci´n ni la exportaci´n de tipos. o o o Este iba a ser el siguiente pelda˜o en la escalera de la evoluci´n de los lenguajes de n o programaci´n. o1.5.
TADs
Los Tipos Abstractos de Datos cuentan con una serie de caracter´ ısticas que exponemos a continuaci´n: o ◦ Exportan una definici´n de tipo. o ◦ Hacen disponibles operaciones para manipular instancias del tipo (interfaz ). ◦ El interfaz es el unico mecanismo de acceso a la estructura del TAD. ´ ◦ Es posible crear m´ltiples instancias del tipo (algo que no era posible en programauci´n modular). o El segundo y tercer puntos son comunes a los m´dulos. Son los otros dos los que o marcan la diferencia. La filosof´ consiste en que creamos nuevos tipos y los usamos como si fuesen predefiıa nidos. Es el paso previo a la orientaci´n a objetos. o
1.6.
1
Programaci´n Orientada a Objetos o
Clases y objetos ser´n para nosotros conceptos similares a tipos y variables. Es decir,a la relaci´n que existe entre un objeto y la clase a la que pertenece (la clase de la que es o una instancia 2 .) es an´loga a la que hay entre una variable y el tipo del que es declarada. a Una clase es un TAD con una caracter´ ıstica a˜adida: permite la herencia. n clase = TAD + herencia
simula 67 es el primer lenguaje que se puede considerar que soporta P.O.O. Realmente la palabra...
Regístrate para leer el documento completo.