17
JAVA JAVA

JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Embed Size (px)

Citation preview

Page 1: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

JAVAJAVA

Page 2: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

DEFINICION:DEFINICION:

JavaJava es un lenguaje de programación es un lenguaje de programación orientado a objetos desarrollado por orientado a objetos desarrollado por SunSun Microsystems a principios de los Microsystems a principios de los años 90. El lenguaje en sí mismo años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C+toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos +, pero tiene un modelo de objetos más simple y elimina herramientas más simple y elimina herramientas de bajo nivel, que suelen inducir a de bajo nivel, que suelen inducir a muchos errores, como la muchos errores, como la manipulación directa de punteros o manipulación directa de punteros o memoria. memoria.

Page 3: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Las aplicaciones Java están Las aplicaciones Java están típicamente compiladas en un típicamente compiladas en un bytecode, aunque la compilación en bytecode, aunque la compilación en código máquina nativo también es código máquina nativo también es posible. En el tiempo de ejecución, el posible. En el tiempo de ejecución, el bytecodebytecode es normalmente interpretado es normalmente interpretado o compilado a código nativo para la o compilado a código nativo para la ejecución, aunque la ejecución directa ejecución, aunque la ejecución directa por hardware del por hardware del bytecodebytecode por un por un procesador Java también es posible.procesador Java también es posible.

Page 4: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

La implementación original y de La implementación original y de referencia del compilador, la máquina referencia del compilador, la máquina virtual y las librerías de clases de Java virtual y las librerías de clases de Java fueron desarrollados por Sun fueron desarrollados por Sun Microsystems en 1995. Desde entonces, Microsystems en 1995. Desde entonces, Sun ha controlado las especificaciones, Sun ha controlado las especificaciones, el desarrollo y evolución del lenguaje a el desarrollo y evolución del lenguaje a través del Java Community Process, si través del Java Community Process, si bien otros han desarrollado también bien otros han desarrollado también implementaciones alternativas de estas implementaciones alternativas de estas tecnologías de Sun, algunas incluso bajo tecnologías de Sun, algunas incluso bajo licencias de software libre.licencias de software libre.

Page 5: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Características del lenguaje Características del lenguaje JAVAJAVA

Page 6: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Lenguaje simpleLenguaje simple

Java posee una curva de aprendizaje muy Java posee una curva de aprendizaje muy rápida. Resulta relativamente sencillo rápida. Resulta relativamente sencillo escribir applets interesantes desde el escribir applets interesantes desde el principio. Todos aquellos familiarizados con principio. Todos aquellos familiarizados con C++ encontrarán que Java es más sencillo, C++ encontrarán que Java es más sencillo, ya que se han eliminado ciertas ya que se han eliminado ciertas características, como los punteros. Debido características, como los punteros. Debido a su semejanza con C y C++, y dado que la a su semejanza con C y C++, y dado que la mayoría de la gente los conoce aunque sea mayoría de la gente los conoce aunque sea de forma elemental, resulta muy fácil de forma elemental, resulta muy fácil aprender Java. Los programadores aprender Java. Los programadores experimentados en C++ pueden migrar experimentados en C++ pueden migrar muy rápidamente a Java y ser productivos muy rápidamente a Java y ser productivos en poco tiempo. en poco tiempo.

Page 7: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Orientado a objetosOrientado a objetos

Java fue diseñado como un lenguaje Java fue diseñado como un lenguaje orientado a objetos desde el principio. orientado a objetos desde el principio. Los objetos agrupan en estructuras Los objetos agrupan en estructuras encapsuladas tanto sus datos como encapsuladas tanto sus datos como los métodos (o funciones) que los métodos (o funciones) que manipulan esos datos. La tendencia manipulan esos datos. La tendencia del futuro, a la que Java se suma, del futuro, a la que Java se suma, apunta hacia la programación apunta hacia la programación orientada a objetos, especialmente orientada a objetos, especialmente en entornos cada vez más complejos en entornos cada vez más complejos y basados en red. y basados en red.

Page 8: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

HISTORIAHISTORIA

La tecnología Java se creó como una La tecnología Java se creó como una herramienta de programación para herramienta de programación para ser usada en un proyecto de set-top-ser usada en un proyecto de set-top-box en una pequeña operación box en una pequeña operación denominada denominada the Green Projectthe Green Project en Sun en Sun Microsystems en el año1991. El Microsystems en el año1991. El equipo (equipo (Green TeamGreen Team), compuesto por ), compuesto por trece personas y dirigido por James trece personas y dirigido por James Gosling, trabajó durante 18 meses en Gosling, trabajó durante 18 meses en Sand Hill Road en Menlo Park en su Sand Hill Road en Menlo Park en su desarrollo.desarrollo.

Page 9: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

El lenguaje se denominó inicialmente El lenguaje se denominó inicialmente OakOak (por (por un roble que había fuera de la oficina de un roble que había fuera de la oficina de Gosling), luego pasó a denominarse Gosling), luego pasó a denominarse GreenGreen tras tras descubrir que descubrir que OakOak era ya una marca comercial era ya una marca comercial registrada para adaptadores de tarjetas registrada para adaptadores de tarjetas gráficas y finalmente se renombró a gráficas y finalmente se renombró a JavaJava..

El término Java fue acuñado en una cafetería El término Java fue acuñado en una cafetería frecuentada por algunos de los miembros del frecuentada por algunos de los miembros del equipo. Pero no está claro si es un acrónimo o equipo. Pero no está claro si es un acrónimo o no, aunque algunas fuentes señalan que podría no, aunque algunas fuentes señalan que podría tratarse de las iniciales de sus creadores: tratarse de las iniciales de sus creadores: JJames ames Gosling, Gosling, AArthur rthur VVan Hoff, y an Hoff, y AAndy Bechtolsheimndy Bechtolsheim..

Page 10: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Los objetivos de Gosling eran implementar Los objetivos de Gosling eran implementar una máquina virtual y un lenguaje con una una máquina virtual y un lenguaje con una estructura y sintaxis similar a C++.Entre estructura y sintaxis similar a C++.Entre junio y julio de 1994, tras una sesión junio y julio de 1994, tras una sesión maratoniana de tres días entre John Gaga, maratoniana de tres días entre John Gaga, James Gosling, Joy Naughton, Wayne James Gosling, Joy Naughton, Wayne Rosing y Eric Schmidt, el equipo reorientó Rosing y Eric Schmidt, el equipo reorientó la plataforma hacia la Web. El 9 de enero la plataforma hacia la Web. El 9 de enero del año siguiente, 1996, Sun fundó el del año siguiente, 1996, Sun fundó el grupo empresarial JavaSoft para que se grupo empresarial JavaSoft para que se encargase del desarrollo tecnológico. Dos encargase del desarrollo tecnológico. Dos semanas más tarde la primera versión de semanas más tarde la primera versión de Java fue publicada. Java fue publicada.

Page 11: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

OBJETIVOSOBJETIVOS Debería usar la metodología de la programación Debería usar la metodología de la programación

orientada a objetos. orientada a objetos. Debería permitir la ejecución de un mismo Debería permitir la ejecución de un mismo

programa en múltiples sistemas operativos. programa en múltiples sistemas operativos. Debería incluir por defecto soporte para trabajo en Debería incluir por defecto soporte para trabajo en

red. red. Debería diseñarse para ejecutar código en Debería diseñarse para ejecutar código en

sistemas remotos de forma segura. sistemas remotos de forma segura. Debería ser fácil de usar y tomar lo mejor de otros Debería ser fácil de usar y tomar lo mejor de otros

lenguajes orientados a objetos, como C++. lenguajes orientados a objetos, como C++. Para conseguir la ejecución de código remoto y el Para conseguir la ejecución de código remoto y el

soporte de red, los programadores de Java a veces soporte de red, los programadores de Java a veces recurren a extensiones como CORBA (Common recurren a extensiones como CORBA (Common Object Request Broker Architecture), Internet Object Request Broker Architecture), Internet Communicatons Energine o OSGI respectivamente.Communicatons Energine o OSGI respectivamente.

Page 12: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

SINTAXISSINTAXIS

La sintaxis de Java se deriva en gran La sintaxis de Java se deriva en gran medida de C++. Pero a diferencia de éste, medida de C++. Pero a diferencia de éste, que combina la sintaxis para programación que combina la sintaxis para programación genérica, estructurada y orientada a genérica, estructurada y orientada a objetos, Java fue construido desde el objetos, Java fue construido desde el principio para ser completamente principio para ser completamente orientado a objetos. Todo en Java es un orientado a objetos. Todo en Java es un objeto (salvo algunas excepciones), y todo objeto (salvo algunas excepciones), y todo en Java reside en alguna clase en Java reside en alguna clase (recordemos que una clase es un molde en (recordemos que una clase es un molde en donde pueden crearse varios objetos).donde pueden crearse varios objetos).

Page 13: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

Entornos de Entornos de funcionamientofuncionamiento

El diseño de Java, el respaldo de la El diseño de Java, el respaldo de la industria y su fácil portabilidad han industria y su fácil portabilidad han hecho de Java uno de los lenguajes hecho de Java uno de los lenguajes con un mayor crecimiento y con un mayor crecimiento y amplitud de uso en distintos amplitud de uso en distintos ámbitos de la industria de la ámbitos de la industria de la informática. informática.

Se usa en:Se usa en:

Page 14: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

En dispositivos móviles y En dispositivos móviles y sistemas empotrados.sistemas empotrados.

Desde la creación de la especificación J2ME Desde la creación de la especificación J2ME (Java 2 Platform, Micro Edition), una versión del (Java 2 Platform, Micro Edition), una versión del entorno de ejecución Java reducido y altamente entorno de ejecución Java reducido y altamente optimizado, especialmente desarrollado para el optimizado, especialmente desarrollado para el mercado de dispositivos electrónicos de mercado de dispositivos electrónicos de consumo se ha producido toda una revolución consumo se ha producido toda una revolución en lo que a la extensión de Java se refiere.en lo que a la extensión de Java se refiere.

Es posible encontrar microprocesadores Es posible encontrar microprocesadores específicamente diseñados para ejecutar específicamente diseñados para ejecutar bytecode Java y software Java para tarjetas bytecode Java y software Java para tarjetas inteligentes (JavaCard), teléfonos móviles, inteligentes (JavaCard), teléfonos móviles, buscapersonas, set-top-boxes, sintonizadores buscapersonas, set-top-boxes, sintonizadores de TV y otros pequeños electrodomésticos.de TV y otros pequeños electrodomésticos.

Page 15: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

En el navegador web En el navegador web Desde la primera versión de java existe la Desde la primera versión de java existe la

posibilidad de desarrollar pequeñas aplicaciones posibilidad de desarrollar pequeñas aplicaciones (Applets) en Java que luego pueden ser incrustadas (Applets) en Java que luego pueden ser incrustadas en una página HTML para que sean descargadas y en una página HTML para que sean descargadas y ejecutadas por el navegador web. Estas mini-ejecutadas por el navegador web. Estas mini-aplicaciones se ejecutan en una JVM que el aplicaciones se ejecutan en una JVM que el navegador tiene configurada como extensión (navegador tiene configurada como extensión (plug-plug-inin) en un contexto de seguridad restringido ) en un contexto de seguridad restringido configurable para impedir la ejecución local de configurable para impedir la ejecución local de código potencialmente malicioso.código potencialmente malicioso.

El éxito de este tipo de aplicaciones (la visión del El éxito de este tipo de aplicaciones (la visión del equipo de Gosling) no fue realmente el esperado equipo de Gosling) no fue realmente el esperado debido a diversos factores, siendo quizás el más debido a diversos factores, siendo quizás el más importante la lentitud y el reducido ancho de banda importante la lentitud y el reducido ancho de banda de las comunicaciones en aquel entonces que de las comunicaciones en aquel entonces que limitaba el tamaño de las applets que se limitaba el tamaño de las applets que se incrustaban en el navegador.incrustaban en el navegador.

Page 16: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en

En sistemas de servidor En sistemas de servidor En la parte del servidor, Java es más En la parte del servidor, Java es más

popular que nunca, desde la aparición de popular que nunca, desde la aparición de la especificación de Servlets y JSP (Java la especificación de Servlets y JSP (Java Server Pages).Server Pages).

Hasta entonces, las aplicaciones web Hasta entonces, las aplicaciones web dinámicas de servidor que existían se dinámicas de servidor que existían se basaban fundamentalmente en basaban fundamentalmente en componentes CGI y lenguajes componentes CGI y lenguajes interpretados. Ambos tenían diversos interpretados. Ambos tenían diversos inconvenientes (fundamentalmente inconvenientes (fundamentalmente lentitud, elevada carga computacional o lentitud, elevada carga computacional o de memoria y propensión a errores por de memoria y propensión a errores por su interpretación dinámica).su interpretación dinámica).

Page 17: JAVA. DEFINICION: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en