Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ORIENTADA A OBJETOS
EVINED21V
UNIDAD I. Principios Básicos de la Programación
Orientada a Objetos.
1.1 Paradigma de POO, Clases y Objetos, Atributos, Métodos y Herencia.
Los lenguajes de programación forman un subconjunto de los lenguajes
formales. Mediante ellos el ser humano puede comunicarse con una
computadora y decirle qué es lo que tiene que hacer y, al mismo tiempo,
sirven para comunicarse con otros seres humanos y expresarles qué es lo
que se quiere que haga una computadora.
Definición de Paradigma.
La definición de paradigma que se encuentra en el diccionario de María
Moliner
Para Thomas Kuhn, quien en su libro publicado en 1962, “The Structure of Scientific
Revolutions”, amplió la concepción del término paradigma de la siguiente forma:
”Forma en que un científico percibe al mundo y a la estructura de teorías y
suposiciones que modifican esta percepción”.
Todos los lenguajes de programación existentes pueden ser clasificados en una jerarquía
de familias a partir del modelo que siguen para definir y operar información (Figura 1),
es decir, que pueden ser jerarquizados según el paradigma que siguen.
Cuando se quiere utilizar la computadora para resolver problemas, lo primero que hay que
hay que hacer es poder trasladar dicho problema a la computadora, en donde el proceso
de translación del mundo real a la computadora implica un proceso denominado
ABSTRACCION.
Tal vez el termino por si solo sea extraño, pero desde niños estamos acostumbrados a
realizar abstracciones: ya que a veces jugábamos a hacer otra persona
situada en otro mundo, o jugábamos arriba de la cama en donde esta
podía convertirse en un avión, coche o barco.
Los ejemplos anteriores no son otra cosa que ABSTRACCIONES, modelos de la realidad
llevada a otro contexto por medio de una operación intelectual.
PROGRAMACIÓN IMPERATIVA.
El término imperativo en este caso, es una orden para realizar una acción específica. De
forma similar, la programación imperativa consiste en una serie de comandos que una
computadora ejecutará.
Estos comandos detallan de forma clara y específica el cómo hacer las cosas y llevarán al
programa a través de distintos estados.
Los lenguajes más utilizados dentro de este paradigma son Standard ML, Haskell y Scheme9
aunque al hoy por hoy LOGO10 figuraría junto con otros dialectos de LISP.
PROGRAMACION LÓGICA
El paradigma lógico difiere de forma importante de otros paradigmas. No sólo en su
sintaxis o semántica, sino que en él la lógica representa conocimiento, el cual es
manipulado mediante inferencias.
A diferencia de los demás paradigmas, trabajar en este significa especificar qué hacer
y no cómo hacerlo, por ello son llamados lenguajes declarativos.
Ahora, suponiendo este conjunto, se va realizar algunas operaciones sobre él. Primero, se realizara
una consulta que devolvería el conjunto ordenado de forma descendente por su fecha de estreno:
Obteniéndose el siguiente resultado:
BENEFICIOS DE LA POO
Entre los beneficios que ofrece el paradigma de la POO están:
Modelación Comprensible: La forma de modelara una solución mediante el paradigma de la
POO es muy similar a la visión que tienen los seres humanos respecto a la realidad.
Reutilización: La posibilidad de no comenzar nuevas aplicaciones desde cero, pues el
diseño que da la POO al código permite usar nuevamente código creado con anterioridad.
Flexibilidad: El paradigma de la POO crea código flexible y facilita la adaptación de código
ya escrito a nuevas necesidades sin mucho esfuerzo Esto repercute en el mantenimiento ,
más sencillo y menos costoso de las aplicaciones.
Escalabilidad: Las aplicaciones pueden ir creciendo a la par de las nuevas necesidades
debido a la reutilización y características como la herencia.
Elementos del modelo de objetos:
Clases : Una clase es un tipo de dato que contiene en una misma estructura atributos
(variables) y métodos(funciones).
Dentro de la clases, existe un especificador de acceso, que indica la visibilidad de la clase
(quienes pueden verla).
Objeto: Un objeto es una instancia de una clase, de la misma manera que una variable es
una instancia de un tipo de dato.
Pro ejemplo: considerar la siguiente instrucción:
int edad
La variable edad es una instancia del tipo de dato int
Método: Los métodos son funciones de una clase.
Herencia: Esta técnica permite que una clase hija (clase que hereda de otra) adquiera de
la clase padre las siguientes propiedades:
1. Automáticamente obtiene todos los atributos (variables) miembro de la clase padre.
2. Obtiene todos los métodos miembro de la clase padre; por lo que, la clase hija podrá
funcionar de la misma manera que la padre.
3. La clase hija puede definir nuevos atributos (variables) y métodos (funciones).
Abstracción: Es concentrarse sobre las características o hechos mas importantes de los
objetos, dejando de lado los detalles.
Ocultamiento: Propiedad que permite aislar o proteger del exterior a los atributos de un
objeto, de tal manera que no puedan sr modificados de manera arbitraria.
Modularidad: Es la propiedad que exige dividir una aplicación grande en partes mas
pequeñas, independientes entre si.