Tip:
Highlight text to annotate it
X
Bienvenido a la parte dos del curso de programación orientada a objetos con C++
Antes de retomar con los temas a desarrollar que quedaron pendientes en el video anterior
Vamos a hacer una introducción a los objetos
Vamos a comenzar con una frase extraída del libro "Pensar en C++"
... y vamos a desarrollar la primera página de este libro.
"El origen de la revolución informática ocurrió dentro de una máquina. Por lo tanto el origen de nuestros lenguajes de programación tiende a parecerse a esa máquina"
Los ordenadores, no son solo máquinas sino también "herramientas de amplificación de la mente".
O "Bicicletas para la mente", como le gusta decir a Steve Jobs.
También son un medio de expresión diferente.
y como resultado, estas herramientas comienzan a parecerse menos a las máquinas y más a partes de nuestra mente
y a otros medios de expresión, tales como lo es la escritura, la pintura, escultura, animación y cinematografía.
La Programación Orientada a Objetos, es parte de este movimiento hacia un uso del ordenador como medio de expresión.
Ahora, vamos a ver un video que ilustra un poco esto que estoy hablando.
Seguramente el video te dio ganas de tener un aparato de estos :P
Abstracción
En un principio yo tengo el código nativo, que es el que maneja la máquina
Bien, este código depende de la estructura del ordenador, es decir
como vimos, era una secuencia binaria compuesta por 1s y 0s
si yo tengo una secuencia binaria de 1s y 0s y la mudo a otro ordenador que tenga una arquitectura, una estructura diferente este código no me va a funcionar.
Entonces, decimos que el código máquina depende de la estructura o arquitectura del ordenador.
si yo aplico una abstracción, es decir, muevo este código máquina, por medio de una operación intelectual la llevo a otro contexto,
voy a ir obteniendo diferentes lenguajes, como por ejemplo el ensamblador
que es una de las abstracciones, uno de los lenguajes más cercanos que existe al código máquina
Continuando con la abstracción, obtengo los distintos lenguajes ya más de alto nivel.
es decir, los lenguajes de alto nivel, son abstracciones más elevadas del código máquina
bueno, obtengo los lenguajes como FORTAN, BASIC ó C
Estos lenguajes suponen algunas mejoras pero aún hay que pensar en términos de la estructura del ordenador
Es decir, si bien tenemos un lenguaje más humano, más fácil de manejar, al momento de programar
, de generar nuestros programas, hay que pensar en términos de esta estructura que tenga el ordenador en el cual estamos programando.
Entonces, lo que tiene que hacer el programador, es asociar la estructura que tenemos, es decir, el modelo de la máquina con la cual estamos trabajando (ubicado en el espacio de soluciones)
y el problema que estamos tratando de resolver (ubicado en el espacio de problemas).
realizar esta asociación es medio pesado y además es extrínseco al lenguaje de programación.
que quiere decir esto, que, por más que estemos utilizando FORTAN, BASIC ó C, debemos pensarlo, en relación con la estructura del ordenador.
Esto produce programas difíciles de escribir, caros de mantener y como efecto secundario toda una gama de "metodologías de programación"
Nosotros, vamos a utilizar el método de la POO, que como alternativa a modelar el problema pensando en la arquitectura de la máquina
vamos a modelar el problema con este método que es el de la POO
que nos ayuda a despegarnos de la arquitectura que tenga la máquina
y esta asociación pasa a segundo plano.