Hace unos días, me crucé con el siguiente tweet que preguntaba “¿Crees que sea necesario aprender POO (Programación Orientada a Objetos) para empezar a programar?”, a lo que respondí que no. En esta entrada quiero extender esta respuesta.
Para reflexionar sobre ello, primero necesitamos definir qué es programar y qué es la programación orientada a objetos.
¿Qué es programar?
Programar se puede definir como escribir programas que ejecutará una computadora.
La base de un programa de computadora es secuencia, selección y repetición. Todo programa durante la ejecución se reduce a ello y, aquellos diseñados con un lenguaje orientado a objetos, no son una excepción.
¿Qué es la programación orientada a objetos?
La programación orientada a objetos es un paradigma de programación que impone cierta disciplina sobre la organización del código y la transferencia del control, pero es sólo eso, una disciplina organizativa. Al final, se ejecutan los métodos, no las clases ni los objetos.
Aprender a programar
Hechas les definiciones, toca reflexionar sobre ello cuando se está empezando a aprender a programar.
Cuando una persona quiere aprender a programar, es mucho más importante que aprenda primero los fundamentos más básicos y, luego ya, podrá pasar (o no) a aprender sobre el paradigma de programación orientada a objetos.
Sobre estos fundamentos, me gustaría hacer especial mención a la encapsulación y al polimorfismo por su estrecha relación con la programación orientada a objetos.
Los lenguajes orientados a objetos como Java o C# facilitan muchísimo la implementación de encapsulamiento y polimorfismo y, aunque son conceptos fundamentales e importantes, no es necesario aprender POO para entenderlos ni para aplicarlos. Ya en el lenguaje C, que no es orientado a objetos, se podía hacer encapsulamiento y polimorfismo, aunque no fuese algo tan trivial y cómodo de hacer como en Java o C#.
Hay 1 comentarios en esta entrada. Pulsa aquí para comentar desde GitHub.
Yo estoy aprendiendo a programar en php y quisiera algun consejo porque siento que no entiendo lo que hago ni por donde empezar, a pesar de que veo tutoriales y varios cursos se me hace dificil entender de donde salen las cosas a pesar que estoy empezando por ejercicios basicos, si no apruebo el proximo examen de php basico echaré mi carrera por la borda literalmente, gracias.
Hola @x-Skid,
Puedes preguntarme tus dudas directamente mencionándome en Twitter, @montyclt
Un saludo.