programacion orientada a objetos

14
Aprendiz JOHN ALEXANDER MIRANDA PROGRAMACION ORIENTADA A OBJETOS Tecnología Análisis y Desarrollo Sistemas de Información III trimestre 2015

Upload: camello32

Post on 17-Jan-2016

4 views

Category:

Documents


0 download

DESCRIPTION

modelo explicado sobre la Programación Orientada a Objetos

TRANSCRIPT

Page 1: Programacion Orientada a Objetos

Aprendiz JOHN ALEXANDER MIRANDA

PROGRAMACION ORIENTADA A

OBJETOS

Tecnología Análisis y Desarrollo Sistemas de Información

III trimestre 2015

Page 2: Programacion Orientada a Objetos

La P.O.O (también conocida como O.O.P., por sus siglas en inglés) es lo que se conoce como un paradigma o modelo de programación. Esto significa que no es un lenguaje específico, o una tecnología, sino una forma de programar.  Definiéndola así mismo como una metodología de diseño de software que define los programas en términos de “clases de objetos”.

 

Programación Orientada a Objetos

Page 3: Programacion Orientada a Objetos

Objetos que son entidades que combinan un estado (es decir; los datos) y un comportamiento (es decir procedimientos o métodos). 

La programación orientada a objetos expresa un programa como un conjunto de estos objetos, que se comunican entre ellos, para realizar tareas.

La P.O.O., es diferente de los Lenguajes de programación anteriores en los que los datos y los procedimientos estaban por separado.

Page 4: Programacion Orientada a Objetos

POO

Paradigma

Teorías

Estándares

Modelos

Utiliza Objetos y sus

interacciones

Diseño aplicaciones

programas pc

Lenguajes Orientados a objetos

Programación Orientada a Objetos

Basado en

Objetos

Basado en

Clases

Herencia de

Clases

Page 5: Programacion Orientada a Objetos

Programación Orientada a ObjetosAbstracción:

•Generalización conceptual de un determinado conjunto de objetos y de sus atributos y propiedades Abstracción

•Deja en segundo término los detalles concretos de cada objeto.

Polimorfismo:

•Acceso a un grupo de funciones a través de la misma interfaz Herencia Polimorfismo

•Un identificador puede tener distintas formas (distintos cuerpos de función y comportamiento) POO.

Modularidad:

•Propiedad de un sistema descompuesto en un conjunto de módulos cohesivos débilmente acoplados

Encapsulamiento:

•Capacidad de agrupar y condensar en un entorno con límites bien definidos distintos elementos Encapsulamiento.

•Se hace referencia a encapsulamiento abstracto.

Herencia:

•Es un tipo de jerarquía aplicada sobre las clases

•Las clases tienen descendencia y heredan atributos de clases “padres” (Superclases) •Existe la herencia simple y la múltiple

Page 6: Programacion Orientada a Objetos

Definición de un Objeto

Elementos de la vida real Problema

Objeto

Abstracción

DeEn el dominio del

ATRIBUTOS

•Caracterizan al Objeto

•Variables que almacenan datos relacionados al estado de un objeto

Método

•Caracterizan el comportamiento del objeto

•Hacen posible que el objeto responda a solicitudes externas

•Pueden depender o modificar valores de los atributos

Identidad

•Es lo que le diferencia de los demás objetos

•Esta identidad se crea mediante un identificador

Entidad Real o

Abstracta

Representa

Instancia

Clase

De

Es

Objeto

Paradigma Estructurado• Variables

Paradigma POO• Objetos

Relación con otros paradigmas

Componentes

Representa

Page 7: Programacion Orientada a Objetos

Definición de una Clase

Conjunto de Objetos

Estructura y comportamient

os

Que Compar

ten

Clase

Es

Abstracción

Representa

De

Atributos (Estado)

Métodos o

Procesos

Clase

Plantilla Instancia

ObjetoEs una instancia de

la clase

Ya está definido, con

características particulares

ClaseEs la definición de un

tipo de objeto

Representa la abstracción de las

características de un grupo de objetos

Componentes

Perro chihuahua

De

De

Son

Clase: Perro

Perro Pitbull

Perro Bulldog ingles

Page 8: Programacion Orientada a Objetos

Programación Estructurada

Page 9: Programacion Orientada a Objetos

Programación Estructurada

• La programación estructurada establece un orden particular.

• Maneja por separado al código y a las estructuras de datos

• Los algoritmos trabajan sobre las estructuras de control.

• Este tipo de programación da mayor importancia al código que a

las estructuras de datos.

Algoritmos + Estructuras de Datos = Programas

Page 10: Programacion Orientada a Objetos

Programación Orientada a Objetos

Clase: CarroAtributos:MarcaModelocolorMétodos:CombustiónFrenarAcelerar

Objeto1Atributos:Ford2014verde

Instancias de la Clase Carro

Objeto 2Atributos:Chevrolet2015rojo

Objeto 3Atributos:Toyota2012plateado

Page 11: Programacion Orientada a Objetos

Programación Orientada a Objetos

• La POO fue concebida por quienes reconocían el mundo como poblado de objetos que interactuaban entre si de acuerdo a su naturaleza.

• Los procedimientos aplicados a los objetos depende de la naturaleza de los mismos, por ejemplo no se puede imprimir un auto, no se puede conducir un foco, etc. estas acciones son inapropiadas porque no forman parte del comportamiento natural de los objetos.

Datos + Código = Objeto

Page 12: Programacion Orientada a Objetos

conclusiones

Page 13: Programacion Orientada a Objetos

• La programación estructurada consta, como su nombre lo indica, de una estructura donde se va ejecutando paso a paso y este debe de tener una secuencia y una lógica para que su función sea eficiente.

• La programación orientada a objetos se basa en una nueva forma de pensar los problemas, declarando como variables o los tipos de datos los objetos del problema, y que a su ves, cada objeto tiene anidadas variables que hacen referencia al dato.

• La programación orientada a objetos es más moderna, es la evolución de la programación estructurada que plasma en el diseño de una familia de lenguajes conceptos que existían previamente con algunos nuevos.

DIFERENCIA ENTRE LA PROGRAMACIÓN ESTRUCTURADA, ORIENTADA A OBJETOS

Page 14: Programacion Orientada a Objetos

• La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase). 

• La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos. 

• La programación estructurada pretende resolver un problema de principio a fin en una sola estructura de código. La programación orientada a objetos, resuelve el problema identificando los actores que tienen participación en el problema e identificando también sus acciones. Con esta información se crean los objetos (que son una interpretación de algunos de estos actores), estos objetos están compuestos por clases donde se detalla las acciones que realizan y las propiedades de estos. Al tener creados los objetos solo es ponerlos a interactuar entre ellos.