Programación+OrientadaaObjetos - UNID · 2014-05-11 · hacer lo que solicite, ofreciendo al...

13
Programación Orientada a Objetos

Transcript of Programación+OrientadaaObjetos - UNID · 2014-05-11 · hacer lo que solicite, ofreciendo al...

Programación  Orientada  a  Objetos

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

1

Sesión No. 3 Nombre: Conceptos de lenguaje orientado a objetos Contextualización

Como se ha mencionado en las sesiones anteriores, los lenguajes de

programación orientados a objetos son importantes, ya que con éstos se pueden

definir varias formas de trabajo y determinar nuevas maneras de solucionar

problemas dentro del uso de los dispositivos de nueva generación.

Es importante conocer los elementos que participan dentro de la programación y

la manera en que pueden desarrollarse, se requiere de tener siempre presente

cualquier concepto importante que ayude a mejorar la idea de lo que se realiza,

no debemos dejar a un lado los elementos que conforman a este tipo de

comunicación con las máquinas, pues dependiendo de los sistemas que se

tienen, manejan y controlan, se tomará en cuenta, desde la más pequeña línea

de código, hasta la menos utilizada por los usuarios o desarrolladores.

Cada lenguaje orientado a objetos tiene sus ventajas y desventajas, siempre nos

podrán ayudar a tener un mejor desarrollo de los sistemas con que trabajamos,

pero siempre también debemos contemplar los elementos de importancia en

este tipo de lenguajes, ya que no todos son iguales.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

2

Introducción al Tema

Los lenguajes de programación sin importar el tipo, utilizan elementos de primera

instancia que ayudan a mantener siempre en orden los datos y ponerlos a

disposición de los usuarios para su uso o instalación.

El encapsulamiento de la información es el elemento que ayuda a tener

disponibles las líneas de códigos, permitiendo también una protección de los

elementos externos al mismo sistema que se ha desarrollado y será aplicado

como un software.

El encapsulamiento de los sistemas o líneas de código es un proceso importante,

ya que con éste se puede transportar o distribuir la aplicación de la que se habla,

si no se realiza un correcto encapsulado de la información puede que las

aplicaciones no puedan ser instaladas o presenten fallas en la información

marcando errores en sectores del disco duro donde no se considera ningún

elemento instalado.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

3

Explicación

Conceptos de lenguaje orientado a objetos

• Los leguajes de programación orientados a objetos son utilizados como

intermediarios entre los usuarios y las computadoras, con la finalidad de

lograr que las máquinas cumplan con las peticiones que los individuos

realizan y satisfacer una necesidad, ya sea de trabajo, entretenimiento o

cualquier otra; algunos de los elementos que se toman en cuenta para la

realización de un programa orientado a objetos son: atributos,

comportamientos, clases, tipos de datos, constructores, objetos, etc.

Cada uno de los elementos con sus atributos y características únicas las

cuales los definen como únicos.

• La programación orientada a objetos se basa en un modelo de la vida real,

el cual toma en cuenta elementos con los cuales funciona y a los que

determina instrucciones de ejecución. Por ejemplo si se toma la vida real

para explicarlo, podría hablarse de una silla, esta silla en su programación

consta de elementos únicos y previamente determinados, como el

respaldo, el asiento, las pata, etc. ésta debe cumplir con un objetivo por el

cual se construyó. La programación orientada a objetos construye

elementos y les define tareas específicas que deben ser cumplidas y

administradas por el mismo código que se ha dictado.

Clase, Objeto e identidad

¿Qué es una clase?

Una clase es un conjunto de objetos y operaciones comunes. Éstas representan

a un tipo particular de objetos, los cuales cuentan con características de

comportamiento similar.

Cada clase tiene un código asociado, el cual determina;

• Los atributos que tienen los objetivos de la clase.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

4

• Los métodos que pueden ejecutar los objetos de la clase y cómo lo hacen.

Dependiendo del lenguaje de programación en que se apliquen las clases,

podremos encontrar las diferencias que definen a cada lenguaje y el potencial

que se ofrece con los mismos lenguajes de programación.

El uso de las clases permite el uso y creación de múltiples objetos, los cuales

pueden tener valor propios asignados a los atributos, esto se conoce como

estado del objeto.

Los componentes o elementos de una clase son los siguientes:

• Atributos: determina una estructura de almacenamiento para cada objeto

de la clase.

• Métodos: son operaciones aplicables a los objetos.

o Son el único modo de acceder a los atributos.

¿Qué es un objeto?

Los objetos dentro de los lenguajes de programación representan cosas, pueden

ser simples o complejos y ser utilizados como elementos realidad o imaginarios,

es decir ser tomados de la realidad o la abstracción de un individuo.

Los objetos pueden entenderse como un componente o código de software, el

cual contiene en sí mismo características tales como el comportamiento por el

cual se accede a través de su interfaz o signatura. Los objetos cuentan con

varios elementos importantes que lo definen como tal, estos son:

• Estado.

• Comportamiento.

• Identidad.

La estructura y el comportamiento de objetos similares se definen en sus clases

comunes. El estado puede abarcar todas las propiedades del objeto y sus

valores actuales de cada propiedad.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

5

• Los objetos ocupan un espacio en el mundo físico o en la memoria del

ordenador.

• El estado de un objeto está influido por la historia del objeto.

• Los objetos que existen en el tiempo son mutables, tienen estado, pueden

ser creados, destruidos y compartidos.

• El estado de un objeto representa el efecto acumulado de su

comportamiento.

Las relaciones que pueden existir entre los objetos abarcan operaciones,

resultados y suposiciones que se hacen sobre los otros.

¿Qué es identidad?

Dentro de los ambientes de programación podemos contar con elementos

importantes, los cuales definen funciones y formas de estructurar un sistema de

codificación. Podemos comprender la identidad, como:

• La identidad caracteriza a un objeto y su propia existencia.

• Permite distinguir objetos de forma no ambigua.

• Es un concepto abstracto sobre el objeto.

• Es una propiedad de un objeto que lo diferencia del resto.

• Su comportamiento está definido por los métodos o mensajes a los que

responde dicho objeto.

• Su estado está compuesto de datos, cuenta con uno o varios atributos.

La identidad permite al programador o desarrollador diferenciar un elemento de

los demás, puede ser mediante la aplicación de metadatos, comentarios en las

líneas del código o cualquier otra manera que permita la identificación de los

elementos.

Encapsulamiento

El encapsulamiento se refiere a la capacidad de agrupar, condensar o

concentrar en un entorno con límites bien definidos distintos elementos. La

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

6

encapsulación sin importar de qué elemento se trate siempre se realiza de

manera abstracta. La encapsulación también es conocida como ocultamiento.

Ésta se encarga de mantener ocultos los procesos internos necesarios para

hacer lo que solicite, ofreciendo al programador sólo lo requerido.

Dicho de otra forma, el encapsulamiento significa reunir todos los elementos que

pueden considerarse pertenecientes a una misma entidad al mismo nivel de

abstracción. De esta forma se permite aumentar la cohesión de los componentes

del sistema.

El encapsulamiento de variables y métodos en un componente de cualquier

programa tiene grandes beneficios para los desarrolladores de software. El

encapsulamiento trata de unir en la clase las características y comportamientos,

variables o métodos, esto no es posible dentro de los lenguajes estructurados. El

encapsulamiento se logra gracias a la abstracción y el ocultamiento.

Debido al encapsulamiento, las clases se dividen en dos;

• Interface: captura la visión externa de la clase, toma en cuenta la

abstracción del comportamiento común.

• Implementación: maneja la representación de la abstracción al igual que

los procesos que conducen al comportamiento deseado.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

7

Conclusión

Los lenguajes de programación orientados a objetos son muy importantes y

presentan características relevantes que debemos comprender, tales como el

encapsulamiento. Este proceso es muy utilizado, ya que ayuda a definir de mejor

manera la protección que se tiene en un sistema o en la distribución de una

aplicación por cualquier vía.

El encapsulamiento no sólo se da en los lenguajes de programación, podemos

realizar este proceso sobre otros elementos, tales como animaciones,

presentaciones, videos o cualquier otro elemento o conjunto de elementos, pues

el encapsulamiento reúne todos los datos en un solo archivo, el cual puede ser

ejecutado o compilado con una aplicación externa, tal es el uso de los plug-ings

y en algunos casos las máquinas virtuales, cuya función en estos elementos es

la de traducir la información, separándola y estructurándola en un orden

determinado con el que cumplirá el objetivo con el cual se diseñó.

Todos los elementos digitales, cuentan con cierto tipo de encapsulado el cual

sólo es traducido, ya que todos los elementos digitales son construidos por

códigos de información, coordenadas, instrucciones de ejecución o cualquier

otro elemento útil para la creación y desarrollo de datos.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

8

Para aprender más

Clase, Objeto e identidad

Clase

Dentro de la programación con clases, podemos encontrar atributos que

diferencian un elemento de otro, sin embargo cuando esto no se hace bien

puede tener contradicciones en las líneas de código obstaculizando el trabajo y

alterando los resultados finales que se buscan. Dentro de las principales

características que encontramos en estos elementos contamos con;

• Public: es el identificador o atributo que indica al elemento que puede ser

visto o de acceso público.

• Private: es el identificador o atributo que indica al elemento que no puede

ser visto o de acceso público, se define como un elemento privado al que

sólo se puede acceder con autorización o privilegios de administrador o

programador.

Objeto

Éste se conoce como una instancia de clase, se crea en tiempo de ejecución,

también comprendida como una estructura de datos formada por campos y

atributos de la clase. Los objetos se pueden manejar por estado, los cuales son

dados por el valor de los campos y sus métodos permiten la consulta y

modificación del mismo. En la categoría de los objetos nos encontramos con

varios tipos de éstos, los cuales pueden ser;

• Objetos externos: son procedentes de la aplicación, pueden ser;

o Carpeta.

o Buzón.

o Mensaje.

o Etc.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

9

• Objetos software: éstos pueden ser obtenidos de diferentes elementos,

como;

o Procedentes del análisis: son todos los elementos externos.

o Procedentes del diseño/implementación: pueden ser tomados

de elementos como árbol binario, lista enlazada, ventada, etc.

Encapsulamiento El encapsulamiento es un proceso importante que ayuda a definir medios de

seguridad en los parámetros de una aplicación, algunas de las formas de

encapsular la información son;

• Estándar: es el medio predeterminado.

• Abierto: éste puede ser accedido desde fuera de la clase y cualquier

parte del programa.

• Protegido: es accesible sólo desde la clase y clases que heredan.

• Semicerrado: se accede desde la clase heredada.

• Cerrado: sólo es accesible desde la clase.

Con el encapsulamiento se definen varios niveles de acceso para elementos de

clase, estos niveles deciden los derechos para acceder a los datos, permitiendo

el ingreso por medio de funciones desde una clase heredada o también desde

cualquier otra clase, por lo que se definen tres niveles;

• Público: son métodos de toda clase con lo que se puede acceder a los

datos de una clase que se define con el nivel de acceso público.

• Protegido: no permite el acceso a los datos a las funciones de clase en

particular.

• Privado: el acceso a los datos está prohibido a los métodos de esa clase

en particular.

La encapsulación es conveniente y permite colocar en funcionamiento nuestros

objetos en cualquier tipo de sistema, haciéndolo de manera modular y escalable.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

10

Actividad de Aprendizaje

Instrucciones

Con la finalidad de reforzar los conocimientos adquiridos a lo largo de esta

sesión, ahora tendrás que realizar una actividad en la cual a través de un mapa

sinóptico indiques los elementos principales de encapsulamiento y objeto,

puedes indicar algún ejemplo si lo deseas.

Puedes realizarlo en cualquier programa, al final tendrás que guardarlo como un

documento de texto, con la finalidad de subirlo a la plataforma de la asignatura.

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

11

Bibliografía

• Álvarez H. (1997). Clases y objetos. Consultado en:

http://fpsalmon.usc.es/genp/doc/cursos/poo/clases.html#OBJ

• guadalinfo. (2011) Conceptos básicos de la programación orientada a

objetos. Consultado en:

http://www.edukanda.es/mediatecaweb/data/zip/1305/page_10.htm

• Moros B. (2009). Programación orientada a objetos. Consultado en:

http://dis.um.es/~bmoros/privado/apuntes/Curso09-10/POO2-Java-

0910.pdf

• Pavón J. (2007) Fundamentos de la programación orientada a objetos.

Consultado en:

http://www.fdi.ucm.es/profesor/jpavon/poo/1.1.Objetos%20y%20Clases.pd

f

• s/a. (s.f.) Concepto básico de la programación orientada a objetos.

Consultado en:

http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/clases.

htm

• s/a. (s.f.) Encapsulamiento. Consultado en:

http://algonzalezpoo.wordpress.com/encapsulamiento/

• S/a (2010). Programación orientada a objetos. Consultado en:

http://davidjguru.com/2010/03/24/programacion-orientada-a-objetos-poo-i-

introduccion/

PROGRAMACIÓN  ORIENTADA  A  OBJETOS

12

• S/a (2013). Programación orientada a objetos. Consultado en:

http://www.scenebeta.com/tutorial/programacion-orientada-objetos-poo

• Suárez C. (2010). Características POO, encapsulamiento. Consultado en:

http://carmensrz.blogspot.mx/2010/11/caracteristica-poo-

encapsulamiento.htm