Programación Orientada a Objetos

Anuncio
Programación Orientada a Objetos
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
1
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
2
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
3
PROGRAMACIÓN ORIENTADA A OBJETOS
•
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.
4
PROGRAMACIÓN ORIENTADA A OBJETOS
•
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
5
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
6
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
7
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
8
PROGRAMACIÓN ORIENTADA A OBJETOS
•
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.
9
PROGRAMACIÓN ORIENTADA A OBJETOS
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.
10
PROGRAMACIÓN ORIENTADA A OBJETOS
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-Java0910.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-iintroduccion/
11
PROGRAMACIÓN ORIENTADA A OBJETOS
•
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-pooencapsulamiento.htm
12
Descargar