Conceptos y definiciones de poo. alumno.juan manuel osorio baruch

Post on 09-Jul-2015

180 views 2 download

description

Programacion orientada a objetos POO. Conceptos y definciones basicas del POO.

Transcript of Conceptos y definiciones de poo. alumno.juan manuel osorio baruch

Alumno: Juan Manuel Osorio

Baruch.

Ing. Electrónica

N.C. 12230421

POOProgramación Orientada a

Objetos

ClaseConjunto de objetos que comparten una estructura y un

comportamiento en común en otras palabras es igual a un

concepto o una idea.

Los datos y las operaciones comunes a un conjunto de objetos

forman un conjunto que se conoce como clase

Una clase puede tener propiedades (atributos) y

métodos(funciones) que hacen interactuar a la clase consigo

misma o con el mundo exterior.

Objetos

O Entidad compuesta de unos datos y las

operaciones que realizamos sobre esos datos.

Ejemplo de objeto

Atributos

O Son básicamente y sencillamente las

características.

O Los atributos son operaciones predefinidas

que se pueden aplicar a tipos, objetos y otras

entidades. Tienen la siguiente sintaxis:

O Entidad'Atributo o bien

O Tipo'Atributo(Entidad)

O Las características de la clase. A menudo

llamado variables de instancia.

Método

O Algoritmo asociado a una clase que

representa una cosa que hace el objeto.

Subclase

O Clase sobre la base de otra clase.

Interfaces

O Una interface se compone de “Un conjunto de

operaciones que caracterizan el

comportamiento de un elemento”. Todos los

métodos definidos en una interface son public

abstract.

Por ejemplo, se puede ver la tarea de escribir "Hola Mundo" sobre la pantalla en diferentes niveles de abstracción:

1.-Haciendo todo el trabajo desde el principio:Traza, sobre papel milimetrado, la forma de las letras (y espacio) "H, o, l, a, M, u, n, d, o".

Crea una matriz de cuadrados negros y blancos que se asemeje a la sucesión de letras.Mediante instrucciones en ensamblador, escribe la información de la matriz en la

memoria intermedia ("buffer") de pantalla.Mediante la instrucción adecuada, haz que la tarjeta gráfica realice el volcado de esa

información sobre la pantalla.

Por medio de un sistema operativo para hacer parte del trabajo:Carga una fuente tipográfica proporcionada por el sistema operativo.

Haz que el sistema operativo borre la pantalla.

Haz que el sistema operativo dibuje el texto "Hola Mundo" usando la fuente cargada.Usando una aplicación (que a su vez usa el sistema operativo) para realizar la mayor

parte del trabajo:Escribe un documento HTML con las palabras "Hola Mundo" para que un navegador

Web como Firefox, Chrome, Opera, Safari, Midori, Iceweasel, Web o Internet Explorer pueda representarlo en el monitor.

Paquete

O Un paquete es un nombre identificador (namespace) que

organiza un conjunto de clases e interfaces relacionadas.

Conceptualmente puede pensar en un paquete como

algo similar a las diversas carpetas en su computadora

Evento

O La programación dirigida por eventos es

un paradigma de programación en el que tanto la

estructura como la ejecución de los programas van

determinados por los sucesos que ocurran en el

sistema, definidos por el usuario o que ellos mismos

provoquen.

Cohesión es “Es la medida de cuanto una

entidad (componente o clase) se encuentraespecializada en propósito único dentro de unsistema”.

Cohesión

El ocultamiento de la información es el proceso

de ocultarlos detalles de implementación delcliente al servicio.

Ocultamiento de información

(encapsulación)

La abstracción es “el proceso de enfocarse

en las características principales de unobjeto”.

Abstracción

“Es el grado en el cual las clases dentro de un

sistema dependen unas de otras”.

Acoplamiento

Polimorfismo es “teniendo, asumiendo, ó

ocurriendo en varias formas, caracteres, óestilos”.

Polimorfismo es “ un concepto de tipoteórico, de acuerdo con el cual un nombre(nombre de una declaración de variable) puededenotar objetos de muchos tipos de clasesdiferentes que están relacionados por unasuperclase en común[tipo].”

Polimorfismo

Ejemplo

Ejemplo:

La modularidad es la capacidad que tiene un sistema de ser

estudiado, visto o entendido como la unión de variaspartes que interactúan entre sí y que trabajan para alcanzarun objetivo común, realizando cada una de ellas una tareanecesaria para la consecución de dicho objetivo.

Modularidad

La herencia es “un mecanismo en el cual

una clase es definida en términos de unaclase existente, y se le agregancaracterísticas propias”.

Herencia

Un paradigma de programación es una propuesta tecnológica

que es adoptada por una comunidad de programadores cuyonúcleo central es incuestionable en cuanto a que únicamentetrata de resolver uno o varios problemas claramentedelimitados. Es un estilo de programación empleado. Laresolución de estos problemas debe suponer consecuentementeun avance significativo en al menos un parámetro que afecte ala ingeniería de software.

Tipos de paradigmas de programación más comunes:

Imperativo o por procedimientos: es considerado el máscomún y está representado, por ejemplo, por C, BASIC o Pascal

Funcional: está representado por Scheme o Haskell. Este es uncaso del paradigma declarativo.

Paradigma

Un objeto de una clase se crea llamando a una función

especial denominada constructor de la clase. El constructor se llama de forma automática cuando se crea un objeto, para situarlo en memoria e inicializar los miembros dato declarados en la clase. El constructor tiene el mismo nombre que la clase. Lo específico del constructor es que no tiene tipo de retorno.

Constructor

UML es un lenguaje para hacer modelos y es

independiente de los métodos de análisis y diseño.Existen diferencias importantes entre un método yun lenguaje de modelado. Un método es una maneraexplícita de estructurar el pensamiento y las accionesde cada individuo.

Además, el método le dice al usuario quéhacer, cómo hacerlo, cuándo hacerlo y por quéhacerlo; mientras que el lenguaje de modelado carecede estas instrucciones.

UML

Un modelo es expresado en un lenguaje de modelado.Un lenguaje de modelado consiste devistas, diagramas, elementos de modelo ¾ lossímbolos utilizados en los modelos ¾ y un conjuntode mecanismos generales o reglas que indican cómoutilizar los elementos. Las reglas sonsintácticas, semánticas y pragmáticas (figura 1).

Mejores tiempos totales de desarrollo (de 50 % o más).

Modelar sistemas (y no sólo de software) utilizando conceptosorientados a objetos.

Establecer conceptos y artefactos ejecutables.

Encaminar el desarrollo del escalamiento en sistemas complejos demisión crítica.

Crear un lenguaje de modelado utilizado tanto por humanos comopor máquinas.

Mejor soporte a la planeación y al control de proyectos. Alta reutilización y minimización de costos.

Los principales beneficios de

UML son:

UML: Diagrama de clases

Una clase que contiene uno o más métodos

abstractos, y por tanto no puede ser instanciada(no podemos crear objetos a partir de una claseabstracta).

Clases abstractas

Una asociación de objetos es“ una relación que

denota una conexión semántica entre dos clases”.

Asociaciones de objetos

Conclusión

En este tema de POO ( programación orientada aobjetos), descubrimos los conceptos mas importantes, asícomo la descripción de los mismos, así como lascaracterísticas mas importantes del POO.

Así como algunos ejemplos explicativos en los cuales nospudimos percatar mas o menos de lo que es lo basico dela programación orientada a objetos, que como pudimosver, también tiene sus patrones, y por ello tenemos queaprender a manejar estos conceptos, para poder manejarel lenguaje.

Con esto concluimos este tema.

Bibliografía

https://www.google.com.mx/search?q=asociacion+de+objetos+imagenes+en+programacion&hl=es-419&tbm=isch&tbo=u&source=univ&sa=X&ei=U2keU-DhF4bhqQG3soDABQ&ved=0CE8QsAQ&biw=1366&bih=666#facrc=_&imgdii=_&imgrc=xHXQeS2wJD8cgM%253A%3B9Q0NFDRNHhLTRM%3Bhttp%253A%252F%252Fwww.javahispano.org%252Fstorage%252Fcursodejava%252Fcorrespondencia.jpg%253F__SQUARESPACE_CACHEVERSION%253D1330001236587%3Bhttp%253A%252F%252Fwww.javahispano.org%252Fportada%252F2011%252F7%252F5%252Fcurso-de-programacion-java-iii-abraham-otero.html%3B2332%3B1648

google.com.mx/webhp?hl=es-419&tab=ii&ei=X00eU42bJselyAG6pIHYCg&ved=0CA4Q1S4#hl=es-419&q=asociacion+de+objetos+imagenes+en+programacion

https://www.google.com.mx/webhp?hl=es-419&tab=ii&ei=X00eU42bJselyAG6pIHYCg&ved=0CA4Q1S4#hl=es-419&q=miembro+en+programacion+orientada+a+objetos

www.google.com

www.wikipedia.com

www.wikilibros.com

www.shilishared.com