Programación Orientada a Objetos (POO)

28 02 2013
Mapa Conceptual POO

Esquema: Programación Orientada a Objetos.

La Programación Orientada a Objetos (POO) es una forma de programar que busca simplificar y mejorar la estructura de una aplicación. Este estilo de escribir programas se constituye por los conceptos de clase, objeto, mensaje, método, atributo y herencia. Además debe cumplir con las características de abstracción, encapsulamiento, modularidad, principio de ocultación, polimorfismo, herencia y recolección de basura.

Algunas de las ventajas de este paradigma de programación son la eficiencia, modularidad, portabilidad, integridad, escalabilidad, reutilización y la compatibilidad, entre otros.

Clases y objetos

En un concepto amplio, un objeto es cualquier cosa, tanto tangible como intangible, que se pueda imaginar. Una aplicación desarrollada en un estilo orientado a objetos consistirá en objetos que interactúan entre sí.

Objeto-UML

Representación Gráfica de Un Objeto con UML.

Un objeto contiene datos y operaciones que manipulan esos datos. Por ejemplo, un objeto Estudiante puede consistir en datos como nombre, dirección, número de teléfono, así como de operaciones para asignar o cambiar esos valores de datos.

En un programa se escriben instrucciones para crear objetos, y con el fin de que una computadora pueda crear un objeto, se debe dar una definición, a esta definición le llamamos clase.

Una clase es un tipo de platilla de objetos, donde se dicta lo que un objeto puede o no hacer. A cada objeto contenido en una clase se le denomine instancia de clase.

Clase UML

Representación Gráfica de Una Clase con UML.

Para escribir un programa orientado a objetos, primero se deben definir las clases y cuando el programa se ejecuta, se usan esas clases y objetos para cumplir las tareas para lo que la aplicación ha sido creada.

Mensajes y métodos

Para ordenar a una clase u objeto que lleve a cabo una tarea, se le envía un mensaje, que debe ser programado en forma adecuada. Para que la clase u objeto procese el mensaje debe poseer un método compatible, que es una secuencia de instrucciones que una clase u objeto siguen para realizar una tarea específica y que puede contener o no valores, a los que nombramos argumentos.

Un método definido para una clase se le denomina método de clase y un método definido para un objeto se le denomina método de instancia, recordemos que un objeto es una instancia de clase.

En un método de instancia es posible pasar un valor a un objeto, dicho valor contenido en el método se denomina argumento.

Valores de datos (atributos)

Se clasifican en valores de datos de instancia, el cual se refiere a los valores de datos correspondientes a los objetos, y valores de datos de clase, que hace referencia a los valores de datos que son compartidos por todas las instancias de la clase.

Conjuntamente existen dos tipos de valores de datos: los que pueden cambiar con el tiempo (variable) y los que no cambian (constante).

objeto clase

Representación de un objeto cuenta1 de la clase Cuenta y sus atributos.

Herencia

En la programación orientada a objetos se usa un mecanismo llamado herencia, para diseñar dos o más entidades que son diferentes pero comparten muchas características. Esto se hace definiendo primero una clase que contenga las características comunes de las entidades (superclase) para después definir otras clases como una extensión de la clase común que heredan todas las características de la clase común (subclases).

La herencia no se limita a un nivel. Una subclase puede ser la superclase de otras clases, formando una jerarquía de herencia.

herencia uml

Una superclase Cuenta y sus subclases Ahorros y Cheques.

Referencia

Wu, C. T. (2008). Programación en Java. México: McGraw-Hill Interamericana.

Aún me hace falta detallar las características y ventajas de la Programación Orientada a Objetos…. mientras espero que esto les sirva 🙂





Diagrama de Casos de Uso Utilizando Visual Paradigm

27 08 2011

Diagrama de Casos de Uso.





Herramientas CASE

27 08 2011

Investigación acerca de las herramientas CASE.

Herramientas_Case





Descripción detallada de los casos de uso (ProyectoADSI)

5 08 2011

Aquí esta nuestro avance en el proyecto que estamos desarrollando en la clase de Análisis y Diseño de Sistemas Informáticos.

PROYECTO_ESCOLAR_ADSI2





Diagrama de Casos de Uso

29 07 2011

Nuestro diagrama de casos de uso. Proyecto ADSI





Captura de Requisitos (ADSI)

29 07 2011

INVESTIGACION_PRELIMINAR

CAPTURA DE REQUISITOS

Modelo de Dominio.





El proceso unificado de desarrollo de software (UML)

17 07 2011

Resumen de las cuatro primeros temas del documento El Proceso Unificado de Desarrollo de Software de A.U.S. Gustavo Torossi.

Proceso Unificado de Desarrollo de Software





Imágenes de la arquitectura de un sistema

9 07 2011
[shaoran] {angelmpe}

Arquitectura del sistema estándar de Identity Manager

Arquitectura del sistema estándar de Identity Manager

Arquitectura del sistema estándar de Identity Manager.

Arquitectura de SIGAVL

Arquitectura de un sistema de rastreo satelital.