¿Por qué deberías aprender Java?

En los cinco años transcurridos desde el nacimiento de la tecnología Java, Java se ha convertido en un término atractivo para todos. Algunas de las diversas afirmaciones son ciertas y otras son exageradas. Quizás te estés preguntando: ¿Deberías aprender Java? La respuesta que te doy es sí, escucha lo que tengo que decir. ¿Qué es Java? Primero debes entender ¿qué es exactamente Java? Cuando la gente dice "Java", probablemente se refiere a: Lenguaje de programación Java: un lenguaje de programación orientado a objetos como C++ o Smalltalk. Aprender el lenguaje de programación Java es similar a aprender el lenguaje humano, con un conjunto de reglas y gramática. Máquina virtual Java (JVM): utilizada para ejecutar programas Java. Existen versiones de JVM para muchas plataformas, como Linux y Windows. Con la JVM, los programas Java se pueden ejecutar en diferentes plataformas, lo que se conoce como "escribir una vez, ejecutar en cualquier lugar". API de Java (refiriéndose a la interfaz de programación de la biblioteca de funciones): es un conjunto de categorías predefinidas que se pueden usar directamente en su programa. Estas cosas son gratuitas e incluyen funciones como acceso a archivos, lectura y escritura en red, interfaces gráficas, etc. Cuando la gente dice "aprender Java", normalmente se refiere al lenguaje Java y a la API. Es posible que no sepas mucho sobre JVM, aunque tener un conocimiento básico de JVM es muy útil para aprender Java. Programación orientada a objetos La programación orientada a objetos se ha vuelto más aceptada que la programación tradicional orientada a programas. La programación orientada a objetos aporta mucha potencia adicional, pero la programación orientada a objetos también tiene una curva de aprendizaje pronunciada. Si ya conoces un lenguaje orientado a objetos, te resultará mucho más fácil aprender Java. Si no comprende la programación orientada a objetos, le queda un largo camino por recorrer. A mí me llevó unos cuatro años comprender la esencia de la orientación a objetos, pero mi aprendizaje durante esos cuatro años fue bastante informal. Si estás tomando una clase de un buen profesor o estás inmerso en un montón de buenos libros, tal vez puedas acortarla a unos pocos meses. No descuide el aprendizaje de conceptos orientados a objetos, porque la sintaxis de Java es fácil de aprender, pero escribir buenos programas orientados a objetos no es fácil. Algunas de las razones para aprender Java son técnicas y otras no técnicas. Primero describiré las características de dos programas (recolección de basura y manejo de excepciones), y luego les diré: por qué Java es casi una habilidad necesaria en el campo de la programación. También te hablaré de las herramientas de desarrollo Java y sus atractivos precios. ¡Gracias a Dios que es bueno tener "recolección de basura"! Con C++, puedes escribir accidentalmente un programa que falle; si usas Java, la situación es muy diferente. El error número uno en los programas C++ son los errores de asignación de memoria. Los programadores de C ++ son muy trabajadores, deben configurar directamente una parte de la memoria y deben devolverla activamente cuando no esté en uso. Esto suena simple pero no es fácil de hacer, por lo que los programas C++ a menudo se quedan sin memoria. Java es diferente. Aunque aún necesita asignar memoria activamente, esta memoria se libera automáticamente una vez que ya no se utiliza. Esto se denomina "recolección de basura". El mecanismo de recolección de basura hace que sea mucho más fácil escribir programas. Aunque la eficiencia es ligeramente peor durante la ejecución, el impacto puede ser tan leve que no lo sienta en absoluto. El mecanismo de manejo de excepciones hace que el programa sea más estable. No importa qué lenguaje de programación sea, es fácil escribir un programa incorrecto, pero no es fácil escribir un programa incorrecto usando Java. Una de las razones es la recolección de basura y la segunda es el "mecanismo de manejo de excepciones". Un programa escrito por un buen programador debería funcionar normalmente cuando ocurren situaciones inesperadas. El archivo no se puede abrir, ¿qué debo hacer? ¿Qué debo hacer si algo sale mal a la mitad de la lectura del archivo? Si está utilizando C++ u otro lenguaje, es posible que por descuido no pueda manejar estas situaciones inesperadas. Podrías argumentar: "Sólo estoy tratando de ver si funciona. Volveré y cambiaré el programa para que sea más reflexivo más adelante". Pero el resultado suele ser el siguiente: después de que el programa se ejecuta normalmente, estará ocupado escribiendo un nuevo programa y, después de tal retraso, se olvidará de regresar y ocuparse de las partes incompletas. Eventualmente surgirán problemas y aún tendrás que lidiar con el desorden. Java te obliga a estar preparado para cualquier cosa que pueda salir mal.

Los métodos de Java pueden generar excepciones para notificar a la persona que llama que algo anda mal con el programa. Este es un mecanismo muy bueno. Incluso si su programa quiere abrir archivos, debe escribir métodos de manejo de excepciones en el programa. Java está en todas partes Java está en todas partes y eso es un gran beneficio. Si escribe programas para ganarse la vida, probablemente tarde o temprano se encontrará con Java. Java ha penetrado gradualmente en varios campos. Puede escribir servlets Java y colgarlos en Apache u otros servidores web. Puede escribir subprogramas Java y ejecutarlos en navegadores web. Incluso puedes escribir el procedimiento almacenado de la base de datos en Java y luego instalarlo en Oracle 8i. Apuesto a que cada vez más colegas a tu alrededor utilizarán Java. Desde 1997, muchas universidades han reemplazado a C como lenguaje para la enseñanza de programación. De esta forma, Java se ha convertido en el lenguaje más popular para los programadores. Si el único beneficio que le aporta aprender Java es la comodidad de comunicarse con sus colegas, entonces vale la pena. Finalmente, lo que quiero decir es: "Escribe una vez y ejecuta en cualquier lugar". Las versiones anteriores de Java (1.0 y 1.1) no eran completamente multiplataforma, pero ahora son mucho mejores. Si desea distribuir un programa a múltiples plataformas sin reescribir grandes partes del programa, Java es una excelente opción. Java 2 ahora se ejecuta en Linux, muchos Unix y Windows. Java en MacOS 9 todavía se encuentra en la era 1.1. Sin embargo, el sistema operativo de próxima generación de Apple, OS X, está basado en Unix, lo que simplifica mucho el proceso de portabilidad del software. No sé cuál es la declaración oficial de Apple, pero en marzo de este año vi Java 2 ejecutándose en la versión 3 para desarrolladores de OS X. Estoy bastante seguro de que Java 2 se ejecutará en Linux, OS X y Windows, que cubre la mayor parte del mundo informático. Java Free Sun proporciona herramientas relacionadas con Java que le permiten desarrollar y ejecutar programas Java. No tiene que pagar tarifas de licencia ni gastar dinero en herramientas de desarrollo de Java. Por supuesto, Sun tiene sus propias razones para hacer esto, y Scott McNealy (el jefe de Sun) quiere conquistar el mundo, pero pase lo que pase, podemos disfrutar de Java sin pagarle a nadie. Además, la API de Java es un tesoro precioso que nos permite escribir fácilmente programas potentes. ¿Quieres escribir un programa de red? ¡Ya existe una API! ¿Quieres conectarte a una base de datos? ¡Ya existe una API! ¿Quieres escribir un programa GUI? ¡Ya existe una API! ¿O desea realizar procesamiento de imágenes digitales, procesamiento de archivos de música, análisis de cuerdas y firmas digitales? ¡Hay una API para todo! Como programador, no podría estar más feliz de tener tantas API útiles. Estas API de Java nos ahorran la necesidad de "reinventar la rueda" y ahorrar mucho esfuerzo. Java tiene una API tan amplia, estándar y avanzada que pone celosos a los programadores de C++. Los programadores de C++ a menudo tienen que dedicar tiempo a aprender algunas bibliotecas de clases de C++ (como MFC) y luego tienen que aprender otra biblioteca desde cero cuando pasan a Linux (porque no hay MFC en Linux). Una vez que aprenda una determinada API de Java, seguirá siendo la misma donde quiera que vaya y no es necesario volver a aprenderla. Finalmente, los archivos de información Java están disponibles de forma gratuita en el sitio web. Si tiene una conexión a Internet y es libre, puede aprender el lenguaje Java orientado a objetos y la API de Java directamente a través de Internet. Sun tiene una gran cantidad de excelentes materiales didácticos en línea en su sitio web. Si está acostumbrado a leer libros para aprender, hay muchos libros sobre Java en el mercado a los que puede consultar (por ejemplo, Aprendiendo Java escrito por mí). Java para tomar el sol es mucho más interesante que otros lenguajes. El lenguaje de programación Java tiene muchos "dispositivos infalibles" para evitar que cometa grandes errores en su programa, por lo que puede escribir el programa muy rápidamente, lo que llevaría más tiempo si usara otros lenguajes.

Un dato interesante muestra que escribir programas en Java es de cuatro a diez veces más rápido que usar otros lenguajes. Sé que esto suena extraño, pero puedes preguntarle a las personas que te rodean y que conocen Java. No tener que pasar mucho tiempo buscando insectos significa que puedes descansar más tiempo en la playa, lo que significa que puedes tomar el sol en lugar de "tomar el sol en una pantalla". ¡Usa el dinero que ganes con Java para comprarte un par de gafas de sol!

tml>