Está en la página 1de 8

ESCUELA SUPERIOR DE INGENIERIA MECANICA Y

ELECTRICA

PROGRAMACIÓN ORIENTADA A OBJETOS

4CV2

INGENIERIA EN COMUNICACIONES Y ELECTRONICA

R.r

CONCEPTOS FUNDAMENTALES DE LA PROGRAMACIÓN


ORIENTADA A OBJETOS
DESARROLLO

Los lenguajes de programación tradicionales no orientados a objetos,


como C, Pascal, BASIC, o Modula-2, basan su funcionamiento en el
concepto de procedimiento o función. Una función es simplemente un
conjunto de instrucciones que operan sobre unos argumentos y
producen un resultado. De este modo, un programa no es más que
una sucesión de llamadas a funciones, ya sean éstas del sistema
operativo, proporcionadas por el propio lenguaje, o desarrolladas por
el mismo usuario.

CLASES, OBJETOS E INSTANCIAS.

En el caso de los lenguajes orientados a objetos, como es el caso de


C++ y Java, el elemento básico no es la función, sino un ente
denominado precisamente objeto. Un objeto no es más que un
conjunto de variables (o datos) y métodos (o funciones) relacionados
entre sí. Los objetos en programación se usan para modelar objetos o
entidades del mundo real (el objeto hijo, madre, o farmacéutica, por
ejemplo). Un objeto es, por tanto, la representación en un programa de
un concepto, y contiene toda la información necesaria para abstraerlo.

Las clases, son declaraciones o abstracciones de objetos. Una clase


es un contenedor de uno o más datos (variables o propiedades
miembro) junto a las operaciones de manipulación de dichos datos
(funciones/métodos). En POO los objetos son miembros de clases. En
esencia, una clase es un tipo de datos al igual que cualquier otro tipo
de dato definido en un lenguaje de programación. La diferencia reside
en que la clase es un tipo de dato que contiene datos y funciones.
Una clase es, por consiguiente, una descripción de un número de
objetos similares. En C una clase es una estructura de dato o tipo de
dato que contiene funciones (métodos) como miembros y datos. Una
clase es una descripción general de un conjunto de objetos similares.
Por definición todos los objetos de una clase comparten los mismos
atributos (datos) y las mismas operaciones (métodos). Una clase por sí
sola no sirve de nada, pues no es más que un concepto, sin entidad
real. Para poder utilizar una clase en un programa, lo que hay que
hacer es instanciarla. Instanciar una clase consiste en crear un nuevo
objeto concreto de la misma. Es decir, un objeto es ya una entidad
concreta que se crea a partir de la plantilla que es la clase. Este nuevo
objeto tiene ya "existencia" real, puesto que ocupa memoria y se
puede utilizar en el programa. Así un objeto puede ser una persona
que se llama Cristina López, de 37 años y que en nuestro programa
podría hablar, caminar o comer, que son los comportamientos que
están definidos en la clase.

MENSAJES ENTRE OBJETOS

Aunque los objetos se han de diferenciar claramente en una


aplicación, estos se han de poder comunicar para poder trabajar en
conjunto y construir así aplicaciones.

Esto se hace posible a través de lo que se denomina paso de


mensajes. Cuando un objeto quiere comunicarse con otro lo que hace
es enviarle un mensaje con los datos que desea transmitir. La potencia
de este sistema radica en que el objeto emisor no necesita saber la
forma en que el objeto receptor va a realizar la acción. Simplemente
este la ejecuta y el emisor se desentiende del cómo; de hecho, ni le
importa, solo tiene conocimiento de que se está realizando.

Para que todo esto sea posible es necesario conocer tres partes del
mensaje (objeto destinatario, método y parámetros) son suficiente

información para que el objeto que recibe el mensaje ejecute el


método o la función miembro solicitada. Los mensajes proporcionan
dos ventajas importantes:

El comportamiento de un objeto está completamente determinado (a


excepción del acceso directo a variables miembro públicas) por sus
métodos, así que los mensajes representan todas las posibles
interacciones que pueden realizarse entre objetos.

Los objetos no necesitan formar parte del mismo proceso, ni siquiera


residir en un mismo ordenador para mandarse mensajes entre ellos (y
de esta forma interactuar).

LOS CUATRO PILARES DE LA POO

Para poder manejar de manera eficiente las clases y los objetos que
se generan con la Programación Orientada a Objetos son necesarios
algunos principios que ayudarán a reducir la complejidad, ser más
eficientes y evitar problemas. Son los 4 pilares de la POO, utilizado por
todos los lenguajes orientados a objetos.

1.- Encapsulación

La encapsulación es la característica de un lenguaje POO que permite


que todo lo referente a un objeto quede aislado dentro de éste. Es
decir, que todos los datos referentes a un objeto queden "encerrados"
dentro de éste y sólo se puede acceder a ellos a través de los
miembros que la clase proporcione (propiedades y métodos).

2.- Abstracción

Este concepto está muy relacionado con el anterior.


El principio de abstracción lo que implica es que la clase debe
representar las características de la entidad hacia el mundo exterior,
pero ocultando la complejidad que llevan aparejada. O sea, nos
abstrae de la complejidad que haya dentro dándonos una serie de
atributos y comportamientos (propiedades y funciones) que podemos
usar sin preocuparnos de qué pasa por dentro cuando lo hagamos.

Así, una clase (y por lo tanto todos los objetos que se crean a partir de
ella) debe exponer para su uso solo lo que sea necesario. Cómo se
haga "por dentro" es irrelevante para los programas que hagan uso de
los objetos de esa clase.

3.- Herencia

Una vez que hemos visto el concepto de clase y el de objeto, estamos


en condiciones de introducir otra de las características básicas de la
programación orientada a objetos: el uso de la herencia.

El mecanismo de herencia permite definir nuevas clases partiendo de


otras ya existentes. Dado que una clase es un patrón que define cómo
es y cómo se comporta una cierta entidad, una clase que hereda de
otra obtiene todos los rasgos de la primera y añade otros nuevos y
además también puede modificar algunos de los que ha heredado.
A la clase de la que se hereda se le llama clase base, y a la clase que
hereda de ésta se le llama clase derivada. Las clases que derivan de
otras heredan automáticamente todo su comportamiento.

4.- Polimorfismo

La propiedad de polimorfismo es aquella en que una operación tiene el


mismo nombre en diferentes clases, pero se ejecuta de diferentes
formas en cada clase. Es una característica de la programación
orientada a objetos, que significa que un mismo método puede tener
diferentes maneras de realizarse.
RESUMEN
La POO es un paradigma surgido en los años 1970, que utiliza objetos
como elementos fundamentales en la construcción de la solución. Un
objeto es algo utilizado de algún hecho o cosa del mundo real, con
atributos que representan sus características o propiedades, y
métodos que emulan su comportamiento o actividad. Todas las
propiedades y métodos comunes a los objetos se guardan o agrupan
en clases. Como podemos entender desde el principio una idea
fundamental de la creación de lenguajes de programación de alto nivel
fue la forma en la cual podría ser algo más sencillo de utilizar para las
distintas herramientas existentes donde se aplica, con la creación de
C++ se logró mantener las ideas originales de lenguajes anteriores
(lenguaje ensamblador).

Aprendemos las diferencias que tiene un objeto con una clase, siendo
esto de gran utilidad, ya que algunos errores comunes es dejar pasar
desapercibida esta diferencia y cuando compilamos el programa y si
nos arroja algunos errores no somos capaces de saber en dónde se
encuentra, modificando cualquier parte del código y algunas veces
resulta en mas errores siendo esto para nosotros perjudicial. Pero el
saber las diferencias y entendiendo de forma clara estos conceptos, a
la hora de tener algún error seres capaces de identificar de forma
correcta y sencilla donde se encuentra, dando una solución eficaz.

Además de ser conceptos fundamentales para cualquier programador,


teniendo en cuenta como una importante base para poder programar.
BIBLIOGRAFIA
- López, J., & Ángel, G. (2014). Programación orientada a objetos
con C++ y Java (1.a ed.). Grupo Editorial Patria.

- J. (2019, 13 noviembre). Los conceptos fundamentales sobre


Programación Orientada Objetos explicados de manera simple.
campusMVP.es. https://www.campusmvp.es/recursos/post/los-
conceptos-fundamentales-sobre-programacion-orientada-
objetos-explicados-de-manera-simple.aspx

- Conceptos fundamentales de la Programación Orientada a


Objetos. (s. f.). MarcoTeorico.com. Recuperado 26 de febrero de
2021, de https://www.marcoteorico.com/curso/51/fundamentos-
de-programacion/390/conceptos-fundamentales-de-la-
programacion-orientada-a-objetos

También podría gustarte