View
219
Download
0
Category
Preview:
Citation preview
Origen y Evolucion Entorno de Trabajo
Curso de Java
Jaime Fernandez Martın
Curso INEM 02830. Programacion en Java
Marzo 2010
Origen y Evolucion Entorno de Trabajo
Indice
1 Origen y EvolucionIntroduccion a los computadoresOrıgenesEvolucionCodificacion, Compilacion y Ejecucion
2 Entorno de Trabajo
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Estructura de un ordenador
Dispositivos de entrada/salida
Sirve para la interaccion hombre-maquina
Entrada: teclado, raton, escaner, microfono, webcam, ..
Salida: monitor, impresora, altavoces, ...
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Estructura de un ordenador
Memoria principal
Conjunto de celdas en una tabla
Guarda datos (entrada, salida y procesados) e instrucciones(programas)
De acceso rapido
Tipos: RAM y ROM
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Estructura de un ordenador
Unidad Centra del Procesos (CPU)
Formada por:
Unidad Aritmetico Logica (ALU): Para operaciones ...
Aritmeticas (suma, resta,...)Logicas (AND, OR,...)De comparacion
Unidad de Control (UC): Lleva el control de la ejecucion delprograma. Da las ordenes para traer datos de memoria yprocesarlos
Registros: Almacenes temporales de la informacion. Solo losutiliza la UC
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Estructura de un ordenador
Von Neumann
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Tipos de lenguajes de programacion
Lenguaje Maquina
Codigo binario
Fuertemente relacionado con el hardware
Comprensible para una maquina ...
... pero imposible para una persona
00111010010011110001110100011
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Tipos de lenguajes de programacion
Lenguaje Ensamblador
Lenguaje de mas alto (aun ası bajo) nivel, muy cercano a lamanipulacion del hardware
Utilizado en los principios del desarrollo software
Se traduce a lenguaje maquina con ensambladores
Mas rapido de ejecutar y ocupa poco en memoria (menosinstrucciones)
Suma de dos numeros
MOV R1, 10MOV R2, 10ADD R1, R2ST #0014, R1
Origen y Evolucion Entorno de Trabajo
Introduccion a los computadores
Tipos de lenguajes de programacion
Lenguaje de Alto nivel
Comunmente conocido como lenguaje de programacion
Mas cercano al lenguaje humano (semantica mas compleja),notacion matematica
Los compiladores transforman a lenguaje maquina
C, C++, Java, Python, ...
r1 = 10 + 10;
Origen y Evolucion Entorno de Trabajo
Orıgenes
Sobre C/C++
C
Aparece 1972 por Dennis M. Ritchie en los Laboratorios Bell
De alto nivel, pero con muchas caracterısticas de bajo nivel
lenguaje orientado a la implementacion de sistemas operativos(Unix), sistemas empotrados, drivers de dispositivos, ...
Muy eficiente
Portable debido a la facilidad de desarrollar compiladores
C++
Bjarne Stroustrup. 1979
Extension de C con orientacion a objetos
Origen y Evolucion Entorno de Trabajo
Orıgenes
Los orıgenes
Historia
Surge en la decada de los 90 de la mano de James Gosling
Inicialmente llamado Oak
Desarrollado por ingenieros de Sun Microsystems paradispositivos electronicos
Motivacion
Problemas con la depuracion de programas en C++
La aparicion de un chip mas barato supone su implantacion enla cadena de fabricacion −→ recompilar la aplicacion
Origen y Evolucion Entorno de Trabajo
Orıgenes
Los orıgenes
Ideas Principales
Con la filosofıa “Escribirlo una vez, ejecutarlo en cualquierparte“. Permitir la ejecucion de un mismo programa enmultiples plataformas (WindowsXP/Vista/7, Unix, MacOS,Solaris, ...)
Lenguaje orientado a objetos
Soporte para trabajo en red
Ejecucion de codigo en sistemas remotos con seguridad
Origen y Evolucion Entorno de Trabajo
Orıgenes
Java
Caracterısticas
Lenguaje simple y sencillo basado en C++
De mas alto nivel. Abstraccion de ciertas acciones (Garbagecollector)
Incorpora un amplio conjunto de bibliotecas
Mecanismos de comunicacion a traves de la red
Control de errores (Gestion automatica de la memoria, nodefine tipos, sin structs, ...)
Seguridad (Acceso ilegal a memoria, comprobaciones previas ala ejecucion, impide la apertura de ficheros en la maquinalocal, ...)
Origen y Evolucion Entorno de Trabajo
Orıgenes
Java
Caracterısticas
Portable a cualquier arquitectura con JVM soportada
De los primeros lenguajes dinamicos en la web
Mas lento
Licencia GNU General Public License
Origen y Evolucion Entorno de Trabajo
Evolucion
Evolucion I
Enero de 1996 aparece Java con JDK 1.0
Enero de 1997 aparece una nueva version JDK 1.1 con:
Reestructuracion de AWT (GUI)Clases internasJavaBeansJDBC (Java Database Connectivity)RMI (Remote Method Invocation)
Diciembre de 1998 aparece J2SE 1.2. Java 2
Aparece tambien J2EE y J2ME. Diferentes conjuntos paquetesMecanismos de reflexion. Dinamismo del codigoSwing se incorpora a las clases basicasA la JVM se le incorpora un compilador JIT (Just In Time)Java Plug-in. Conectividad entre Java y navegadores webJava IDL (Interface Description Language), para interoperarcon CORBA
Origen y Evolucion Entorno de Trabajo
Evolucion
Evolucion II
Mayo de 2000 aparece J2SE 1.3
Adaptacion de RMI basado en CORBAJavaSound. Manipulacion de la entrada y salida de audioJNDI (Java Naming and Directory Interface)JPDA (Java Plataform Debugger Architecture)
Febrero de 2002 aparece J2SE 1.4
Manejo de expresiones regularesNIO (New Input/Output) no bloqueanteAPI para la lectura y escritura de imagenesParseador de XML integradoExtensiones criptografıa (JCE, JSSE, JAAS)Java Web Start. Descarga y ejecucion de la ultima version deaplicaciones
Origen y Evolucion Entorno de Trabajo
Evolucion
Evolucion III
Septiembre de 2004 aparece J2SE 5.0
PlantillasMetaAutoboxing/unboxing. Conversiones automaticas entre tiposprimitivosEnumeracionesVarargs. Numero de argumentos variable
Diciemnre de 2006 aparece Java SE 6
APIs para la combinacion de Java con lenguajes dinamicostipo PHP, Python, Ruby y JavaScriptInterprete de JavaScript para MozillaCliente de Servicios WebMejoras en la interfaz grafica y en rendimiento
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
Variables PATH y CLASSPATH
Variable PATH
Es una variable de entorno
Almacena informacion de la ubicacion de los programas
SO puede ejecutar programas a traves de la lınea de comandos
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Archivos de programa\Java\jdk1.6.0_18\bin
Variable CLASSPATH
Es una variable de entorno
Almacena informacion de la ubicacion de las bibliotecas yclases Java
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
Codificacion
// Esto es un comentario de una linea/∗
Esto es un comenta r i o demu l t i p l e s l i n e a s
∗/// Clase holaMundopub l i c c l a s s holaMundo {
/∗ El metodo main es e l punto de comienzo d e l programa∗/
pub l i c s t a t i c vo id main ( S t r i n g [ ] a r g s ) {
System . out . p r i n t l n ( ” Hola Mundo ! ” ) ;
}
}
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
Compilacion y ejecucion
Compilacion
Proceso por el cual se traducede un lenguaje comprensible porun ser humano a otrocomprensible por una maquina
Compilador, la herramientatraductora
Deteccion de errores
Ejecucion
Puesta en funcionamiento de unprograma o aplicacion
Codificación
CompiladorPowerPC
Compilación
Ejecución
Solaris PowerPC x86
CompiladorSolaris
Compiladorx86
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
Elementos de Java
Archivos
Los archivos con extension *.java contienen el codigo escritocon sintaxis Java
Los archivos *.class contienen el ByteCode de Java.Generados por javac e interpretados por la JVM
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
En el caso de Java
Componentes
javac, el compilador deJava
generacion del ByteCode
Cada JVM es diferente enfuncion de la plataforma
Codificación
javac
Compilación
Ejecución
.java
.class
Solaris
JVM
PowerPC
JVM
x86
JVM
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
Ejercicio
Instalacion del JDK
Incluir en el PATH los binarios de la JDK
Propiedades de MiPC > Opciones Avanzadas > Variables deEntornoEn variables del sistema, variable PATH
Descargar programa de ejemplo
Utilizacion de la consola de windows
Ejecutar > cmdAplicaciones > Accesorios > Sımbolo de sistema
Movimiento por directorios con ’cd’Cambiar de unidad de disco: Letra de la unidad seguido de ’:’Listar archivos en un directorio con ’dir’El tabulador ayuda a autocompletar
Origen y Evolucion Entorno de Trabajo
Codificacion, Compilacion y Ejecucion
Ejercicio
Compilar con javac
javac holaMundo.java
Ejecutar con java
java holaMundo
Origen y Evolucion Entorno de Trabajo
NetBeans
Sobre NetBeans
¿Que es?
Es un IDE (Integrated Development Enviorment)
Plataforma de ejecucion de aplicaciones
Para multiples lenguajes: Java, C++, PHP, ...
Multitud de plugins (OpenSwig, iReport, ...)
Gratuito. Licencia GPL
Web: netbeans.org
Origen y Evolucion Entorno de Trabajo
NetBeans
Instalacion
Software necesario
Instalar en el siguiente orden:
SDK 1.6
Netbeans 6.8
Atencion
La instalacion debe hacerse en la unidad D
Origen y Evolucion Entorno de Trabajo
NetBeans
Acciones
Algunas acciones muy utilizadas
Crear un nuevo proyecto (Seleccionar una ruta en D)
Gestion de las ventanas del entorno
Area de proyectos, vista del sistema de ficherosArea de edicionConsola de compilacion y ejecucionVariable CLASSPATH en las propiedades del proyectoGuardar en otra ubicacion un ficheroImportar un proyectoEstablecer un proyecto como principal
Compilacion y ejecucion del holaMundo.java (codificarlo)
Exportar el fichero a otra ubicacion
Recommended