Cap. 1 "piensa en java"

Solo disponible en BuenasTareas
  • Páginas : 114 (28475 palabras )
  • Descarga(s) : 0
  • Publicado : 20 de diciembre de 2010
Leer documento completo
Vista previa del texto
1 Introducción : a los objetos
L génesis de la revolución de los computadores se encontraba en una máquina, a y por ello, la génesis de nuestros lenguajes de programación tiende a parecerse a esa máquina.
Pero los computadores, más que máquinas, pueden considerarse como herramientas que permiten ampliar la mente ("bicicletas para la mente", como se enorgullece de decir Steve Jobs), además de unmedio de expresión inherentemente diferente. Como resultado, las herramientas empiezan a parecerse menos a máquinas y más a partes de nuestra mente, al igual que ocurre con otros medios de expresión como la escritura, la pintura, la escultura, la animación o la filmación de películas. La

programación orientada a objetos (POO) es una parte de este movimiento dirigido a utilizar los computadorescomo si de un medio de expresión s e tratara.

Este capítulo introducirá al lector en los conceptos básicos de la POO, incluyendo un repaso a los métodos de desarrollo. Este capítulo y todo el libro, toman como premisa que el lector ha tenido experiencia en algún lenguaje de programación procedural (por procedimientos), sea C u otro lenguaje. Si el lector considera que necesita una preparaciónmayor en programación y/o en la sintaxis de C antes de enfrentarse al presente libro, se recomienda hacer uso del CD ROM formativo Thinking in C: Foundations for C++ and Java, que se adjunta con el presente libro, y que puede encontrarse también la URL, http://www.BruceEckel.com. Este capítulo contiene material suplementario, o de trasfondo (background). Mucha gente no se siente cómoda cuando seenfrenta a la programación orientada a objetos si no entiende su contexto, a grandes rasgos, previamente. Por ello, se presentan aquí numerosos conceptos con la intención de proporcionar un repaso sólido a la POO. No obstante, también es frecuente encontrar a gente que no acaba de comprender los conceptos hasta que tiene acceso a los mecanismos; estas personas suelen perderse si no se les ofrecealgo de código que puedan manipular. Si el lector se siente identificado con este último grupo, estará ansioso por tomar contacto con el lenguaje en sí, por lo que debe sentirse libre de saltarse este capítulo -lo cual no tiene por qué influir en la comprensión que finalmente se adquiera del lenguaje o en la capacidad de escribir programas en él mismo. Sin embargo, tarde o temprano tendránecesidades ocasionales de volver aquí, para completar sus nociones en aras de lograr una mejor comprensión de la importancia de los objetos y de la necesidad de comprender cómo acometer diseños haciendo uso de ellos.

El progreso d e la abstracción
Todos los lenguajes de programación proporcionan abstracciones. Puede incluso afirmarse que la complejidad de los problemas a resolver es directamenteproporcional a la clase (tipo) y calidad de las abstracciones a utilizar, entendiendo por tipo "clase", aquello que se desea abstraer. El lenguaje

2

Piensa en Java

ensamblador es una pequeña abstracción de la máquina subyacente. Muchos de los lenguajes denominados "imperativos" desarrollados a continuación del antes mencionado ensamblador (como Fortran, BASIC y C) eran abstracciones a su vezdel lenguaje citado. Estos lenguajes supusieron una gran mejora sobre el lenguaje ensamblador, pero su abstracción principal aún exigía pensar en términos de la estructura del computador más que en la del problema en sí a resolver. El programador que haga uso de estos lenguajes debe establecer una asociación entre el modelo de la máquina (dentro del "espacio de la solución", que es donde se modelael problema, por ejemplo, un computador) y el modelo del problema que de hecho trata de resolver (en el "espacio del problema", que es donde de hecho el problema existe). El esfuerzo necesario para establecer esta correspondencia, y el hecho de que éste no es intrínseco al lenguaje de programación, es causa directa de que sea difícil escribir programas, y de que éstos sean caros de mantener,...
tracking img