0% encontró este documento útil (0 votos)
25 vistas11 páginas

Programacion Objetos

La programación orientada a objetos es un modelo de programación centrado en los objetos, sus atributos y comportamientos. Algunos de los lenguajes más populares de POO son C++, Java, Python y PHP. La POO ofrece ventajas como la reutilización de código, mayor flexibilidad y modularidad.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas11 páginas

Programacion Objetos

La programación orientada a objetos es un modelo de programación centrado en los objetos, sus atributos y comportamientos. Algunos de los lenguajes más populares de POO son C++, Java, Python y PHP. La POO ofrece ventajas como la reutilización de código, mayor flexibilidad y modularidad.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 11

programacion

orientada a
objetos
¿Qué es la Programación Orientada a Objetos?
La programación orientada a objetos es un modelo de
programación en el que el diseño de software se organiza
alrededor de datos u objetos, en vez de usar funciones y
lógica. Se enfoca en los objetos que los programadores
necesitan manipular, en lugar de centrarse en la lógica
necesaria para esa manipulación. Un objeto se puede definir
como un campo de datos con atributos y comportamientos
únicos.
Por tanto, la principal característica de este tipo de
programación es que soporta objetos, que tienen un tipo o
clase asociado. Esas clases pueden heredar atributos de una
clase superior o superclase. Por esa razón, este enfoque de
programación se utiliza en programas grandes y complejos
que se deben actualizar con cierta regularidad.
¿Cuáles son los
principales lenguajes
de programación
orientada a objetos?
En la actualidad existen diferentes lenguajes de
programación orientada a objetos, como C++,
Objective C, Java, Ruby, Visual Basic, Visual C
Sharp, Simula, Perl, TypeScript, Smalltalk, PHP o
Python. C++ y Java son los dos lenguajes de
programación orientada a objetos más usados,
por lo que, si quieres aprender este tipo de
programación para ampliar tus oportunidades
en el mercado laboral, es conveniente que
pases un curso en Java o C++.
Por otra parte, Python, PHP y Ruby son otros lenguajes de
programación orientada a objetos muy populares, aunque
más enfocados en la programación, desarrollo web y de
aplicaciones para móviles. Por consiguiente, un curso en
Python online o en PHP también te abrirá muchas
puertas.
Por supuesto, existen otros lenguajes de programación
orientada a objetos de carácter más específico, como es el
caso de ADA, que tiene un enfoque en la seguridad y está
basado en un tipado muy fuerte, por lo que se usa para
desarrollar aplicaciones de defensa, gestión de tráfico
aéreo y en la industria aeroespacial.
Ventajas de la programación
orientada a objetos
Reutilización del código heredado. Cuando se diseñan
correctamente las clases, se pueden usar en distintas
partes del programa y en diferentes proyectos. La técnica
de herencia ahorra tiempo porque permite crear una clase
genérica y luego definir las subclases que heredarán los
rasgos de la misma, de manera que no es necesario escribir
esas funciones de nuevo. Además, al aplicar un cambio en la
clase, todas las subclases lo adoptarán automáticamente.
Mayor modificabilidad. Otra de las ventajas de la
programación orientada a objetos es que permite añadir,
modificar o eliminar nuevos objetos o funciones fácilmente
para actualizar los programas, lo cual implica un ahorro de
tiempo y esfuerzo para los programadores.
Facilidad para detectar errores en el código. En los lenguajes de
programación orientada a objetos no es necesario revisar línea por línea del
código para detectar un error. Gracias a la encapsulación los objetos son
autónomos, de manera que es más fácil abstraer un problema y saber dónde
buscar el error cuando algo no funciona bien.
Modularidad. Una de las características de la programación orientada a
objetos más interesantes es la modularidad ya que así un equipo puede
trabajar en múltiples objetos a la vez mientras se minimizan las
posibilidades de que un programador duplique la funcionalidad de otro. El
trabajo modular también permite dividir los problemas en partes más
pequeñas que se pueden probar de manera independiente.
Flexibilidad gracias al polimorfismo. El polimorfismo de la programación
orientada a objetos permite que una sola función pueda cambiar de forma
para adaptarse a cualquier clase donde se encuentre. De esta forma se
ahorra tiempo de programación y se gana en versatilidad.
En los lenguajes de programación orientada a
objetos también es habitual crear librerías y
compartirlas o reutilizar librerías de otros
proyectos, lo cual ahorra horas de desarrollo, algo
particularmente importante en grandes proyectos
ya que conduce a una reducción de costes.
Si te interesa todo lo relacionado con la
programación, echa un vistazo además a nuestro
curso SQL Server, el lenguaje por antonomasia
para la operación con bases de datos relacionales.
Pilares de la POO
1. Abstracción
De este término ya unos párrafos más arriba. ¿Te acuerdas?
cuando queríamos crear un usuario. El proceso de abstracción
es pensar que atributos y qué métodos iba a tener.
Cuando creamos un sistema, tenemos que hacer una
abstracción para todas las clases. Por ejemplo, en EDteam,
serían los cursos, las clases, las suscripciones, las
publicaciones en la comunidad. Cada uno de estos elementos
sería una clase, y tenemos que hacer ese proceso mental: qué
atributos y qué métodos van a tener cada uno. Esos conceptos
hay que llevarlos y convertirlos en clases.
2. Encapsulamiento
Como ya hemos visto, los objetos se comunican entre
ellos. Esto podría traer problemas de seguridad si un
objeto puede modificar los datos de cualquier otro. Por
eso, se necesita proteger la información de
manipulaciones no autorizadas. De esta manera, cuando
se comunican los objetos, hay caminos que se pueden
seguir y hay caminos que no, datos protegidos, datos
privados o públicos, métodos para acceder a cierta
información, entre otros. Así se mantiene organizado el
sistema.
3. Polimorfismo
Volvamos a recordar el esquema del tío Alexys convirtiéndose en premium.
Cuando pasas a premium, se notifica vía tres canales en EDteam: slack, web y
correo. La primera es privada para nuestro equipo, mientras que las últimas
dos, es visible para el usuario, confirmándole que ya es premium.
Si te das cuenta, es la misma funcionalidad (notificación), aunque
internamente cada uno de esos métodos funciona diferente. Es decir, la
notificación de Slack tiene su propia API, métodos y lógica, igual para la web y
el correo. Pero en esencia, es la misma acción. Eso nos simplifica mucho el
trabajo porque podemos dar ordenes coherentes a varios objetos sin
preocuparnos cómo se ejecutarán.
Por ejemplo, si le decimos al tía Alexys y a mí que bailemos, cada uno lo hará
de forma diferente, cada uno a su modo. Sin embargo, nos dieron una orden y
lo cumplimos, aunque a nuestra manera particular. Eso es el polimorfismo,
poder darle la misma orden a diferentes objetos y que cada uno de ellos
respondan a su propia manera.
4. Herencia
Este pilar de la POO es, quizás, el más fácil de entender porque tiene relación con el
mundo real. Por ejemplo, mis hijos han heredado muchas cosas de mí, tanto atributos
como funcionalidades. En atributos, podemos decir que el color de ojos, el cabello o el
color de piel. En la funcionalidad, el carácter o personalidad. Sin embargo, ninguno es
una copia exacta de mí. Sobre esas cosas que han heredado, tienen sus propios
atributos y funcionalidad.
Es lo mismo que en la programación orientad a objetos. Tenemos una clase padre, y las
clases hijas heredan funcionalidades y atributos, pero no son idénticas. Solamente
aprovechan eso que ya existen y luego se le añaden nuevas cosas.
Por ejemplo, si tenemos una clase para crear usuarios genéricos, pero luego
necesitamos un usuario diferente, de staff, solamente para el equipo de EDteam y que
tenga diferentes funcionalidades y atributos que un usuario normal ¿Qué podemos
hacer? crear una nueva clase que herede de la clase padre, y esa sería el staff.
Si luego necesitamos otro usuario que sea profesor, entonces heredamos de la clase
usuario y creamos la clase profesor, y de allí, creamos todos los usuarios de profesores
del equipo. Ahora bien, si queremos meter invitados a la página, personas que sin
pagar una suscripción puedan tener acceso a los sorteos o campañas, podemos crear
un rol de invitados. Y así funciona la herencia en la POO.

También podría gustarte