SlideShare ist ein Scribd-Unternehmen logo
1 von 32
• Alumno: Pedro Beltrán
             Canessa
• Facultad: Ingeniería
• Escuela: Ingeniería de Sistemas
• Universidad Los Ángeles de Chimbote
• Sede: Chimbote
• Curso: Tecnología de Información y Comunicaciones




09/04/2009         INGº PEDRO BELTRÁN CANESSA         1
09/04/2009   INGº PEDRO BELTRÁN CANESSA   2
PROGRAMACION EN JAVA
              UNIVERSIDAD LOS ÁNGELES DE
                      CHIMBOTE
                        CURSO:
              TÉCNICAS DE PROGRAMACIÓN


  DOCENTE RESPONSABLE:
  INGº PEDRO BELTRÁN CANESSA




09/04/2009                 INGº PEDRO BELTRÁN CANESSA   3
PRIMERA SESIÓN DE APRENDIZAJE




09/04/2009   INGº PEDRO BELTRÁN CANESSA   4
¿QUE CONCEPTOS BÁSICOS
                     SE DEBEN CONOCER PARA PROGRAMAR?


POR EJEMPLO, LOS SIGUIENTES:
 EL ALGORITMO: ES UNA SECUENCIA DE PASOS QUE PERMITEN RESOLVER UN
  PROBLEMA DETERMINADO. LOS ALGORITMOS SON INDEPENDIENTES DEL
  LENGUAJE DE PROGRAMACIÓN ASÍ COMO DEL HARDWARE A UTILIZAR.
 UN PROGRAMA: ESTA CONFORMADO POR UNA SERIE DE INSTRUCCIONES
  QUE ESPECIFICAN QUE TIPO DE OPERACIONES DEBE REALIZAR LA
  COMPUTADORA. TODO PROGRAMA SE ESCRIBE UTILIZANDO UN LENGUAJE DE
  PROGRAMACIÓN.
 EL LENGUAJE DE PROGRAMACIÓN: SE UTILIZA PARA ESCRIBIR
  PROGRAMAS, ESTO IMPLICA CONOCER LA SINTAXIS DEL LENGUAJE
  UTILIZADO, ASÍ COMO LAS DIFERENTES INSTRUCCIONES QUE SE PUEDEN
  APLICAR.


  09/04/2009             INGº PEDRO BELTRÁN CANESSA            5
¿CÓMO ENTIENDE LA MÁQUINA EL
                  LENGUAJE DE PROGRAMACIÓN?
EXISTE UN PROGRAMA LLAMADO COMPILADOR, QUE
 PERMITE CONVERTIR EL PROGRAMA ELABORADO POR
 EL USUARIO, DENOMINADO FUENTE, ESCRITO EN
 LENGUAJE DE ALTO NIVEL, EN CÓDIGO BINARIO, QUE SÍ
 ES COMPRENDIDO POR LA MÁQUINA. DE ESTO RESULTA
 UN PROGRAMA LLAMADO EJECUTABLE, EL CUAL ES
 DIRECTAMENTE DESARROLLADO POR LA MÁQUINA
 DONDE RESIDE EL PROGRAMA. POR EJEMPLO: UN
 PROGRAMA EN C++, NECESITA DE UN COMPILADOR DE
 C++ PARA PODER SER EJECUTADO.



  09/04/2009       INGº PEDRO BELTRÁN CANESSA   6
COMPILACIÓN DE UN PROGRAMA ESTÁNDAR




             PROGRAMA FUENTE




                                   PROGRAMA COMPILADOR




                                                     PROGRAMA OBJETO O
                                                     PROGRAMA EJECUTABLE




09/04/2009          INGº PEDRO BELTRÁN CANESSA                             7
¿ Y QUE CLASES DE
                          LENGUAJES DE
                         PROGRAMACIÓN
                            EXISTEN?
LA CLASIFICACIÓN DE LOS LENGUAJES DE
 PROGRAMACIÓN, SE HACE EN FUNCIÓN DE LA
 PROXIMIDAD DEL LENGUAJE, YA SEA QUE ESTÉ
 ORIENTADO HACIA LA MÁQUINA O HACIA EL
 USUARIO, LO CUAL ESTABLECE TRES CATEGORÍAS
 A CONSIDERAR:


 09/04/2009      INGº PEDRO BELTRÁN CANESSA   8
CATEGORÍAS:
1. EL LENGUAJE DE BAJO NIVEL O LENGUAJE DE MÁQUINA: ES EL QUE
   ENTIENDE DIRECTAMENTE LA COMPUTADORA Y UTILIZA EL CÓDIGO
   BINARIO (0 y 1). POR EXCELENCIA, EL LENGUAJE DE PROGRAMACIÓN
   QUE MÁS SE IDENTIFICA CON ESTA CATEGORIA ES EL LENGUAJE
   ENSAMBLADOR (ASSEMBLER). ESTE LENGUAJE UTILIZA UNA SERIE DE
   INSTRUCCIONES CONOCIDAS COMO NEMOTÉCNICOS (ADD PARA LA
   ADICIÓN, SUB PARA LA SUSTRACCIÓN, DIV PARA LA DIVISIÓN, ETC.), EN
   LUGAR DE CADENA DE BYTES.

2. EL LENGUAJE DE ALTO NIVEL: SON LOS MÁS UTILIZADOS POR LOS
   PROGRAMADORES Y UTILIZAN PALABRAS CLAVES PARECIDAS AL
   LENGUAJE COMÚN UTILIZADO POR LAS PERSONAS, POR EJEMPLO:
   TODOS LOS LENGUAJES VISUALES.

3. EL LENGUAJE DE NIVEL MEDIO: SE CONSIDERAN EN UNA CATEGORÍA
   INTERMEDIA, ES DECIR QUE POSEEN CARACTERÍSTICAS DE AMBOS
   LENGUAJES DESCRITOS ANTERIORMENTE, POR EJEMPLO: EL LENGUAJE
   C++.


   09/04/2009              INGº PEDRO BELTRÁN CANESSA             9
¿Qué es JAVA?

EN LA ACTUALIDAD, ES EL LENGUAJE DE
 PROGRAMACIÓN, QUE SE UTILIZA CON MAS
 ACEPTACIÓN EN EL DESARROLLO DE SOFTWARE
 EMPRESARIAL.
APARECE EN 1995, CUANDO LA EMPRESA SUN
 MICROSYSTEM LO LANZA AL MERCADO DEL SOFTWARE
 Y DE INMEDIATO LO INCORPORAN A DIFERENTES
 PRODUCTOS DE SOFTWARE.



 09/04/2009      INGº PEDRO BELTRÁN CANESSA   10
Resumen de la Historia de JAVA (I)
  EL ORIGEN DEL LENGUAJE JAVA TIENE DIFERENTES
  VERSIONES, EL SIGUIENTE ES UN BREVE RESUMEN:
 1992: LA COMPAÑÍA SUN MICROSYSTEMS LLEVA A CABO EL
  PROYECTO “GREEN”, PARA COMUNICAR DIVERSOS
  APARATOS O DISPOSITIVOS ELECTRÓNICOS. EL PROTOTIPO
  ERA UN SISTEMA OPERATIVO DISTRIBUÍDO LLAMADO
  “Star7”, DONDE CADA DISPOSITIVO ERA PARTE DEL TODO.
  SE CREA EL LENGUAJE “OAK” CON SU RESPECTIVO
  INTÉRPRETE Y CLASES CON ESTE LENGUAJE PARA ELABORAR
  LAS GUI (GRAPHIC USER INTERFACE – INTERFAZ GRÁFICA DE
  USUARIO).



 09/04/2009          INGº PEDRO BELTRÁN CANESSA     11
Resumen de la Historia de JAVA (II)

 1993 (MARZO): LA COMPAÑÍA FIRST
  PERSON, SUBSIDIARIA DE SUN, RESPONDE A UNA
  PETICIÓN DE OFERTAS PARA EL PROYECTO DE TELEVISIÓN
  INTERACTIVA DE LA COMPAÑÍA TIME WARNER. ELLOS
  REQUERÍAN DE UN PEQUEÑO SISTEMA OPERATIVO EN
  MICRO CÓDIGO ORIENTADO A OBJETOS, CAPAZ DE
  SUMINISTRAR FLUJOS DE VIDEOS MPEG SOBRE REDES
  ATM. SUN PIERDE ESTE NEGOCIO Y TAMPOCO LLEGA A
  UN ACUERDO CON OTRA COMPAÑÍA DE TELEVISIÓN
  POR CABLE.


 09/04/2009         INGº PEDRO BELTRÁN CANESSA    12
Resumen de la Historia de JAVA (III)

1994: SUN IMPLEMENTA UN NAVEGADOR
 DE WEB LLAMADO “Web Runner”, QUE
 PODÍA EJECUTAR CLASES TRASFERIDAS
 DESDE UN SERVIDIR HTTP. ESTO SERÍA LA
 PRIMERA APPLET: APARECE LA ANIMACIÓN
 DE UNA MASCOTA LLAMADA “DUKE”,
 SALUDANDO DESDE UNA PÁGINA.


 09/04/2009      INGº PEDRO BELTRÁN CANESSA    13
Resumen de la Historia de JAVA (IV)

1995 (ENERO): CAMBIAN DE NOMBRE
 A OAK POR JAVA Y A “Web Runner”
 POR “Hot Java”. EN NOVIEMBRE
 APARECE EN LA WEB LA 1ª VERSIÓN
 BETA OFICIAL DE JAVA: EL JDK 1.0 (JAVA
 DEVELOPMENT KIT – EQUIPO DE
 DESARROLLO JAVA).

 09/04/2009      INGº PEDRO BELTRÁN CANESSA   14
Resumen de la Historia de JAVA (V)

1995 (DICIEMBRE): SE LIBERA A EL JDK
 1.1. ACTUALMENTE SE LIBERÓ LA
 PLATAFORMA JAVA 2 SDK STANDAR
 EDITION (J2SE) VERSIÓN 1.4.1 QUE ES
 EL PRODUCTO QUE ESTAMOS
 TRATANDO EN EL PRESENTE CURSO.


 09/04/2009     INGº PEDRO BELTRÁN CANESSA   15
Ediciones de JAVA

SUN MICROSYSTEMS HA
DESARROLLADO TRES EDICIONES DE
PLATAFORMAS DIFERENTES, CADA UNA
DE ELLAS DESTINADAS A CUBRIR LAS
DIFERENTES NECESIDADES DE
PROGRAMACIÓN EN LA EMPRESA
MODERNA.

09/04/2009   INGº PEDRO BELTRÁN CANESSA   16
Ediciones de JAVA (I)
PLATAFORMA JAVA 2 SDK STANDARD EDITION
 (J2SE): ES LA MÁS UTILIZADA DENTRO DEL
 ENTORNO JAVA, PERMITE CREAR APLICACIONES
 DE PROPÓSITO GENERAL QUE SE PUEDEN
 EJECUTAR EN DIFERENTES PLATAFORMAS, ASÍ
 COMO APPLETS. CONTIENE UN CONJUNTO DE
 APIs (INTERFACES DE PROGRAMACIÓN DE
 APLICACIONES), QUE PERMITEN CREAR LAS
 APLICACIONES.


 09/04/2009     INGº PEDRO BELTRÁN CANESSA   17
Ediciones de JAVA (II)
PLATAFORMA JAVA 2 SDK ENTERPRISE
 EDITION (J2EE): J2EE ES UNA PLATAFORMA
 QUE PERMITE CREAR APLICACIONES DE
 SERVIDOR. LAS APLICACIONES QUE SE VAN
 A EJECUTAR EN UN SERVIDOR, TIENEN
 REQUISITOS ADICIONALES EN LA FASE DE
 DESARROLLO QUE SON PROPORCIONADOS
 POR LA PLATAFORMA J2EE.



 09/04/2009    INGº PEDRO BELTRÁN CANESSA   18
Ediciones de JAVA (III)
 PLATAFORMA JAVA 2 SDK MICRO EDITION (J2ME): J2ME ES UNA
  PLATAFORMA QUE PERMITE CREAR APLICACIONES JAVA PARA
  MICRO DISPOSITIVOS, COMO TELÉFONOS CELULARES, PDA, DEL
  INGLÉS PERSONAL DIGITAL ASSISTANT (AYUDANTE PERSONAL
  DIGITAL), QUE ES UN COMPUTADOR DE MANO ORIGINALMENTE
  DISEÑADO COMO AGENDA ELECTRÓNICA (CALENDARIO, LISTA DE
  CONTACTOS, BLOC DE NOTAS Y MEMOS) CON UN SISTEMA DE
  RECONOCIMIENTO DE ESCRITURA. HOY DÍA SE PUEDE USAR COMO
  UNA COMPUTADORA DOMÉSTICA (VER PELÍCULAS, CREAR
  DOCUMENTOS, JUEGOS, CORREO ELECTRÓNICO, NAVEGAR POR
  INTERNET, ETC.). EN NUESTRO CURSO UTILIZAREMOS LA
  PLATAFORMA JAVA 2 STANDAR EDITION (J2SE).




 09/04/2009           INGº PEDRO BELTRÁN CANESSA       19
¿Es complicado
              programar en JAVA?
EL PROPÓSITO DEL CURSO ES INICIAR AL
 ESTUDIANTE EN LA CREACIÓN DE
 PROGRAMAS UTILIZANDO JAVA EN UN
 PROCESO SECUENCIAL, QUE PERMITA
 CAPTAR LOS DIFERENTES CONCEPTOS QUE
 SE EXPONDRÁN EN LOS SIGUIENTES
 CAPÍTULOS.

 09/04/2009       INGº PEDRO BELTRÁN CANESSA   20
¿Entonces es fácil
                      programar en JAVA?
EXISTE UNA DIFICULTAD INICIAL QUE SE DEBE DE
 CONOCER ANTES DE EMPEZAR A ESCRIBIR PROGRAMAS
 CON JAVA, Y ESTO SE DEBE A QUE EL ALUMNO SE
 ENCONTRARÁ CON UNA SERIE DE TÉRMINOS
 APARENTEMENTE DIFÍCILES Y DESCONOCIDOS DE
 EXPLICAR EN EL CONTEXTO. SIN EMBARGO, CONFORME
 VAYA AVANZANDO, SE IRÁ FAMILIARIZANDO
 PAULATINAMENTE Y ES POR ELLO QUE SE DEBE TENER
 CONOCIMIENTO DE ALGUNOS CONCEPTOS BÁSICOS QUE
 PERMITAN TENER UN SUSTENTO SOBRE EL CUAL SE
 DESARROLLEN LOS TEMAS POSTERIORES.


  09/04/2009      INGº PEDRO BELTRÁN CANESSA   21
¿CUÁLES SON LAS PRINCIPALES
                      APLICACIONES DE
                            JAVA?

 ESTE LENGUAJE DE PROGRAMACIÓN ES
   UTILIZADO PRINCIPALMENTE PARA
   DESARROLLAR LOS SIGUIENTES TIPOS DE
   PROGRAMAS:
1. APLICACIONES DE PROPÓSITO GENERAL.
2. ELABORACIÓN DE APPLETS
   (APLICACIONES PARA INTERNET).


 09/04/2009    INGº PEDRO BELTRÁN CANESSA      22
¿ Y QUE SON LOS “APPLETS”?
UN APPLET ES UNA PEQUEÑA APLICACIÓN QUE SE
 ALMACENA EN UN SERVIDOR WEB (HTTP: HYPERTEXT
 TRANSFER PROTOCOL - PROTOCOLO DE TRANSFERENCIA
 DE HIPERTEXTO), PARA QUE PUEDA SER ACCEDIDA POR
 UNA ESTACIÓN CLIENTE (PC-USUARIO), TRANSMITIDA A
 TRAVÉS DE LA RED (INTERNET / INTRANET), QUE SE
 INSTALA AUTOMÁTICAMENTE Y ES EJECUTADA POR EL
 PROGRAMA NAVEGADOR WEB, COMO PARTE DE UN
 DOCUMENTO HTML: HYPERTEXT MARKUP LANGUAGE -
 LENGUAJE DE MARCAS HIPERTEXTUALES.




 09/04/2009        INGº PEDRO BELTRÁN CANESSA   23
¿ PORQUÉ SE DICE QUE JAVA ES
                        “SEGURO”?
UN PROGRAMA PUEDE TENER FUNCIONES
 GLOBALES (FUNCIONAN PARA TODO EL
 PROGRAMA), Y FUNCIONES LOCALES (FUNCIONAN
 PARA PARTE DEL PROGRAMA). LOS PROGRAMAS
 DE JAVA NO PUEDEN INVOCAR A FUNCIONES
 GLOBALES Y TENER ACCESO A RECURSOS DEL
 SISTEMA DE MANERA ARBITRARIA. POR LO
 TANTO, SE PUEDE EJERCER UN CONTROL SOBRE
 LOS PROGRAMAS EJECUTABLES DE JAVA, COSA
 QUE NO ES POSIBLE EN OTROS PROGRAMAS.



 09/04/2009     INGº PEDRO BELTRÁN CANESSA   24
¿ PORQUÉ SE DICE QUE JAVA ES
                        “ROBUSTO”?
JAVA VERIFICA EL CÓDIGO DEL PROGRAMA
 MIENTRAS SE ESCRIBE Y UNA VEZ MÁS ANTES DE
 EJECUTARLO. ESTO PERMITE QUE EL PROGRAMA
 SEA PREDECIBLE, INCLUSO BAJO DIVERSAS
 CONDICIONES. POR EJEMPLO: JAVA AYUDA A
 EVITAR FALLAS POR CONDICIONES
 EXCEPCIONALES, TALES COMO LA DIVISIÓN POR
 CERO, EL ACCESO A ARCHIVOS
 INEXISTENTES, ETC., MEDIANTE UN MANEJO DE
 EXCEPCIONES ORIENTADO A OBJETOS.



 09/04/2009      INGº PEDRO BELTRÁN CANESSA   25
¿ QUÉ ES LA ARQUITECTURA
                        NEUTRAL DE JAVA?
CUANDO SE CREÓ JAVA, SE TOMARON EN
 CUENTA CIERTAS CONSIDERACIONES, DE
 MANERA QUE EL PROGRAMA PUEDA
 “ESCRIBIRSE UNA SOLA VEZ, EJECUTARSE EN
 CUALQUIER SITIO, EN CUALQUIER MOMENTO Y
 PARA SIEMPRE”. LOS PROGRAMADORES DE JAVA
 SE BENEFICIAN PORQUE DESARROLLAN EL
 CÓDIGO UNA SOLA VEZ, SIN NECESIDAD DE
 ADAPTAR SUS APLICACIONES A CADA UNA DE LAS
 PLATAFORMAS DE HW Y SW.


 09/04/2009     INGº PEDRO BELTRÁN CANESSA    26
¿ JAVA UTILIZA COMPILADOR O
                             INTÉRPRETE?
JAVA UTILIZA AMBOS. COMO ANTERIORMENTE YA
 HEMOS DEFINIDO LO QUE ES UN COMPILADOR, AHORA
 TENDRÍAMOS QUE DEFINIR LO QUE ES UN INTÉRPRETE.
UN INTÉRPRETE ES UN PROGRAMA QUE EFECTÚA LA
 TRADUCCIÓN Y EJECUCIÓN SIMULTÁNEA PARA CADA
 UNA DE LAS SENTENCIAS DEL PROGRAMA. PARA
 EJECUTAR UN PROGRAMA SE NECESITA DEL PROGRAMA
 INTÉRPRETE QUE ESTÁ INSTALADO EN LA MÁQUINA QUE
 SE VA A EJECUTAR. UN PROGRAMA QUE UTILIZA UN
 INTÉRPRETE ES MÁS LENTO QUE EL QUE UTILIZA UN
 COMPILADOR.



 09/04/2009       INGº PEDRO BELTRÁN CANESSA   27
¿ CÓMO TRABAJA EL INTÉRPRETE
                               DE JAVA?
 JAVA ES UN LENGUAJE INTERPRETADO Y DE ALTO
  RENDIMIENTO. JAVA COMPILA A UNA REPRESENTACIÓN
  INTERMEDIA DENOMINADA CÓDIGO DE BYTES O
  BYTECODES, EL QUE SE PUEDE INTERPPRETAR EN CUALQUIER
  SISTEMA QUE TENGA UN INTÉRPRETE DE JAVA. ESTE CÓDIGO
  DE BYTES O BYTECODES FUE DISEÑADO DE TAL MANERA QUE
  SEA SENCILLA LA TRADUCCIÓN A CÓDIGO DE MÁQUINA
  NATIVO. CON ESTO SE LOGRÓ QUE EL INTÉRPETE SEA DE ALTO
  RENDIMIENTO.
 CADA PARTE DE UN PROGRAMA EN JAVA SE REDUCE A UNA
  SECUENCIA DE BYTES QUE REPRESENTAN INSTRUCCIONES EN
  UNA “MÁQUINA VIRTUAL” (JAVA VIRTUAL MACHINE), Y NO EN
  EL PROCESADOR DE UNA MÁQUINA ESPECÍFICA.



  09/04/2009          INGº PEDRO BELTRÁN CANESSA     28
¿Qué es un BYTECODE?
• BYTECODE: CÓDIGO GENERADO POR EL COMPILADOR DE
  JAVA Y QUE ES EJECUTADO POR EL INTÉRPRETE DEL
  LENGUAJE (JVM). ES INDEPENDIENTE DE PLATAFORMA.
• EL BYTECODE: RECIBE ESTE NOMBRE PORQUE
  GENERALMENTE CADA CÓDIGO DE OPERACIÓN TIENE
  UNA LONGITUD DE UN BYTE, SI BIEN LA LONGITUD DEL
  CÓDIGO DE LAS INSTRUCCIONES VARÍA, CADA
  INSTRUCCIÓN TIENE UN CÓDIGO DE OPERACIÓN ENTRE 0
  Y 255 SEGUIDO DE PARÁMETROS TALES COMO LOS
  REGISTROS O LAS DIRECCIONES DE MEMORIA.



 09/04/2009        INGº PEDRO BELTRÁN CANESSA   29
¿Qué es un Archivo o Fichero de
                           BYTECODES?
 CON JAVA, SE PUEDE “ESCRIBIR UNA VEZ Y EJECUTAR EN
  CUALQUIER PARTE”. ESTO SIGNIFICA QUE CUANDO SE
  COMPILA UN PROGRAMA NO SE GENERAN
  INSTRUCCIONES PARA UNA PLATAFORMA ESPECÍFICA. EN
  SU LUGAR, SE GENERAN BYTECODES JAVA QUE SON
  INSTRUCCIONES PARA LA “MÁQUINA VIRTUAL JAVA”
  (JVM).
 SI LA PLATAFORMA ES WINDOWS, LINUX, ETC. O UN
  NAVEGADOR DE INTERNET QUE TIENE INSTALADA LA
  JVM, PODRÁ ENTENDER LOS BYTECODES.


 09/04/2009         INGº PEDRO BELTRÁN CANESSA    30
PROGRAMA FUENTE                                  COMPILADOR (CÓDIGO
1                                                 2
                        (USUARIO)                                        BINARIO)




                                                                                 3




                 INSTRUCCIONES EN JAVA                                 INTÉRPRETE (CÓDIGO DE BYTES
                                                  4
                     (MÁQUINA VIRTUAL                                      O BYTECODES)
                     DE JAVA)
         5




PROGRAMA EN JAVA



    09/04/2009                           INGº PEDRO BELTRÁN CANESSA                           31
¿ CÓMO SE CREA UNA APLICACIÓN
                                     CON JAVA?
 PRIMERO SE CREA UN FICHERO JAVA: UN PROGRAMA O FICHERO FUENTE
  CONTIENE UN TEXTO ESCRITO EN UN PROCESADOR O EDITOR DE TEXTOS, TALES
  COMO EL WRITER, EL WORD O EL BLOC DE NOTAS, TAMBIÉN SE PUEDE UTILIZAR EL
  EDITOR DEL PROPIO JAVA. AL CREAR EL ARCHIVO, SE DEBERÁ DE OBSERVAR QUE
  ESTE SE GUARDE CON UNA EXTENSIÓN .java.
 SEGUNDO SE COMPILA EL ARCHIVO O FICHERO FUENTE: PARA EJECUTAR EL
  PROGRAMA CONTENIDO EN EL FICHERO FUENTE, QUE PREVIAMENTE SE TRADUJO
  A FICHERO DE CÓDIGO DE BYTES O BYTECODES, SE DEBE UTILIZAR LA “MÁQUINA
  VIRTUAL DE JAVA” QUE ESTÁ IMPLEMENTADA CON UN INTÉRPRETE JAVA. ESTE
  INTÉRPRETE TOMA EL FICHERO DE BYTECODES Y EJECUTA LAS
  INSTRUCCIONES, TRADUCIÉNDOLAS A OTRAS INSTRUCCIONES QUE EL PROCESADOR
  DEL COMPUTADOR PUEDE ENTENDER.




  09/04/2009                INGº PEDRO BELTRÁN CANESSA               32

Weitere ähnliche Inhalte

Was ist angesagt?

Java ventajas y caracteristicas
Java ventajas y caracteristicasJava ventajas y caracteristicas
Java ventajas y caracteristicasbat1820
 
Lenguaje de programación java
Lenguaje de programación javaLenguaje de programación java
Lenguaje de programación javaChikito304
 
Act 5 andrada aguilera
Act 5 andrada aguileraAct 5 andrada aguilera
Act 5 andrada aguileramarcos_77
 
Lenguaje de Programación Preferido
Lenguaje de Programación PreferidoLenguaje de Programación Preferido
Lenguaje de Programación Preferidocor0002
 
Mi lenguaje de programación de preferencia (JAVA)
Mi lenguaje de programación de preferencia (JAVA)Mi lenguaje de programación de preferencia (JAVA)
Mi lenguaje de programación de preferencia (JAVA)Hermes Mercado
 
Antecedentes java
Antecedentes java Antecedentes java
Antecedentes java Yo Profesor
 
Características Java
Características JavaCaracterísticas Java
Características JavaIsabel Gómez
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles RAUL Velez
 
Introducción a la Programación con Java
Introducción a la Programación con JavaIntroducción a la Programación con Java
Introducción a la Programación con Javaflekoso
 
Java completo y agragado
Java completo y agragadoJava completo y agragado
Java completo y agragadoMaria
 
Java y sus caracteristicas
Java y sus caracteristicasJava y sus caracteristicas
Java y sus caracteristicasAny Saula
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativoedwin quiroa
 
ventajas y desventajas de programas informaticos
ventajas y desventajas de programas informaticosventajas y desventajas de programas informaticos
ventajas y desventajas de programas informaticosIrving Muñoz
 
Mi Lenguaje de Programación Preferido
Mi Lenguaje de Programación PreferidoMi Lenguaje de Programación Preferido
Mi Lenguaje de Programación Preferidostylee4799
 
Introducción a Java
Introducción a JavaIntroducción a Java
Introducción a JavaLuzCalderonS
 
Caracteristicas de Java
Caracteristicas de JavaCaracteristicas de Java
Caracteristicas de JavaLuzRom
 

Was ist angesagt? (20)

Java ventajas y caracteristicas
Java ventajas y caracteristicasJava ventajas y caracteristicas
Java ventajas y caracteristicas
 
Lenguaje de programación java
Lenguaje de programación javaLenguaje de programación java
Lenguaje de programación java
 
Lenguaje de programacion java
Lenguaje de programacion javaLenguaje de programacion java
Lenguaje de programacion java
 
Java
JavaJava
Java
 
Act 5 andrada aguilera
Act 5 andrada aguileraAct 5 andrada aguilera
Act 5 andrada aguilera
 
Lenguaje de Programación Preferido
Lenguaje de Programación PreferidoLenguaje de Programación Preferido
Lenguaje de Programación Preferido
 
Mi lenguaje de programación de preferencia (JAVA)
Mi lenguaje de programación de preferencia (JAVA)Mi lenguaje de programación de preferencia (JAVA)
Mi lenguaje de programación de preferencia (JAVA)
 
Antecedentes java
Antecedentes java Antecedentes java
Antecedentes java
 
Características Java
Características JavaCaracterísticas Java
Características Java
 
Glosario
GlosarioGlosario
Glosario
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles
 
Introducción a la Programación con Java
Introducción a la Programación con JavaIntroducción a la Programación con Java
Introducción a la Programación con Java
 
Java completo y agragado
Java completo y agragadoJava completo y agragado
Java completo y agragado
 
Java y sus caracteristicas
Java y sus caracteristicasJava y sus caracteristicas
Java y sus caracteristicas
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Actividad 3
Actividad 3Actividad 3
Actividad 3
 
ventajas y desventajas de programas informaticos
ventajas y desventajas de programas informaticosventajas y desventajas de programas informaticos
ventajas y desventajas de programas informaticos
 
Mi Lenguaje de Programación Preferido
Mi Lenguaje de Programación PreferidoMi Lenguaje de Programación Preferido
Mi Lenguaje de Programación Preferido
 
Introducción a Java
Introducción a JavaIntroducción a Java
Introducción a Java
 
Caracteristicas de Java
Caracteristicas de JavaCaracteristicas de Java
Caracteristicas de Java
 

Ähnlich wie Introducción a la Programación en Java

Ähnlich wie Introducción a la Programación en Java (20)

PROGRAMACIÓN EN JAVA (I)
PROGRAMACIÓN EN JAVA (I)PROGRAMACIÓN EN JAVA (I)
PROGRAMACIÓN EN JAVA (I)
 
Programacion en Java (II)
Programacion en Java (II)Programacion en Java (II)
Programacion en Java (II)
 
Programación
ProgramaciónProgramación
Programación
 
Herramientas informatricas
Herramientas informatricasHerramientas informatricas
Herramientas informatricas
 
Visual basic .net
Visual basic .netVisual basic .net
Visual basic .net
 
Algoritmos y Diagramas de flujo
Algoritmos y Diagramas de flujoAlgoritmos y Diagramas de flujo
Algoritmos y Diagramas de flujo
 
Capitulogratis
CapitulogratisCapitulogratis
Capitulogratis
 
Programar
ProgramarProgramar
Programar
 
Clasificion de los lenguajes
Clasificion de los lenguajesClasificion de los lenguajes
Clasificion de los lenguajes
 
LENGUAJES DE PROGRAMACIÒN.
LENGUAJES DE PROGRAMACIÒN.LENGUAJES DE PROGRAMACIÒN.
LENGUAJES DE PROGRAMACIÒN.
 
LENGUAJES DE PROGRAMACIÒN.
LENGUAJES DE PROGRAMACIÒN.LENGUAJES DE PROGRAMACIÒN.
LENGUAJES DE PROGRAMACIÒN.
 
Entornos de desarrollo: Desarrollo de Software
Entornos de desarrollo: Desarrollo de SoftwareEntornos de desarrollo: Desarrollo de Software
Entornos de desarrollo: Desarrollo de Software
 
Programacion Internet
Programacion InternetProgramacion Internet
Programacion Internet
 
Mi lenguaje de programación de preferenciac jonathan
Mi lenguaje de programación de preferenciac jonathanMi lenguaje de programación de preferenciac jonathan
Mi lenguaje de programación de preferenciac jonathan
 
Apps
AppsApps
Apps
 
Karen y Vivian
Karen y VivianKaren y Vivian
Karen y Vivian
 
C, Java y Phyton.pdf
C, Java y Phyton.pdfC, Java y Phyton.pdf
C, Java y Phyton.pdf
 
PREGUNTAS DE PROGRAMACION
PREGUNTAS DE PROGRAMACIONPREGUNTAS DE PROGRAMACION
PREGUNTAS DE PROGRAMACION
 
PREGUNTAS DE PROGRAMACION
PREGUNTAS DE PROGRAMACIONPREGUNTAS DE PROGRAMACION
PREGUNTAS DE PROGRAMACION
 
PREGUNTAS DE PROGRAMACION
PREGUNTAS DE PROGRAMACIONPREGUNTAS DE PROGRAMACION
PREGUNTAS DE PROGRAMACION
 

Kürzlich hochgeladen

Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfNancyLoaa
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfJonathanCovena1
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 

Kürzlich hochgeladen (20)

Cuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdfCuaderno de trabajo Matemática 3 tercer grado.pdf
Cuaderno de trabajo Matemática 3 tercer grado.pdf
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdf
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 

Introducción a la Programación en Java

  • 1. • Alumno: Pedro Beltrán Canessa • Facultad: Ingeniería • Escuela: Ingeniería de Sistemas • Universidad Los Ángeles de Chimbote • Sede: Chimbote • Curso: Tecnología de Información y Comunicaciones 09/04/2009 INGº PEDRO BELTRÁN CANESSA 1
  • 2. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 2
  • 3. PROGRAMACION EN JAVA UNIVERSIDAD LOS ÁNGELES DE CHIMBOTE CURSO: TÉCNICAS DE PROGRAMACIÓN DOCENTE RESPONSABLE: INGº PEDRO BELTRÁN CANESSA 09/04/2009 INGº PEDRO BELTRÁN CANESSA 3
  • 4. PRIMERA SESIÓN DE APRENDIZAJE 09/04/2009 INGº PEDRO BELTRÁN CANESSA 4
  • 5. ¿QUE CONCEPTOS BÁSICOS SE DEBEN CONOCER PARA PROGRAMAR? POR EJEMPLO, LOS SIGUIENTES:  EL ALGORITMO: ES UNA SECUENCIA DE PASOS QUE PERMITEN RESOLVER UN PROBLEMA DETERMINADO. LOS ALGORITMOS SON INDEPENDIENTES DEL LENGUAJE DE PROGRAMACIÓN ASÍ COMO DEL HARDWARE A UTILIZAR.  UN PROGRAMA: ESTA CONFORMADO POR UNA SERIE DE INSTRUCCIONES QUE ESPECIFICAN QUE TIPO DE OPERACIONES DEBE REALIZAR LA COMPUTADORA. TODO PROGRAMA SE ESCRIBE UTILIZANDO UN LENGUAJE DE PROGRAMACIÓN.  EL LENGUAJE DE PROGRAMACIÓN: SE UTILIZA PARA ESCRIBIR PROGRAMAS, ESTO IMPLICA CONOCER LA SINTAXIS DEL LENGUAJE UTILIZADO, ASÍ COMO LAS DIFERENTES INSTRUCCIONES QUE SE PUEDEN APLICAR. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 5
  • 6. ¿CÓMO ENTIENDE LA MÁQUINA EL LENGUAJE DE PROGRAMACIÓN? EXISTE UN PROGRAMA LLAMADO COMPILADOR, QUE PERMITE CONVERTIR EL PROGRAMA ELABORADO POR EL USUARIO, DENOMINADO FUENTE, ESCRITO EN LENGUAJE DE ALTO NIVEL, EN CÓDIGO BINARIO, QUE SÍ ES COMPRENDIDO POR LA MÁQUINA. DE ESTO RESULTA UN PROGRAMA LLAMADO EJECUTABLE, EL CUAL ES DIRECTAMENTE DESARROLLADO POR LA MÁQUINA DONDE RESIDE EL PROGRAMA. POR EJEMPLO: UN PROGRAMA EN C++, NECESITA DE UN COMPILADOR DE C++ PARA PODER SER EJECUTADO. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 6
  • 7. COMPILACIÓN DE UN PROGRAMA ESTÁNDAR PROGRAMA FUENTE PROGRAMA COMPILADOR PROGRAMA OBJETO O PROGRAMA EJECUTABLE 09/04/2009 INGº PEDRO BELTRÁN CANESSA 7
  • 8. ¿ Y QUE CLASES DE LENGUAJES DE PROGRAMACIÓN EXISTEN? LA CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACIÓN, SE HACE EN FUNCIÓN DE LA PROXIMIDAD DEL LENGUAJE, YA SEA QUE ESTÉ ORIENTADO HACIA LA MÁQUINA O HACIA EL USUARIO, LO CUAL ESTABLECE TRES CATEGORÍAS A CONSIDERAR: 09/04/2009 INGº PEDRO BELTRÁN CANESSA 8
  • 9. CATEGORÍAS: 1. EL LENGUAJE DE BAJO NIVEL O LENGUAJE DE MÁQUINA: ES EL QUE ENTIENDE DIRECTAMENTE LA COMPUTADORA Y UTILIZA EL CÓDIGO BINARIO (0 y 1). POR EXCELENCIA, EL LENGUAJE DE PROGRAMACIÓN QUE MÁS SE IDENTIFICA CON ESTA CATEGORIA ES EL LENGUAJE ENSAMBLADOR (ASSEMBLER). ESTE LENGUAJE UTILIZA UNA SERIE DE INSTRUCCIONES CONOCIDAS COMO NEMOTÉCNICOS (ADD PARA LA ADICIÓN, SUB PARA LA SUSTRACCIÓN, DIV PARA LA DIVISIÓN, ETC.), EN LUGAR DE CADENA DE BYTES. 2. EL LENGUAJE DE ALTO NIVEL: SON LOS MÁS UTILIZADOS POR LOS PROGRAMADORES Y UTILIZAN PALABRAS CLAVES PARECIDAS AL LENGUAJE COMÚN UTILIZADO POR LAS PERSONAS, POR EJEMPLO: TODOS LOS LENGUAJES VISUALES. 3. EL LENGUAJE DE NIVEL MEDIO: SE CONSIDERAN EN UNA CATEGORÍA INTERMEDIA, ES DECIR QUE POSEEN CARACTERÍSTICAS DE AMBOS LENGUAJES DESCRITOS ANTERIORMENTE, POR EJEMPLO: EL LENGUAJE C++. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 9
  • 10. ¿Qué es JAVA? EN LA ACTUALIDAD, ES EL LENGUAJE DE PROGRAMACIÓN, QUE SE UTILIZA CON MAS ACEPTACIÓN EN EL DESARROLLO DE SOFTWARE EMPRESARIAL. APARECE EN 1995, CUANDO LA EMPRESA SUN MICROSYSTEM LO LANZA AL MERCADO DEL SOFTWARE Y DE INMEDIATO LO INCORPORAN A DIFERENTES PRODUCTOS DE SOFTWARE. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 10
  • 11. Resumen de la Historia de JAVA (I) EL ORIGEN DEL LENGUAJE JAVA TIENE DIFERENTES VERSIONES, EL SIGUIENTE ES UN BREVE RESUMEN:  1992: LA COMPAÑÍA SUN MICROSYSTEMS LLEVA A CABO EL PROYECTO “GREEN”, PARA COMUNICAR DIVERSOS APARATOS O DISPOSITIVOS ELECTRÓNICOS. EL PROTOTIPO ERA UN SISTEMA OPERATIVO DISTRIBUÍDO LLAMADO “Star7”, DONDE CADA DISPOSITIVO ERA PARTE DEL TODO. SE CREA EL LENGUAJE “OAK” CON SU RESPECTIVO INTÉRPRETE Y CLASES CON ESTE LENGUAJE PARA ELABORAR LAS GUI (GRAPHIC USER INTERFACE – INTERFAZ GRÁFICA DE USUARIO). 09/04/2009 INGº PEDRO BELTRÁN CANESSA 11
  • 12. Resumen de la Historia de JAVA (II)  1993 (MARZO): LA COMPAÑÍA FIRST PERSON, SUBSIDIARIA DE SUN, RESPONDE A UNA PETICIÓN DE OFERTAS PARA EL PROYECTO DE TELEVISIÓN INTERACTIVA DE LA COMPAÑÍA TIME WARNER. ELLOS REQUERÍAN DE UN PEQUEÑO SISTEMA OPERATIVO EN MICRO CÓDIGO ORIENTADO A OBJETOS, CAPAZ DE SUMINISTRAR FLUJOS DE VIDEOS MPEG SOBRE REDES ATM. SUN PIERDE ESTE NEGOCIO Y TAMPOCO LLEGA A UN ACUERDO CON OTRA COMPAÑÍA DE TELEVISIÓN POR CABLE. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 12
  • 13. Resumen de la Historia de JAVA (III) 1994: SUN IMPLEMENTA UN NAVEGADOR DE WEB LLAMADO “Web Runner”, QUE PODÍA EJECUTAR CLASES TRASFERIDAS DESDE UN SERVIDIR HTTP. ESTO SERÍA LA PRIMERA APPLET: APARECE LA ANIMACIÓN DE UNA MASCOTA LLAMADA “DUKE”, SALUDANDO DESDE UNA PÁGINA. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 13
  • 14. Resumen de la Historia de JAVA (IV) 1995 (ENERO): CAMBIAN DE NOMBRE A OAK POR JAVA Y A “Web Runner” POR “Hot Java”. EN NOVIEMBRE APARECE EN LA WEB LA 1ª VERSIÓN BETA OFICIAL DE JAVA: EL JDK 1.0 (JAVA DEVELOPMENT KIT – EQUIPO DE DESARROLLO JAVA). 09/04/2009 INGº PEDRO BELTRÁN CANESSA 14
  • 15. Resumen de la Historia de JAVA (V) 1995 (DICIEMBRE): SE LIBERA A EL JDK 1.1. ACTUALMENTE SE LIBERÓ LA PLATAFORMA JAVA 2 SDK STANDAR EDITION (J2SE) VERSIÓN 1.4.1 QUE ES EL PRODUCTO QUE ESTAMOS TRATANDO EN EL PRESENTE CURSO. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 15
  • 16. Ediciones de JAVA SUN MICROSYSTEMS HA DESARROLLADO TRES EDICIONES DE PLATAFORMAS DIFERENTES, CADA UNA DE ELLAS DESTINADAS A CUBRIR LAS DIFERENTES NECESIDADES DE PROGRAMACIÓN EN LA EMPRESA MODERNA. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 16
  • 17. Ediciones de JAVA (I) PLATAFORMA JAVA 2 SDK STANDARD EDITION (J2SE): ES LA MÁS UTILIZADA DENTRO DEL ENTORNO JAVA, PERMITE CREAR APLICACIONES DE PROPÓSITO GENERAL QUE SE PUEDEN EJECUTAR EN DIFERENTES PLATAFORMAS, ASÍ COMO APPLETS. CONTIENE UN CONJUNTO DE APIs (INTERFACES DE PROGRAMACIÓN DE APLICACIONES), QUE PERMITEN CREAR LAS APLICACIONES. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 17
  • 18. Ediciones de JAVA (II) PLATAFORMA JAVA 2 SDK ENTERPRISE EDITION (J2EE): J2EE ES UNA PLATAFORMA QUE PERMITE CREAR APLICACIONES DE SERVIDOR. LAS APLICACIONES QUE SE VAN A EJECUTAR EN UN SERVIDOR, TIENEN REQUISITOS ADICIONALES EN LA FASE DE DESARROLLO QUE SON PROPORCIONADOS POR LA PLATAFORMA J2EE. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 18
  • 19. Ediciones de JAVA (III)  PLATAFORMA JAVA 2 SDK MICRO EDITION (J2ME): J2ME ES UNA PLATAFORMA QUE PERMITE CREAR APLICACIONES JAVA PARA MICRO DISPOSITIVOS, COMO TELÉFONOS CELULARES, PDA, DEL INGLÉS PERSONAL DIGITAL ASSISTANT (AYUDANTE PERSONAL DIGITAL), QUE ES UN COMPUTADOR DE MANO ORIGINALMENTE DISEÑADO COMO AGENDA ELECTRÓNICA (CALENDARIO, LISTA DE CONTACTOS, BLOC DE NOTAS Y MEMOS) CON UN SISTEMA DE RECONOCIMIENTO DE ESCRITURA. HOY DÍA SE PUEDE USAR COMO UNA COMPUTADORA DOMÉSTICA (VER PELÍCULAS, CREAR DOCUMENTOS, JUEGOS, CORREO ELECTRÓNICO, NAVEGAR POR INTERNET, ETC.). EN NUESTRO CURSO UTILIZAREMOS LA PLATAFORMA JAVA 2 STANDAR EDITION (J2SE). 09/04/2009 INGº PEDRO BELTRÁN CANESSA 19
  • 20. ¿Es complicado programar en JAVA? EL PROPÓSITO DEL CURSO ES INICIAR AL ESTUDIANTE EN LA CREACIÓN DE PROGRAMAS UTILIZANDO JAVA EN UN PROCESO SECUENCIAL, QUE PERMITA CAPTAR LOS DIFERENTES CONCEPTOS QUE SE EXPONDRÁN EN LOS SIGUIENTES CAPÍTULOS. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 20
  • 21. ¿Entonces es fácil programar en JAVA? EXISTE UNA DIFICULTAD INICIAL QUE SE DEBE DE CONOCER ANTES DE EMPEZAR A ESCRIBIR PROGRAMAS CON JAVA, Y ESTO SE DEBE A QUE EL ALUMNO SE ENCONTRARÁ CON UNA SERIE DE TÉRMINOS APARENTEMENTE DIFÍCILES Y DESCONOCIDOS DE EXPLICAR EN EL CONTEXTO. SIN EMBARGO, CONFORME VAYA AVANZANDO, SE IRÁ FAMILIARIZANDO PAULATINAMENTE Y ES POR ELLO QUE SE DEBE TENER CONOCIMIENTO DE ALGUNOS CONCEPTOS BÁSICOS QUE PERMITAN TENER UN SUSTENTO SOBRE EL CUAL SE DESARROLLEN LOS TEMAS POSTERIORES. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 21
  • 22. ¿CUÁLES SON LAS PRINCIPALES APLICACIONES DE JAVA?  ESTE LENGUAJE DE PROGRAMACIÓN ES UTILIZADO PRINCIPALMENTE PARA DESARROLLAR LOS SIGUIENTES TIPOS DE PROGRAMAS: 1. APLICACIONES DE PROPÓSITO GENERAL. 2. ELABORACIÓN DE APPLETS (APLICACIONES PARA INTERNET). 09/04/2009 INGº PEDRO BELTRÁN CANESSA 22
  • 23. ¿ Y QUE SON LOS “APPLETS”? UN APPLET ES UNA PEQUEÑA APLICACIÓN QUE SE ALMACENA EN UN SERVIDOR WEB (HTTP: HYPERTEXT TRANSFER PROTOCOL - PROTOCOLO DE TRANSFERENCIA DE HIPERTEXTO), PARA QUE PUEDA SER ACCEDIDA POR UNA ESTACIÓN CLIENTE (PC-USUARIO), TRANSMITIDA A TRAVÉS DE LA RED (INTERNET / INTRANET), QUE SE INSTALA AUTOMÁTICAMENTE Y ES EJECUTADA POR EL PROGRAMA NAVEGADOR WEB, COMO PARTE DE UN DOCUMENTO HTML: HYPERTEXT MARKUP LANGUAGE - LENGUAJE DE MARCAS HIPERTEXTUALES. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 23
  • 24. ¿ PORQUÉ SE DICE QUE JAVA ES “SEGURO”? UN PROGRAMA PUEDE TENER FUNCIONES GLOBALES (FUNCIONAN PARA TODO EL PROGRAMA), Y FUNCIONES LOCALES (FUNCIONAN PARA PARTE DEL PROGRAMA). LOS PROGRAMAS DE JAVA NO PUEDEN INVOCAR A FUNCIONES GLOBALES Y TENER ACCESO A RECURSOS DEL SISTEMA DE MANERA ARBITRARIA. POR LO TANTO, SE PUEDE EJERCER UN CONTROL SOBRE LOS PROGRAMAS EJECUTABLES DE JAVA, COSA QUE NO ES POSIBLE EN OTROS PROGRAMAS. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 24
  • 25. ¿ PORQUÉ SE DICE QUE JAVA ES “ROBUSTO”? JAVA VERIFICA EL CÓDIGO DEL PROGRAMA MIENTRAS SE ESCRIBE Y UNA VEZ MÁS ANTES DE EJECUTARLO. ESTO PERMITE QUE EL PROGRAMA SEA PREDECIBLE, INCLUSO BAJO DIVERSAS CONDICIONES. POR EJEMPLO: JAVA AYUDA A EVITAR FALLAS POR CONDICIONES EXCEPCIONALES, TALES COMO LA DIVISIÓN POR CERO, EL ACCESO A ARCHIVOS INEXISTENTES, ETC., MEDIANTE UN MANEJO DE EXCEPCIONES ORIENTADO A OBJETOS. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 25
  • 26. ¿ QUÉ ES LA ARQUITECTURA NEUTRAL DE JAVA? CUANDO SE CREÓ JAVA, SE TOMARON EN CUENTA CIERTAS CONSIDERACIONES, DE MANERA QUE EL PROGRAMA PUEDA “ESCRIBIRSE UNA SOLA VEZ, EJECUTARSE EN CUALQUIER SITIO, EN CUALQUIER MOMENTO Y PARA SIEMPRE”. LOS PROGRAMADORES DE JAVA SE BENEFICIAN PORQUE DESARROLLAN EL CÓDIGO UNA SOLA VEZ, SIN NECESIDAD DE ADAPTAR SUS APLICACIONES A CADA UNA DE LAS PLATAFORMAS DE HW Y SW. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 26
  • 27. ¿ JAVA UTILIZA COMPILADOR O INTÉRPRETE? JAVA UTILIZA AMBOS. COMO ANTERIORMENTE YA HEMOS DEFINIDO LO QUE ES UN COMPILADOR, AHORA TENDRÍAMOS QUE DEFINIR LO QUE ES UN INTÉRPRETE. UN INTÉRPRETE ES UN PROGRAMA QUE EFECTÚA LA TRADUCCIÓN Y EJECUCIÓN SIMULTÁNEA PARA CADA UNA DE LAS SENTENCIAS DEL PROGRAMA. PARA EJECUTAR UN PROGRAMA SE NECESITA DEL PROGRAMA INTÉRPRETE QUE ESTÁ INSTALADO EN LA MÁQUINA QUE SE VA A EJECUTAR. UN PROGRAMA QUE UTILIZA UN INTÉRPRETE ES MÁS LENTO QUE EL QUE UTILIZA UN COMPILADOR. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 27
  • 28. ¿ CÓMO TRABAJA EL INTÉRPRETE DE JAVA?  JAVA ES UN LENGUAJE INTERPRETADO Y DE ALTO RENDIMIENTO. JAVA COMPILA A UNA REPRESENTACIÓN INTERMEDIA DENOMINADA CÓDIGO DE BYTES O BYTECODES, EL QUE SE PUEDE INTERPPRETAR EN CUALQUIER SISTEMA QUE TENGA UN INTÉRPRETE DE JAVA. ESTE CÓDIGO DE BYTES O BYTECODES FUE DISEÑADO DE TAL MANERA QUE SEA SENCILLA LA TRADUCCIÓN A CÓDIGO DE MÁQUINA NATIVO. CON ESTO SE LOGRÓ QUE EL INTÉRPETE SEA DE ALTO RENDIMIENTO.  CADA PARTE DE UN PROGRAMA EN JAVA SE REDUCE A UNA SECUENCIA DE BYTES QUE REPRESENTAN INSTRUCCIONES EN UNA “MÁQUINA VIRTUAL” (JAVA VIRTUAL MACHINE), Y NO EN EL PROCESADOR DE UNA MÁQUINA ESPECÍFICA. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 28
  • 29. ¿Qué es un BYTECODE? • BYTECODE: CÓDIGO GENERADO POR EL COMPILADOR DE JAVA Y QUE ES EJECUTADO POR EL INTÉRPRETE DEL LENGUAJE (JVM). ES INDEPENDIENTE DE PLATAFORMA. • EL BYTECODE: RECIBE ESTE NOMBRE PORQUE GENERALMENTE CADA CÓDIGO DE OPERACIÓN TIENE UNA LONGITUD DE UN BYTE, SI BIEN LA LONGITUD DEL CÓDIGO DE LAS INSTRUCCIONES VARÍA, CADA INSTRUCCIÓN TIENE UN CÓDIGO DE OPERACIÓN ENTRE 0 Y 255 SEGUIDO DE PARÁMETROS TALES COMO LOS REGISTROS O LAS DIRECCIONES DE MEMORIA. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 29
  • 30. ¿Qué es un Archivo o Fichero de BYTECODES?  CON JAVA, SE PUEDE “ESCRIBIR UNA VEZ Y EJECUTAR EN CUALQUIER PARTE”. ESTO SIGNIFICA QUE CUANDO SE COMPILA UN PROGRAMA NO SE GENERAN INSTRUCCIONES PARA UNA PLATAFORMA ESPECÍFICA. EN SU LUGAR, SE GENERAN BYTECODES JAVA QUE SON INSTRUCCIONES PARA LA “MÁQUINA VIRTUAL JAVA” (JVM).  SI LA PLATAFORMA ES WINDOWS, LINUX, ETC. O UN NAVEGADOR DE INTERNET QUE TIENE INSTALADA LA JVM, PODRÁ ENTENDER LOS BYTECODES. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 30
  • 31. PROGRAMA FUENTE COMPILADOR (CÓDIGO 1 2 (USUARIO) BINARIO) 3 INSTRUCCIONES EN JAVA INTÉRPRETE (CÓDIGO DE BYTES 4 (MÁQUINA VIRTUAL O BYTECODES) DE JAVA) 5 PROGRAMA EN JAVA 09/04/2009 INGº PEDRO BELTRÁN CANESSA 31
  • 32. ¿ CÓMO SE CREA UNA APLICACIÓN CON JAVA?  PRIMERO SE CREA UN FICHERO JAVA: UN PROGRAMA O FICHERO FUENTE CONTIENE UN TEXTO ESCRITO EN UN PROCESADOR O EDITOR DE TEXTOS, TALES COMO EL WRITER, EL WORD O EL BLOC DE NOTAS, TAMBIÉN SE PUEDE UTILIZAR EL EDITOR DEL PROPIO JAVA. AL CREAR EL ARCHIVO, SE DEBERÁ DE OBSERVAR QUE ESTE SE GUARDE CON UNA EXTENSIÓN .java.  SEGUNDO SE COMPILA EL ARCHIVO O FICHERO FUENTE: PARA EJECUTAR EL PROGRAMA CONTENIDO EN EL FICHERO FUENTE, QUE PREVIAMENTE SE TRADUJO A FICHERO DE CÓDIGO DE BYTES O BYTECODES, SE DEBE UTILIZAR LA “MÁQUINA VIRTUAL DE JAVA” QUE ESTÁ IMPLEMENTADA CON UN INTÉRPRETE JAVA. ESTE INTÉRPRETE TOMA EL FICHERO DE BYTECODES Y EJECUTA LAS INSTRUCCIONES, TRADUCIÉNDOLAS A OTRAS INSTRUCCIONES QUE EL PROCESADOR DEL COMPUTADOR PUEDE ENTENDER. 09/04/2009 INGº PEDRO BELTRÁN CANESSA 32