|
La adopción de Java y el S.L. en los paises de Latino America especialmente en el Perú, esta tomando un caracter más atractivo a nivel de empresas, organizaciones, Universidades, desarrolladores en general.
Pero no podemos negar el predominio de las aplicaciones y software propietarios en nuestro pais, tal vez por cultura, por moda o por el temor, que han demostrado los llamados a adoptar un nuevo modelo, miedo al cambio, a la conversión de sus antiguas ideas en un nuevo mundo, a pensar en que no debemos ser solo observadores o simplemente consumidores de tecnologia, nosotros podemos participar y aportar en este nuevo modelo de desarrollo, de aprendizaje, de compartir conocimientos, en el mundo de hoy donde la evolucion de las TI es vertiginosa: "si se conoce algo y no se comparte entonces no se sabe nada".
Gracias a la difucion de las tecnologias libres estamos en el momento oportuno de participar, aportar, y crear una nueva forma de pensar basada en la comunidad, sin egoismo, y por el bien común, como por alli en mis dias de cliente servidor escuche decir "si enseñas lo que sabes aprendes mas que el doble" y lo pude comprobar mas adelante.
Es por eso que en este año 2007, la comunidad, latinoamericana, porque no decir la peruana, puede aportar mucho, claro esta ayudaria mucho un cambio de filosofia de las instituciones educativas, preparando a personas no solo para trabajar en una empresa si no para dar sus conocimientos ayudadando a otros y haciendo de esta una mejor comunidad, pues bien con Java y el S.L., tenemos un gran camino a realizar y por participar.
Si bien es cierto, Iniciarse en la programcion en Java ha sido nuchas veces un dolor de cabeza para aquellos que no han programado con lenguajes Orientados a Objetos, pero tomando en cuenta las caracteristicas que lo hacen "especial" Java es pequeño, simple, seguro, Orientado a objetos, produce código byte neutral de la arquitectura, posee un colector de basura, es un lenguaje
de programación multitarea con un mecanismo de manejo de excepciones para la escritura distribuida.
Esto representa el resultado de casi 15 años de intentar proponer un idioma de programación bueno y el
ambiente para construir el software más simple y más fiable
JAVA es un lenguaje de propósito general que puede ser empleado para desarrollar cualquier tipo de aplicación principalmente aquellas referidas a internet.
Principales beneficios de Java
- Orientado a Objetos
- Interpretado y de plataforma
- independiente
- Dinámico y distribuido
- Soporta la Multitarea
- Robusto y Seguro
La plataforma Java independente del tipo de tecnologia a utilizar (JSE,JEE,JME) se compone de dos componentes escenciales:
- La maquina virtual(Java VM)
- Las bibliotecas estandar Java Aplication Programing interface (Java API)
Las librerías de clases simplifican la programación en Java y aceleran el desarrollo comparado con otros lenguajes.
Hay versiones distintas sobre el origen, concepción y desarrollo de Java, desde la que dice que éste fue un proyecto que estuvo durante mucho tiempo por distintos departamentos de Sun sin que nadie le prestara atención hasta la más difundida, que presenta a Java como un lenguaje pensado para pequeños electrodomésticos. Esto no se discutira en este documento porque no viene al caso.
Componentes de la Plataforma Java

La plataforma java
La plataforma Java provee:
- Compilador (javac.exe)
- Librería de Clases Base:classes.zip, rt.jar
- Debugger (jdb.exe)
- Interprete de Bytecode: La Máquina Virtual de
Java (java.exe)
- Generador de Documentación: (javadoc.exe)
- Utilidad para Empaquetado:(jar.exe)
- etc…
Otros Componentes de la plataforma java
- javadoc: Produce documentación HMTL a partir del código fuente.
- jdb: Depurador.
- jar: Crea un archivo que contiene a otros.
- jarsigner: Prepara archivos jar para ser autenticados
- javap: Es un descompilador que permite ver el contenido de las clases compiladas.
- javah: Crea cabeceras para el enlace con otros lenguajes.
- keytool: Crea pares de claves usadas para "firmar" y autenticar programas.
- policytool: Define los criterios de autenticación y las funciones permitidas para programas confiables.
- rmic: Crea el esqueleto para RMI.
- rmiregistry: inicia el registro remoto de objetos.
- serialVer: Crea un único identificador para la serialización.
La maquina virtual de Java
Una máquina virtual es el procesador en el cual se ejecuta el código (bytecode) de Java. Es un conjunto de instrucciones
que entiende al intérprete de Java.
El compilador javac produce los bytecodes a partir del archivo fuente .java. Los bytecodes corresponde al lenguaje de la Máquina Virtual.
La máquina virtual no corresponde a un sistema operativo o plataforma de hardware en particular, el archivo .class es portable a cualquier implementación de la Máquina Virtual.
La máquina virtual puede ser integrada (incrustada) dentro de otro ambiente tal como un web browser o un sistema operativo.
La máquina virtual utiliza un verificador de bytecode cuando se leen los bytecodes.
Areas de la maquina virtual de java
ejecucion de un programa en java
El compilador de Java genera un código intermedio independiente de la plataforma (bytecodes).
Los bytecodes pueden considerarse como lenguaje máquina para una máquina
virtual, la Máquina Virtual de Java (JVM); por lo tanto, cuando queremos
ejecutar una aplicación Java, al cargar el programa en memoria podemos:
Interpretar los bytecodes instrucción por instrucción.
Compilar los bytecodes para obtener el código máquina nativo necesario para ejecutar la aplicación en el ordenador a través de los compiladores J.I.T.
Arquitectura neutral de Java
Generalmnete un programa funciona para la plataforma para que fue diseñado.
Se han normalizado algunos lneguages de programacion como ANSI C++ con lo que se mantiene cierta compatibilidad, pero aun es necesario la recompilacion de codigo.
Cada fabricante añade funcionalidad no estandar a un lenguage de programacion y cada Sistema Operativo Restringe los servicios y capacidades de los mismos, esto me recuerda a mis dias en que construia una interfaz de puerto paralelo, no tuve problemas para construir el circuito electronico pero aun tenia ciertos problemas en el programa hecho en C++, ese tiempo como hasta ahora programaba con Dev-C++ y me inclinaba por usar el estandar ANSI C++ y me di la soprresa que este no implementaba fucionalidad para enviar señales al puerto paralelo, cosa que hacia muy bien el Turbo C++, una vez quise ver lo que habia en mi RAM y tampoco lo pude hacer puesto que mi S. O. Windows me restringia esta capacidad.
En general todo programa debe rediseñarse o adaptarse para que funcione en otra plataforma para la que fue diseñada.
pero Java rompe con estos esquemas porque fue diseñado para funcionar en sistemasa totalmente heterogenoes, java no depende de la platafroma de hardaware o software en la que se ejecuta. Java posee las mismas APIS para cada una de las plataformas en el que se ejecuta
El gran secreto radica en la geracion de Bytecodes independientes de la plataforma que se ejecutan en un entorno de ejecucion especifico y optimizado gracias a la JVM.
Java, Mitos y realidades
| Mito
| Realidad
|
| Java es un HTML mejorado |
Java es un lenguage de progracion completo, mientras que HTML es un lenguage de etiquetas, solo para mostrar informacion a travez de la Web. |
| Escribelo una vez, ejecutalo donde quieras. |
Se puede conseguir en cuanto a funcionalidad, las interfaces Swing de usuario varian ligeramente en cada platforma. |
| Java es un lenguage de programacion para entornos Web. |
Java es un lenguage de proposito genral, con el puedes cosntruir aplicaciones cliente servidor, stand alone, o sistemas complejos que se ejecuten dentro de una intranet o en internet. |
| Java acabara con Microsoft, C++, Power Builder, etc. |
Como todo en esta vida siempre existen ventajas y desventajas, Microsoft tiene su propia tecnologia llamada .NET , si bien es cierto en el mundo dos de las tecnologias para aplicaciones con arquitectura Web en comptencia son Java y .NET. |
| Javascript es una version simple de Java |
Javascript no tiene nada que ver con Java, Javascript es un lenguage para clientes Web desarrollado por Netscape que estaba al borde del olvido, debido a la facilidad con que se puede desabilitar, burlar, incluso los navegadores modernos bloquean los scripts de JavaScript. |
Ediciones del SDK de Java
Java posee tres ediciones, cada una es un mundo de tecnologia disponible para desarrollar infinidad de aplicaciones empresariales:
- JSE: desarollo de aplicaciones standalone.
- JEE: desarollo de aplicaciones empresariales, contiene a JSE.
- JME: desarollo de aplicaciones moviles.
|
|