Los pilares de la programación orientada a objetos

La programación orientada objetos posee 4 pilares que le ayudan a diferenciarse de otros paradigmas de la programación.

Estos pilares son la abstracción, la encapsulación, la herencia y el polimorfismo.

En los próximos artículos veremos cada uno de estos pilares en detalle.

Participa en el Hackathon del proyecto Accessibilitech

Dentro dell proyecto europeo ACCESSIBILITECH, liderado por Fundación ONCE, Se está diseñando un buscador online de soluciones tecnológicas accesibles en las áreas de E-learning, Teletrabajo y Teleasistencia.

Cuando se habla de soluciones se hace en su más amplio sentido: ideas, proyectos en fase de maduración, trabajos universitarios, prototipos, productos y servicios comercializados o de uso público.

Actualmente se utilizan técnicas de IA para detectar las soluciones en internet, pero también se posibilita la entrada manual a través de un formulario para desarrolladores que no tengan publicadas sus soluciones en internet o quieran ser incluidos en la plataforma.  

Además, paralelamente se está llevando a cabo acciones divulgativas para concienciar a las empresas, futuros profesionales y emprendedores de la importancia y la necesidad de la accesibilidad y las soluciones inclusivas.

Una de ellas este  HACKATHON, previsto para el 22 y 23 de junio de 2022, organizado por Fundación ONCE, DIGITALEUROPE y Microsoft.

El evento tendrá como lengua oficial el inglés y los participantes tendrán la oportunidad de poner en práctica sus curiosidades, creatividad y habilidades profesionales para una buena causa al resolver los retos propuestos. Estos retos tienen el potencial de hacer más accesible e inclusiva la tecnología desarrollada para el teletrabajo, e-learning y teleasistencia.

Puedes leer más información sobre el Hackathon de Accessibilitech en la página del evento.

Córner café de Por Talento Digital y Cabify para hablar de accesibilidad tecnológica y trabajo en tecnología

El programa de Por Talento Digital de Fundación ONCE junto a Cabify celebrarán un evento denominado Córner café para alumnos con discapacidad de sus distintos cursos de formación digital.

Tendrá lugar el próximo jueves 26 de mayo de 2022 en el horario de 16:00 a 19:00.

Se celebrará tanto de forma virtual como presencial en el centro situado en el centro Por Talento Digital c/Fray Luis de León nº 11, planta baja (Madrid).

Objetivos del evento

El evento está enfocado en mostrar cómo se trabaja la accesibilidad dentro de una empresa tecnológica y cómo afrontar el reto de trabajar dentro de Cabify siendo persona con discapacidad.

Los ponentes somos Kiko Morales, Global Talent Acquisition & Employer Branding en Cabify y yo mismo.

Durante el evento se explicarán las distintas técnicas, enfoques y herramientas que se utilizan a la hora de trabajar con tecnología tanto para crear accesibilidad como para superar las barreras de accesibilidad en el trabajo.

Además se explicará como es un proceso de selección para entrar a trabajar en una empresa tecnológica y las distintas habilidades y estrategias a seguir para superar el proceso de forma exitosa.

Objetivos de Cabify

Cabify busca crear equipos cada vez más diversos e inclusivos. En su continua búsqueda de talento se está enfocando en buscar personas con discapacidad que puedan crear y diseñar software de calidad y quieran trabajar en una empresa siguiendo los principios de Cabify de mejora de las ciudades.

Por esta razón está colaborando en actividades de formación y divulgación para que el talento emergente se acerque a las ofertas laborales de Cabify y formen parte del equipo humano de la compañía.

Participación e inscripción

Puedes inscribirte al evento y conocer más detalles sobre los ponentes y su agenda.

Jerarquías de clase dentro de la Programación orientada a objetos

Como aprendimos en el artículo de fundamentos de la programación orientada a objetos existen objetos que son instancias de clases. Pero las aplicaciones reales, como la vida real, no se componen de una sola clase. Estas clases pueden estar relacionadas entre si para crear un diseño mas complejo que permita resolver problemas más complejos.

Cuando varias clases se relacionan entre si se dice que forman una jerarquía de clases.

De gatos y pájaros

Imaginemos que tu vecino tiene un gato llamado Silvestre. Los pájaros y los gatos tienen campos y métodos en común, ambos tienen un nombre, un sexo, edad, peso, tamaño, color, comen, duermen, observan, etc. Pero también tienen diferencias, unos tienen alas y otros sólo patas, unos pían y otros maúllan.

Observando los atributos comunes de las clases Pájaro y Gato podemos diseñar la clase Animal.

Clase Animal:

    Campos:

        nombre, edad, sexo, peso, tamaño, color, patas

    Métodos:

        respirar, comer, dormir, observar 

A partir de la clase Animal podemos crear las clases Pájaro y Gato atendiendo a sus diferencias.

Clase Pájaro

    Campos:

        alas, pico

    Métodos:

        piar, volar

Clase Gato

    Campos:

        dientes, orejas

    Métodos:

        maullar, correr

Las clases Pájaro y Gato heredan de la clase Animal el conjunto de campos y métodos. La clase Animal se conoce como clase padre o superclase.

Las clases hijas de la superclase Animal se denominan subclases. Heredan el comportamiento y el estado de su clase padre.

La relación que existe entre superclases y subclases se denomina jerarquía de clases. Estas relaciones pueden basarse en la herencia de métodos y campos e incluso en la modificación de alguno de esos métodos.

Sobreescritura de métodos

Cuando una clase hija modifica un método de la clase padre se dice que el método está sobreescrito (overwrite).

Un método sobreescrito puede limitarse a sustituir por completo el método de la clase padre o a mejorarlo ya que en la llamada al método de la clase hija, esta clase hija internamente primero ejecuta el método de la clase padre, copiando su comportamiento, y luego ejecutar más órdenes mejorando el comportamiento haciéndolo más específico para la clase hija.

Fundamentos de programación orientada a objetos

La Programación orientada a objetos (POO) es un paradigma de programación en el que la información y la funcionalidad de una aplicación software se agrupa en pequeños grupos especiales llamados objetos, estos objetos siguen un diseño planificado por el programador y estos objetos son representados en el diseño por las clases.

Pájaros y objetos

Muchos autores han explicado la POO hablando de gatos, perros o coches. En este artículo probaremos a explicar la POO hablando de pájaros.

Imaginemos que tienes un pájaro llamado Piolín. Piolín es un objeto, una instancia de la clase Pájaro.

Campos y métodos

Cada pájaro tiene una serie de atributos: nombre, edad, sexo, peso, tamaño, color de plumaje, tipo de alimentación, etc. Este grupo de atributos se denominan campos de la clase. Los campos representan la información que contendrá y manipulará el objeto.

Al conjunto de toda la información del objeto en un momento dado se la denomina estado del objeto. 

Además todos los pájaros se comportan de forma similar: respiran, comen, observan, crecen, duermen, etc. Estos son los métodos de la clase. Los métodos representan la funcionalidad que podrá realizar el objeto.

Al conjunto de campos y métodos de una clase se le conoce como el conjunto de miembros de una clase.

Instancias

Los objetos son instancias de clase. Piolín es una instancia de la clase Pájaro, Correcaminos es otra instancia de la clase pájaro.

Piolín y Correcaminos tienen el mismo grupo de campos y métodos. La diferencia está en los valores de estos atributos ya que permiten hacer diferente a cada instancia de la clase pájaro.

Una clase es como un plano de construcción que permite dar forma a la información y las acciones que podrá realizar un objeto.

Un ejemplo de definición de clase podría ser el siguiente:

Clase Pájaro:

    Campos:

        nombre, edad, sexo, peso, tamaño, color

    Miembros:

        respirar, comer, dormir, observar 

Participación en el evento de Atos para Global Accessibility Awareness Day 2022

El Día Mundial de la Concienciación sobre la Accesibilidad, conocido internacionalmente como Global Accessibility Awareness Day, o por sus siglas en inglés “GAAD”, es un evento internacional cuyo propósito es de promover las iniciativas, diálogos y reflexiones en torno al tema de la accesibilidad digital y la inclusión.

El objetivo de este día es conectar a líderes, profesionales, estudiantes y personas interesadas en la accesibilidad y la inclusión para Impulsar el conocimiento sobre la accesibilidad.

Atos y el GAAD 2022

El próximo martes, 10 de mayo, Atos Iberia celebrará interesantes seminarios con invitados de primer nivel que comentarán diferentes formas de usar la accesibilidad digital para mejorar la inclusión de las personas con discapacidad.

El evento, en español y con subtítulos, será retransmitido por streaming, de 15:00 a 18:00 CET, a través de la cuenta de Atos en Twitter España, sin necesidad de registro.

Participaré en el evento en una entrevista que me hizo Ricardo García Bahamonde hablando sobre accesibilidad, tecnologías antiguas y nuevas, multiverso y cajeros automáticos entre otras cosas.

Se puede consultar el programa del evento en la publicación de Atos en LinkedIn.