java1

17
Esta obra está bajo una licencia de Esta obra está bajo una licencia de Creative Commons Creative Commons . Autor: Jorge Sánchez Asenjo (año 2005) Autor: Jorge Sánchez Asenjo (año 2005) http://www.jorgesanchez.net http://www.jorgesanchez.net email:[email protected] email:[email protected] Esta obra está bajo una licencia de Reconocimiento- Esta obra está bajo una licencia de Reconocimiento- NoComercial-CompartirIgual de CreativeCommons. Para ver NoComercial-CompartirIgual de CreativeCommons. Para ver una copia de esta licencia, visite: una copia de esta licencia, visite: http://creativecommons.org/licenses/by-nc-sa/2.0/es/ http://creativecommons.org/licenses/by-nc-sa/2.0/es/ o envíe una carta a: o envíe una carta a: Creative Commons, 559 Nathan Abbott Way, Stanford, Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. California 94305, USA.

Transcript of java1

Page 1: java1

Esta obra está bajo una licencia de Esta obra está bajo una licencia de Creative CommonsCreative Commons..Autor: Jorge Sánchez Asenjo (año 2005)Autor: Jorge Sánchez Asenjo (año 2005)

http://www.jorgesanchez.nethttp://www.jorgesanchez.netemail:[email protected]:[email protected]

Esta obra está bajo una licencia de Reconocimiento-NoComercial-Esta obra está bajo una licencia de Reconocimiento-NoComercial-CompartirIgual de CreativeCommons. Para ver una copia de esta CompartirIgual de CreativeCommons. Para ver una copia de esta

licencia, visite:licencia, visite:http://creativecommons.org/licenses/by-nc-sa/2.0/es/http://creativecommons.org/licenses/by-nc-sa/2.0/es/

o envíe una carta a:o envíe una carta a:Creative Commons, 559 Nathan Abbott Way, Stanford, California Creative Commons, 559 Nathan Abbott Way, Stanford, California

94305, USA.94305, USA.

Page 2: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. De dónde De dónde procede Javaprocede Java

En los ochenta aún reinaban los En los ochenta aún reinaban los lenguajes de alto nivel lenguajes de alto nivel estructuradosestructuradosSu problema: cuanto mayor es Su problema: cuanto mayor es el problema más difíciles son de el problema más difíciles son de llevar estos lenguajesllevar estos lenguajesSolución: Se adaptó la POO a los Solución: Se adaptó la POO a los lenguajes existenteslenguajes existentes

Page 3: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. De dónde De dónde procede Javaprocede Java

En especial fue famoso el lenguaje En especial fue famoso el lenguaje C++ que adaptó el C a la POOC++ que adaptó el C a la POODurante mucho tiempo fue el Durante mucho tiempo fue el lenguaje más utilizado (aún lo es en lenguaje más utilizado (aún lo es en muchos ambientes)muchos ambientes)Otras adaptaciones:Otras adaptaciones:

PascalPascalTurbo PascalTurbo PascalDelphiDelphiBasicBasicQuickBasicQuickBasicVisual BasicVisual Basic

Page 4: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. De dónde De dónde procede Javaprocede Java

Ventajas de C++Ventajas de C++Añadir soporte de POO (incluida Añadir soporte de POO (incluida la herencia múltiple)la herencia múltiple)Creación de potentes bibliotecas Creación de potentes bibliotecas por parte de los desarrolladores por parte de los desarrolladores (MFC por ejemplo)(MFC por ejemplo)Se permitía escribir código en CSe permitía escribir código en CEs muy velozEs muy veloz

Page 5: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. De dónde De dónde procede Javaprocede Java

Desventajas de C++Desventajas de C++C++ es compilado y se C++ es compilado y se produce un ejecutable válido produce un ejecutable válido sólo para una plataforma sólo para una plataforma concretaconcretaEs híbridoEs híbridoEs inseguroEs inseguroNo es apropiado para la webNo es apropiado para la web

Page 6: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. De dónde De dónde procede Javaprocede Java

En 1991 se crea Oak en Sun En 1991 se crea Oak en Sun MicrosystemsMicrosystemsEn 1995 aparece Java En 1995 aparece Java mejorando Oakmejorando OakSu sintaxis se basa en C++Su sintaxis se basa en C++Sin embargo su funcionamiento Sin embargo su funcionamiento es absolutamente diferentees absolutamente diferente

Page 7: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. JavaScript JavaScript

JavaScript JavaScript no tiene nada que ver no tiene nada que ver con Javacon JavaJavaScript fue desarrollado por JavaScript fue desarrollado por Netscape como lenguaje de Netscape como lenguaje de scriptsscripts basado en objetos basado en objetosSólo sirve para intentar dar Sólo sirve para intentar dar mayor dinamismo a una página mayor dinamismo a una página webweb

Page 8: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. Ventajas Ventajas

Su sintaxis es similar a C y C++Su sintaxis es similar a C y C++No hay punteros (más seguro)No hay punteros (más seguro)Totalmente orientado a objetosTotalmente orientado a objetosMuy preparado para aplicaciones TCP/IPMuy preparado para aplicaciones TCP/IPImplementa excepciones de forma nativaImplementa excepciones de forma nativaEs interpretadoEs interpretadoPermite Permite multihilosmultihilosAdmite firmas digitalesAdmite firmas digitalesTipos de datos más rigurosoTipos de datos más rigurosoEs independiente de la plataformaEs independiente de la plataforma

Page 9: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. Seguridad Seguridad

Como los programas Java no son Como los programas Java no son ejecutables, hay posibilidades de ejecutables, hay posibilidades de controlar la seguridadcontrolar la seguridad

La máquina virtual puede decidir no La máquina virtual puede decidir no ejecutar el código si detecta ejecutar el código si detecta instrucciones insegurasinstrucciones inseguras

Hay varios verificadores que se Hay varios verificadores que se aseguran de que el código es válidoaseguran de que el código es válido

Page 10: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. Aplicaciones Aplicaciones JavaJava

Applets.Applets. Aplicaciones embebidas dentro Aplicaciones embebidas dentro de una página web que se ejecutan en el de una página web que se ejecutan en el clienteclienteAplicaciones de consola.Aplicaciones de consola. Para mostrar Para mostrar en la consola de sistemaen la consola de sistemaAplicaciones gráficas.Aplicaciones gráficas. Haciendo uso de Haciendo uso de los objetos de sistema gráficoslos objetos de sistema gráficosServlets.Servlets. Aplicaciones embebidas en una Aplicaciones embebidas en una página web que se ejecutan en el servidorpágina web que se ejecutan en el servidor

Page 11: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. La máquina La máquina virtual Java (JVM)virtual Java (JVM)

Java es un lenguaje compilado e Java es un lenguaje compilado e interpretadointerpretadoEl código fuente en Java se El código fuente en Java se compila en forma de compila en forma de bytecodesbytecodes que es un código semicompiladoque es un código semicompiladoEl resultado es un archivo classEl resultado es un archivo classEste archivo luego es Este archivo luego es interpretado utilizando un interpretado utilizando un software llamado JVMsoftware llamado JVM

Page 12: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. La máquina La máquina virtual Java (JVM)virtual Java (JVM)

Java es un lenguaje compilado e Java es un lenguaje compilado e interpretadointerpretadoEl código fuente en Java se El código fuente en Java se compila en forma de compila en forma de bytecodesbytecodes que es un código semicompiladoque es un código semicompiladoEl resultado es un archivo classEl resultado es un archivo classEste archivo luego es Este archivo luego es interpretado utilizando un interpretado utilizando un software llamado JVMsoftware llamado JVM

Page 13: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. La máquina La máquina virtual Java (JVM)virtual Java (JVM)

Código fuente (.java)

bytecodes (.class)

Código Windows Código Linux

Compilador

Intérprete (JVM)

Page 14: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. JDKJDK

JDK = JDK = Java Developer KitJava Developer Kit, kit de , kit de desarrollo de Javadesarrollo de JavaEs el software que permite realizar Es el software que permite realizar el compilado y ejecución de los el compilado y ejecución de los programas Javaprogramas JavaEs gratuito e incluye visores de Es gratuito e incluye visores de código, depuradores y otras código, depuradores y otras utilidadesutilidadesSe descarga de java.sun.comSe descarga de java.sun.com

Page 15: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. Versiones de JavaVersiones de Java

El código que se puede escribir El código que se puede escribir usando el lenguaje Java se va usando el lenguaje Java se va mejorando y normalizandomejorando y normalizandoEl JDK evoluciona hacia nuevas El JDK evoluciona hacia nuevas versionesversionesHubo JDK 1.0 y 1.1Hubo JDK 1.0 y 1.1A partir de 1.2 se dice que el lenguaje A partir de 1.2 se dice que el lenguaje es Java 2es Java 2Actualmente la última versión es la Actualmente la última versión es la 1.5.01.5.0Los intérpretes de código deben de Los intérpretes de código deben de ser compatibles con esas versionesser compatibles con esas versiones

Page 16: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. Plataformas de JavaPlataformas de Java

J2SE.J2SE. Es la plataforma Java Es la plataforma Java Estándar (cuando se habla de Estándar (cuando se habla de Java a secas, se entiende que Java a secas, se entiende que nos referimos a esta plataforma)nos referimos a esta plataforma)J2EE.J2EE. Versión “enterprise”, Versión “enterprise”, empresarial y orientada al lado empresarial y orientada al lado del servidor.del servidor.J2ME.J2ME. Versión para dispositivos Versión para dispositivos portátilesportátiles

Page 17: java1

Copyleft - Jorge Sánchez ‘2005 – www.jorgesanchez.net

Introducción a Java.Introducción a Java. Editores y entornosEditores y entornos

Net Beans (Free code)Net Beans (Free code)Eclipse (Free code)Eclipse (Free code)Sun ONE StudioSun ONE StudioBorland JBorland JBBuilderuilderOracle JDeveloperOracle JDeveloperVisual AgeVisual AgeVisual CaféVisual CaféVisual J#.Net y Visual J++ (no estándar) Visual J#.Net y Visual J++ (no estándar) IntelliJ IdeaIntelliJ IdeaKawa ProKawa ProJCreatorJCreator