Pensando en Java, Introduccion a objetos
Objetos
a
los
"Cortamos la naturaleza dividiéndola, la organizamos en conceptos, y le
atribuimos significados asimismo, en gran parte porque somos partes de un
acuerdo que asentimos a través del discurso de nuestra comunidad y
codificamos los patrones de nuestra lengua... no podemos hablar a todos
excepto suscribiendo a la organización y clasificación de los datosque
acordamos por decreto" Benjamin Lee Whorf (1897-1941)
La génesis de la revolución de la computadora se encuentra en la máquina. La
génesis de nuestros lenguajes de programación tiende así a parecerse a esa
máquina.
Pero las computadoras no son tanto máquinas como son herramientas que
amplifican la mente ("bicicletas para la mente", como Steve Jobs está
encariñado en decir) y una clasediferente de medio de expresión.
Consecuentemente, las herramientas están comenzando a parecerse menos a
las máquinas y más a las partes de nuestras mentes, y también como otras
formas de expresión tales como escritura, pintura, escultura, animación, y
filmación. La programación orientada al objeto (OOP) es parte de este
movimiento para utilizar la computadora como medio de expresión.
Estecapítulo lo introducirá a los conceptos básicos de OOP, incluyendo una
descripción de los métodos de desarrollo. Este capítulo, y este libro, asumen
que usted ha tenido experiencia en un lenguaje de programación procedural,
aunque no necesariamente C. Si usted piensa que tiene necesidad de mayor
preparación en la programación y la sintaxis de C antes de abordar este libro,
debería trabajar através del CDROM Foundations for Java que lo entrena, en el
límite posterior de este libro.
Este capítulo es material de fondo y suplementario. Mucha gente no se siente
cómoda vadeando la programación orientada al objeto sin entender el cuadro
grande primero. Así, hay muchos conceptos que se introducen aquí para darle
una descripción sólida de OOP. Sin embargo, la gente puede no comprender
losconceptos del cuadro grande hasta el heber visto algo del mecanismo
primero; esta gente puede empantanarse y perderse sin un cierto código pa ra
conseguir meter sus manos. Si usted forma parte de este último grupo y es
impaciente en conseguir lo específico del lenguaje, siéntase libre de saltear
más allá este capítulo - saltearlo en este punto no evitará que programe o
aprenda la escritura dellenguaje. Sin embargo, usted deseará volver aquí para
completar eventualmente su conocimiento así puede completar su
conocimiento del porqué los objetos son importantes y cómo diseñar con ellos.
El Progreso de la Abstracción
Todos los lenguajes de programación proporcionan abstracciones. Puede ser
discutido que la complejidad de los problemas capaz de solucionar está
relacionadadirectamente con la clase y la calidad de la abstracción. Por la
clase quiero decir "¿Qué es lo que está abstrayendo?". El lenguaje
ensamblador es una pequeña abstracción de la máquina subyacente. Muchos
lenguajes llamados "imperativos" que siguieron (por ejemplo FORTRAN,
BASIC, y C) eran abstracciones del lenguaje ensamblador. Estos lenguajes son
grandes mejoras del lenguaje ensamblador, pero suabstracción primaria
todavía requiere pensar en términos de la estructura de la computadora antes
que en la estructura del problema que está intentando resolver. El
programador debe establecer la asociación entre el modelo de la máquina (en
"el espacio de solución", donde está realizando el modelo de ese problema, tal
como una computadora) y el modelo del problema que se está solucionandorealmente (en "el espacio del problema", que es el lugar en donde existe el
problema). El esfuerzo requerido para realizar este traspaso, y el hecho de que
es extrínseco al lenguaje de programación, produce los programas que son
difíciles de escribir y costosos de mantener, y como un efecto secundario crean
la industria completa de los "métodos programación" .
La alternativa a modelar la...
Regístrate para leer el documento completo.