Aclaraciones sobre este libro y el aprendizaje de Java
Aprender a programar no es tan difícil como piensas. En mi caso, recuerdo que, incluso antes de empezar a leer la teoría, creía que para mí sería imposible aprender programación, al menos a nivel avanzado. Más que nada, porque pensaba que para conseguirlo iba a necesitar un altísimo nivel de compromiso e invertir cientos de horas. Seré honesto: estaba convencido de que no iba a enterarme de nada y que, después de un par de semanas, iba a dejar de lado mi propósito.
No te voy a engañar, es cierto que para aprender vas a necesitar dedicar tiempo, tanto leyendo teoría como realizando ejercicios. Pero no es necesario contar con experiencia previa ni con habilidades informáticas excepcionales. Lo único que necesitas son ganas y un material pedagógico adecuado.
En internet encontré varias alternativas, pero ninguna llegó a convencerme del todo. Quizás es que no tuve suerte. Cursos demasiado caros, tutoriales incompletos, foros con respuestas a preguntas muy específicas, vídeos aleatorios y, en definitiva, un sinfín de material que, pese a que muchas veces era de alto valor, a mí no me servía para nada.
Lo que yo necesitaba era algo estructurado con lo que poder aprender paso a paso y tener así una sensación de progreso que me motivase a seguir formándome. Pensé entonces en comprar libros. En general, este tipo de material es caro y no quería gastarme mucho dinero en algo que ni siquiera sabía si me iba a gustar. Por suerte, encontré bastantes ejemplares en el mercado de segunda mano. El problema fue que, sin tener ni idea de lo que necesitaba, encontré material muy avanzado o relacionado con otras áreas de Java, como interfaces o bases de datos. Incluso conseguí algún libro para novatos en el que no entendí ni la primera frase. A día de hoy, ya sabiendo programar, los vuelvo a leer y me doy cuenta de que la estructura y el orden de los temas son pésimos.
No obstante, no tiré la toalla y fui recopilando información de donde podía. No fue un camino sencillo, ya que algunas veces estaba seguro de haber aprendido algo y, poco después, descubría que en realidad lo había entendido mal. Aunque, con perseverancia, se puede conseguir casi todo y, al final, me vi resolviendo ejercicios complejos y con una recopilación de apuntes que ahora sí explicaban todo paso a paso y de forma estructurada.
Soy consciente de que ha habido, hay y habrá mucha más gente en la misma situación. Así que la idea de este libro es ayudar a todas esas personas que, por el motivo que sea, deciden aprender a programar en Java. Mi intención desde el principio fue crear un material que los programadores avanzados lo vieran y pensaran: “Ojalá hubiera tenido este libro cuando empecé a programar”. Por mi parte, puedo decirlo sin remordimiento: ojalá lo hubiera tenido
Antes de continuar, me gustaría dejar claras algunas cosas. No creo que memorizar conceptos sea la mejor manera de aprender nada y mucho menos a programar. Es cierto que en los siguientes temas verás muchos conceptos de teoría que son fundamentales y debes entenderlos, pero no es necesario que pierdas el tiempo memorizándolos. Poco a poco, y a base de realizar ejercicios y releer la teoría, toda esa información se irá haciendo un hueco en tu cabeza y se quedará ahí, casi sin que te esfuerces en ello.
Siguiendo con el tema, debes entender que lo que estás tratando de aprender es un lenguaje. Lo que quiero decir es que, por ejemplo, en castellano existen muchas formas para referirse al mismo concepto. En Java va a pasar lo mismo. Si necesitas crear un programa que organice tu agenda semanal, ese código se va a poder escribir de muchas maneras distintas.
En este tema vas a encontrarte con un montón de ejercicios resueltos. La idea no es que los memorices. Yo los he resuelto de una forma, pero quizás tú encuentres otra que sea incluso más eficiente u organizada. Una vez que tengas algo de experiencia programando, te darás cuenta de que lo más complicado no es la sintaxis en sí, sino pensar cómo podemos utilizarla para solucionar ese problema que debemos resolver.
Lo que me gusta de programar es que puedes ver cada ejercicio como un reto e incluso como algo divertido. Hay gente que hace sudokus, otros, sopas de letras, tú puedes resolver ejercicios de Java. Puede que ahora te haga gracia la idea, pero pronto descubrirás la satisfacción de resolver un problema que te traía de cabeza desde hacía horas, días o incluso semanas.
Como consejo personal, te sugiero que no te fuerces e intentes aprender todo de golpe. En mis primeros pasos de aprendizaje, trataba de dedicarle decenas de horas a la semana, y mi cabeza acabó saturándose. Es cierto que iba progresando bastante, pero había muchos puntos clave que no acababa de entender y era un poco frustrante. Por motivos laborales, no me quedó más remedio que mantenerme un mes alejado de Java y, cuando lo retomé, me llevé una grata sorpresa. Con la cabeza fresca, la mayoría de cosas que no comprendía ahora estaban totalmente claras, y todo el bloqueo mental que tenía había desaparecido. Así que te recomiendo que vayas paso a paso.
Este libro tiene una parte de historia, otra de teoría y otra de práctica. Creo que la historia lo hace más ameno y distinto a otras publicaciones. Además, es una motivación para seguir leyendo. Siéntete libre de saltarte esas páginas si no te interesan. Por otro lado, si ya conoces la teoría, puedes ir directamente a los ejercicios. He tratado de que el libro sea versátil y pueda satisfacer las necesidades de todos los lectores. El objetivo ha sido recopilar en un mismo tomo todo lo necesario para que cualquier persona, independientemente de su conocimiento previo, pueda acabar programando con soltura.
Obviamente, la historia es completamente ficticia y no se basa en ninguna persona o escenario real. Ahora sí, ya después de estas aclaraciones, te deseo suerte en tu aprendizaje.