Ejercicios de PPO.

En un artículo explicamos la Programación Orientada a Objetos teóricamente, donde puedes entender qué significa y los elementos que la conforman. Ahora pondrás en práctica lo aprendido utilizando JavaScript en su versión más reciente. Siguiendo con el ejemplo del anterior artículo vamos a mostrarte cómo crear una herramienta de gestión simple para una empresa. Interesante ¿no?

Definición de clases en la Programación Orientada a Objetos

Lo primero es definir de forma básica cada una de las clases que vamos a necesitar en el desarrollo. Partiremos de lo más general hasta llegar a lo más específico, para luego llenar las clases de contenido (métodos). Para esto primero hay que identificar la clase más general: ‘Departamento’. Vamos a definir sus atributos de clase y acto seguido el constructor. En Ecmascript 6 no se permiten varios constructores, pero más adelante verás que se puede hacer un apaño por si quisiéramos contar con más formas de definición en nuestra clase. 

ejemplo programación orientada a objetos

Esta es la definición básica de una clase llamada ‘Departamento’. En primer lugar escribe la palabra reservada ‘class seguida del nombre de la clase en JavaScript. El constructor y los atributos se definen juntos, es decir se escribe la palabra reservada ‘constructor’ como si fuera una función y en sus parámetros los valores de los atributos que queramos pasar. En este caso son todos, pero podrías haber definido dos parámetros. Por último, defines los atributos que vamos a usar y utilizar con la palabra reservada ‘this’.

Ejemplo de programación orientada a objetos

Como verás, he añadido dos métodos, uno para cambiar el nombre del departamento cuando queramos y otro que nos retorne el nombre de departamento. Si corres el código que te acabo de mostrar te darás cuenta de que el nombre ha cambiado desde la definición inicial.

Herencia en Programación Orientada a Objetos.

Ahora he comenzado a crear las clases hijas, y bueno te preguntarás por qué las llamo así. Pues bien, si eres un poco espabilad@ te habrás dado cuenta de que la clase ventas está acompañada de “extends”, que significa hereda. Ahora todos los métodos y atributos de la clase ‘departamento’ también se aplican a la clase ‘ventas’, para esto último se utiliza la función ‘super()’, la cual es como si llamara al constructor de la clase. 

Ejercicios de POO

Por último y como verás, he creado un método para averiguar el ratio ventas empleado solo para que veais que los métodos sirven más que para hacer ‘return’ a un valor.

Ejercicios para aprender a programar

Esta es la clase ‘tecnologia’ que corresponde al departamento con el mismo nombre, es muy parecida a la de ventas, solo que aquí se mide el rendimiento por líneas de código por empleado (una mala práctica, la empresa probablemente quiebre en meses). Pero bueno, la cuestión es que nuestro programa está cerca de ser terminado. Ya solo queda definir la clase ‘directiva’. 

Ejercicios para aprender programación

Por último tenemos a la ‘junta directiva’, la cual decide el rumbo de nuestra compañía, cuenta con tres métodos principales. Decisión que aleatoriamente (intentando emular lo impredecible del pensamiento humano) saca un número entre uno y el número de votos, más adelante vemos que nuestra directiva puede despedir y contratar, simplemente le restará o sumará uno según sea la acción.

Así que bueno, ahora que ya tienes las clases lo último es combinarlas para realizar las acciones que necesites, puede que quieras añadir un empleado en función a una decisión de la directiva o cambiar el nombre de la empresa etc, el límite está en tu creatividad, la pregunta es, ¿tiene límites tu creatividad?.

Si quieres seguir aprendiendo a programar puedes empezar con estos artículos muy interesantes sobre programación o lanzarte al mundo de la programación con la guía para aprender a programar desde cero y aplicarte estos consejos para aprender programación imprescindibles para iniciarte con buen pie en el desarrollo web.

La imagen tiene un atributo ALT vacío; su nombre de archivo es guia-gratuita-aprende-a-programar-1024x166.png