Paradigmas de programación
Cuando hablamos de programación, hablamos de resolver un determinado problema utilizando el gran poder de procesamiento que tienen las computadoras, pero al igual que en la vida real, un problema puede ser resuelto de diversas maneras.
En programación, la forma en la que planteamos resolver un problema se le conoce como paradigma.
Paradigma procedural
Hasta este capítulo, lo que hemos visto es el paradigma procedural, que consiste en ejecutar una sentencia tras otra de manera ininterrumpida, la cual se va a ir ejecutando de arriba hacia abajo. Este tipo de paradigma funciona muy bien cuando estamos trabajando con programas muy pequeños, pero cuando los programas comienzan a ser grandes van a dar muchas dificultades.
POO
Para solucionar las dificultades que vienen del paradigma procedural se creó lo que se conoce como programación orientada a objetos, este paradigma nos indica que deberíamos dejar de pensar en funciones y empezar a pensar en objetos, como son los objetos de la vida real. Por ejemplo, dos vehículos son dos objetos parecidos pero presentan distintas propiedades (color, número de puertas, tipo de cristal...) y distintos métodos (tipo de frenado, tipo de aceleración...). De manera que cualquier cambio que hagamos en un objeto no tiene porque repercutir en el otro.
Este paradigma plantea que debemos abstraer nuestro código y tratarlo como si fueran objetos de la vida real. En conclusión nos plantea que cambiemos la forma que tenemos de pensar y siempre tratemos de imaginar nuestro código como un objeto, por ejm, si necesitamos almacenar la información de un usuario pensemos en el usuario como un objeto que tiene una serie de propiedades (nombre, edad, dirección) y métodos (iniciar sesión, logearse...), y dichas propiedades y métodos son intrínsecos a ese objeto.
Clases
Los objetos se crean a partir de clases, las cuales vienen a ser como una especie de plantilla que va a determinar que un objeto va a tener cierta cantidad de atributos o propiedades y va a tener cierta cantidad de métodos.
Algunas propiedades podrían ser:
- Nombre
- Apellidos
- Correo
- Contraseña
- Premium
Algunos métodos podrían ser:
- Editar perfil
- Iniciar sesión
- Cerrar sesión
- Cambiar de contraseña
- Pasar a Premium
Nosotros crearemos los objetos a partir de esta plantilla, vamos a crear una especie de copia de la clase. Una vez se crea ese objeto se dice que se ha instanciado una clase.