poo programación orientada a objeto(s)

14
PROGRAMACIÓN ORIENTADA A OBJETO(S) Ing. Santiago Acurio Sistemas Mercantiles Vinueza Pillajo Danny Séptimo Semestre

Upload: cambiar-una-estructura

Post on 25-Jun-2015

4.475 views

Category:

Education


0 download

DESCRIPTION

Esta extración de la Programacion Orientada a Objeto (no objetos) es parte de los Lenguajes de Programación para enterder su estructura funcional. Me refiero a no objetos porque la POO son datos abstractos de un solo objetos, en el que tengan relación no implica el generalizar, se lo trata a cada uno de forma distinta. Es como un ser humano, es distinto de otro, pero, orientado a tener caracteristicas similares (no iguales) que lo relacionan (no comparar: un ser humano hace lo mismo que otro) en el sentido de actuar diferente a una situación.

TRANSCRIPT

Page 1: POO Programación Orientada a Objeto(s)

PROGRAMACIÓN ORIENTADA A OBJETO(S)

Ing. Santiago AcurioSistemas Mercantiles

Vinueza Pillajo Danny Séptimo Semestre

Page 2: POO Programación Orientada a Objeto(s)

Evolución

Visión General:

Se ha desarrollado en base a una sola idea: la realización de programas para ordenadores sea cada vez más simple, flexible y portable.

Bruce Eckel: "A medida que se van desarrollando los lenguajes, se va desarrollando también la posibilidad de resolver problemas cada vez más complejos y comienza a crecer dificultades a la hora de manejar programas que sean de un cierto tamaño y sofisticación." ("Aplique C++", p. 5 Ed. McGrow-Hill).

La extensión de la sucesión de instrucciones (0 y 1, bits) fue la razón principal para dar el paso a la POO ya que era casi imposible encontrar y solucionar un problema.

Page 3: POO Programación Orientada a Objeto(s)

Relativo a la tecnología:

Creación de lenguajes de alto nivel (expresar algoritmos de una manera adecuada a la

capacidad cognitiva humana, poseen un compilador)

Son lenguajes independientes en base al dialecto BASIC que posee cada máquina (cuestiones de marketing, políticas de la empresa, sociedad)

Page 4: POO Programación Orientada a Objeto(s)

Relativo a la conceptualidad:

Programación Lineal (identificadores, si la variable es 100 -> terminar, Si_no -> saltar a 1,

procedimientos)

Programación Estructurada (funciones para reducir el número de líneas reutilizadas, red neuronal, lógica de predicados)

Programación Orientada o Objetos (la re-usabilidad del código escrito es mucho mayor que con el uso de funciones y las portabilidades mayores)

Page 5: POO Programación Orientada a Objeto(s)

La POO (Programación Orientada a Objeto(s)) no es un lenguaje de programación, esta es una estructura funcional misma que proviene de una base sólida para cumplir determinadas tareas en un ambiente no sincronizado volviéndose un algoritmo repetitivo o reutilizable. Es aplicable a cualquier lenguaje de programación.

ALGORITMO 1(p. e. operaciones

aritméticas)

HILO BASE 1(p. e. aplicación ó software: Hoja de Cálculo +, - , * , /,

alfabeto)

HILO BASE 2(p. e. aplicación ó

software: Calculadora +, - , * , /)

HILO BASE 3(p. e. aplicación ó

software: Documento de texto +, - , * , /, alfabeto)

BASE(p. e. software)

ALGORITMO 2(p. e. alfabeto … )

Un programador o no, ya sabe lo que es un objeto y como manipularlo, lo lleva haciendo desde que nació, este conocimiento del mundo físico y los informáticos, hace que la POO sea cosa de niños, quitando ideas preconcebidas de programación tradicional .

¿Qué es la POO?

Page 6: POO Programación Orientada a Objeto(s)

Abstracción de datos

Encapsulación y ocultación de datos

Herencia

Polimorfismo

Propiedades Fundamentales

Page 7: POO Programación Orientada a Objeto(s)

Examinar algo sin preocuparse de detalles externos.

No se preocupa de la representación de un número en coma flotante.

Maneja tipos de datos abstractos (creados por el usuario)

Abstracción de datos

Page 8: POO Programación Orientada a Objeto(s)

Concepto complementario de abstracción, se enfoca en lo externo.

Previene a otros objetos de ver su interior, representa la abstracción.

Los datos y métodos se defines indistamente.

Encapsulamiento y ocultación de datos

Page 9: POO Programación Orientada a Objeto(s)

La idea de clases conduce a idea de herencia, posee subclases (idea de la vida diaria)

Tendencia a agrupar objetos (datos y métodos) con características similares (p.e. color, tamaño, peso)

Herencia

Perro

DatosColor TamañoPeso

MétodosDesplazarseMasticarDiferir

Animales

Tigre GatoObjeto

Clase … Que heredaEspina dorsalSe alimenta de clase materna

Clase Abstracta HabitadCautiverio

HabitadDoméstico

Page 10: POO Programación Orientada a Objeto(s)

Cualidades que poseen los objetos para responder de distinto modo ante un mismo mensaje.

Polimorfismo

Perro

AlimentarseComer

(lo realizan de distinta forma)

Tigre

Gato

La ventaja que se obtiene en métodos con igual nombre es que se aplican primero a las próximas a la raíz del árbol de clases (O1, O2, On » C1,C2,CN C1:O1, C1:O2, C1:On … )

Page 11: POO Programación Orientada a Objeto(s)

Su teoría principal es planificar bien el árbol (término opcional jerarquía ) de clases

La planificación de quien se deriva de quien y la inter-relación, es lo más importante.

Es necesario entender para utilizar

Al ser implementada, produce un mínimo esfuerzo para asimilar y comprender.

Planteamiento de la implementación

Page 12: POO Programación Orientada a Objeto(s)

Presenta las cuestiones prácticas relacionadas con la implementación de la POO:

El operador de envío: hace que se ejecute porción del código agrupada bajo el nombre del método C1(abc), C2(def), Cn(n1,n2,n2) C1(b))

Constructores: esta palabra reservada nos devuelve un objeto nuevo de esa clase. En este caso, a los métodos constructores se les suele llamar New() » Hombre hmrJuan = Hombre.New()

Destructores: utilizado para deshacer a los constructores, siempre se llama

finalice()

Teoría de Realidad

Page 13: POO Programación Orientada a Objeto(s)

La encapsulación choca frontalmente con la herencia, y sin embargo, son dos piedras angulares de la OOP.

p.e. Montaje de un coche | Comprar un carburador Fiat y montarlo en un coche Opel, unos asientos Volvo y montarlo en una carrocería Citroën; esto mismo no puedo hacerlo en OOP.

Limitaciones e inconvenientes

Page 14: POO Programación Orientada a Objeto(s)

Software: conjunto de programas que ejecuta un computador, se distingue del sistema base que

tiene compiladores, programas, rutinas y subrutinas. Aplicación: descripción, documentación que definen la integración de una tarea. Forma parte del software. Árbol de jerarquía: se representar como un árbol. En la raíz de este árbol se halla la superclase, y de ella se van

ramificando todas las subclases; radican en la conexión. Clase: conjunto de datos y evento, reglas de creación y comportamiento de los objetos. Método: se les llama así a las funciones que realizan operaciones con los datos de un objeto. Dato: variable perteneciente de una clase.

Glosario