conociendo java bienvenidos! ing. pavel stephan munoz

Post on 07-Feb-2015

21 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CONOCIENDO JAVACONOCIENDO JAVA

BIENVENIDOS!BIENVENIDOS!

Ing. Pavel Stephan MunozIng. Pavel Stephan Munoz

un toque de humor...

AGENDAAGENDA Qué es Java?Qué es Java? HistoriaHistoria Programación Orientada a ObjetosProgramación Orientada a Objetos ArquitecturaArquitectura Java en todo lugarJava en todo lugar Cómo comenzar?Cómo comenzar? EjemplosEjemplos ComunidadesComunidades Java en el mercadoJava en el mercado Futuras TendenciasFuturas Tendencias

QUE ES JAVA?QUE ES JAVA?

Qué es Java?Qué es Java?

Un software?Un software? Una tecnología ?Una tecnología ? Un lenguaje de programaciónUn lenguaje de programación Una plataforma para desarrollo.Una plataforma para desarrollo. Una isla de Indonesia?Una isla de Indonesia?

Java es todo eso!Java es todo eso!

Simple, orientado a objetosSimple, orientado a objetos Independiente de Plataforma (JVM)Independiente de Plataforma (JVM) PortablePortable Versátil, Dinámico, Robusto y seguro.Versátil, Dinámico, Robusto y seguro. GratuitoGratuito Fácil de usar y desarrollarFácil de usar y desarrollar Lenguaje popular y con una gran Lenguaje popular y con una gran

comunidad de adeptos alrededor del comunidad de adeptos alrededor del mundo!mundo!

Java... popular?Conozcan el indice TIOBE!

Java es…Java es…

Orientada a ObjetosOrientada a Objetos Semejante a C/C++Semejante a C/C++ Hibrida (Compilada e Hibrida (Compilada e

interpretada)interpretada)

HISTORIAHISTORIA

Cómo nace Java?Cómo nace Java?

En los laboratorios de Sun se En los laboratorios de Sun se empieza a desarrollar un nuevo empieza a desarrollar un nuevo lenguaje bautizado “Oak” (roble).lenguaje bautizado “Oak” (roble). Orientado a ObjetosOrientado a Objetos Parecido a C++Parecido a C++ Proyectado que fuera multiplataformaProyectado que fuera multiplataforma Creado por James GoslingCreado por James Gosling

Cómo nace Java?Cómo nace Java?

Después de 6 meses SUN transforma Después de 6 meses SUN transforma el proyecto en una empresa llamada el proyecto en una empresa llamada “First Person”“First Person”

Al fin Java…Al fin Java…

El lenguaje OAK se torna producto y El lenguaje OAK se torna producto y Naughton sugiere que sea distribuido Naughton sugiere que sea distribuido gratuitamente en el web.gratuitamente en el web.

Navegador Web Runner, mas tarde Navegador Web Runner, mas tarde HotJava Browser: nacen los Applets!HotJava Browser: nacen los Applets!

Sun acuerda poner disponible OAK, sin Sun acuerda poner disponible OAK, sin embargo cambia su nombre a JAVAembargo cambia su nombre a JAVA

Netscape anuncia su nuevo navegador Netscape anuncia su nuevo navegador con soporte para Java y esta tecnologia se con soporte para Java y esta tecnologia se disparadispara

Evolución de JavaEvolución de Java

EvoluciónEvolución Java 1.0aJava 1.0a Java Development Kit 1.1Java Development Kit 1.1 Java 2 Platform 1.2.Java 2 Platform 1.2. Java 2 Platform 1.3.Java 2 Platform 1.3. Java 2 Platform 1.4.Java 2 Platform 1.4. Java 2 Platform 1.5. (Tiger)Java 2 Platform 1.5. (Tiger) Java 2 Platform 1.6. (Mustang)Java 2 Platform 1.6. (Mustang) Próxima: Java 7 (Dolphin).Próxima: Java 7 (Dolphin).

Mitos de JavaMitos de Java

Java es lento!Java es lento! Las primeras versiones si lo eran sin Las primeras versiones si lo eran sin

embargo las mas nuevas son casi tan embargo las mas nuevas son casi tan rápidas como C++rápidas como C++

No posee un ambiente RAD (Como Visual No posee un ambiente RAD (Como Visual Studio) Studio) Hay muchas herramientas de alta Hay muchas herramientas de alta

productividad, disponibles e inclusive productividad, disponibles e inclusive gratuitasgratuitas

JavaScript es un derivado de JavaJavaScript es un derivado de Java

Mitos de JavaMitos de Java

Java solo sirve para hacer AppletsJava solo sirve para hacer Applets Error! Java sirve para desarrollar Error! Java sirve para desarrollar

aplicaciones de escritorio, aplicaciones aplicaciones de escritorio, aplicaciones corporativas y entre otros programas para corporativas y entre otros programas para dispositivos móviles.dispositivos móviles.

Java es la mejor forma de hacer todo.Java es la mejor forma de hacer todo. Ya quisiera yo. Java es bastante versátil, Ya quisiera yo. Java es bastante versátil,

pero no siempre hace todo.pero no siempre hace todo.

Porqué usar Java?Porqué usar Java?

Precisas de más motivos ?Precisas de más motivos ? Proyectada para redes.Proyectada para redes. Alta aceptación y soporte de la IndustriaAlta aceptación y soporte de la Industria Múltiples herramientas disponibles, muchas Múltiples herramientas disponibles, muchas

gratuitas y libres.gratuitas y libres. Vasta documentación, fácil de aprender.Vasta documentación, fácil de aprender. Alta productividad.Alta productividad. OPEN SOURCE!OPEN SOURCE! Etc, etc, etc.Etc, etc, etc.

PROGRAMACION ORIENTADA A OBJETOSPROGRAMACION ORIENTADA A OBJETOS

Ingeniería de SoftwareIngeniería de Software

Diseñar software es un arte!Diseñar software es un arte! La Ingeniería de Software busca como La Ingeniería de Software busca como

formalizar metodologíasformalizar metodologías Paradigmas rigen Paradigmas rigen las tareas de las tareas de

Análisis, Proyecto y CodificaciónAnálisis, Proyecto y Codificación Los mas parecidos son:Los mas parecidos son:

Paradigma Estructurado.Paradigma Estructurado. Paradigma Orientado a Objetos.Paradigma Orientado a Objetos.

Java Orientada a ObjetosJava Orientada a Objetos

Para desenvolverse bien en Java es necesario Para desenvolverse bien en Java es necesario saber los conceptos de OOsaber los conceptos de OO

De lo contrario:De lo contrario: Difícilmente conseguirá evolucionar a los Difícilmente conseguirá evolucionar a los

programas mas simples.programas mas simples. Será difícil entender otros programas de Será difícil entender otros programas de

otras personas y viceversa.otras personas y viceversa. Si no desea aprender OO, entonces es Si no desea aprender OO, entonces es

mejor usar PASCAL o C que son mejor usar PASCAL o C que son metodología orientada a procedimientos.metodología orientada a procedimientos.

Conceptos de OOConceptos de OO

AbstracciónAbstracción EncapsulamientoEncapsulamiento ModularidadesModularidades ObjetosObjetos ClasesClases Vinculos y Vinculos y

AsociasionesAsociasiones ComposicionComposicion HerenciaHerencia

Mensajes y MétodosMensajes y Métodos HerenciaHerencia Clases y Clases y

Operaciones Operaciones AbstractasAbstractas

ModularidadesModularidades PolimorfismoPolimorfismo

Perdón?

ObjetosObjetos

Concepto central de este paradigma.Concepto central de este paradigma. Entidades que incorporan abstracciones Entidades que incorporan abstracciones

relevantes de un problema.relevantes de un problema. Un objeto tiene tres características:Un objeto tiene tres características:

EstadoEstado ComportamientoComportamiento IdentidadIdentidad

ClasesClases

Objetos que poseen una misma Objetos que poseen una misma estructura y comportamiento son de una estructura y comportamiento son de una misma clase.misma clase.

Definimos clases no objetos.Definimos clases no objetos.

AbstracciónAbstracción

Ignorar aspectos irrelevantes y Ignorar aspectos irrelevantes y concentrarnos en los principalconcentrarnos en los principal

Tipos:Tipos: Abstracción de datos.Abstracción de datos. Abstracción de procedimientos.Abstracción de procedimientos.

EncapsulamientoEncapsulamiento

Separar los aspectos externos de los Separar los aspectos externos de los aspectos internos:aspectos internos: Aspectos externos: Interfaz, contratoAspectos externos: Interfaz, contrato Aspectos internos: ImplementaciónAspectos internos: Implementación

ModularidadModularidad

Descomponer el sistema en módulosDescomponer el sistema en módulos Fundamental para el reuso.Fundamental para el reuso.

Vínculos y AsociacionesVínculos y Asociaciones

Objetos relacionados entre si:Objetos relacionados entre si: Vínculos: Conexión entre objetos.Vínculos: Conexión entre objetos. Asociación: Conexión entre clases que Asociación: Conexión entre clases que

representa existencia de vínculos.representa existencia de vínculos. Asociaciones pueden ser cardinalidadesAsociaciones pueden ser cardinalidades

ComposicionesComposiciones

Los objetos complejos son compuestos Los objetos complejos son compuestos por objetos mas simples.por objetos mas simples.

Composición: Las partes pueden ser Composición: Las partes pueden ser relacionadas a todo.relacionadas a todo.

Agregación: Las partes pueden ser Agregación: Las partes pueden ser descompuestas.descompuestas.

HerenciaHerencia

Cuando las clases tienen semejanzas Cuando las clases tienen semejanzas podemos generalizarlas.podemos generalizarlas.

JerarquiasJerarquias Relaciones entre super clases y sub clasesRelaciones entre super clases y sub clases

Mensajes y MétodosMensajes y Métodos

Los Objetos envían mensajes para Los Objetos envían mensajes para comunicarse, debe ser la única forma.comunicarse, debe ser la única forma.

Métodos: Operaciones que un objeto Métodos: Operaciones que un objeto puede realizar.puede realizar.

PersistenciaPersistencia

Capacidad del objeto de trascender en Capacidad del objeto de trascender en tiempo y espacio:tiempo y espacio: Almacenamiento en banco de datos.Almacenamiento en banco de datos. Transmisión por la red.Transmisión por la red.

Clases y Metodos AbstractosClases y Metodos Abstractos

Las clases abstractas no pueden ser Las clases abstractas no pueden ser instancias.instancias.

Metodos abstractos no pueden ser Metodos abstractos no pueden ser implementados.implementados.

Clases compuestas solamente por Clases compuestas solamente por metodos abstractas.metodos abstractas.

Sobrecarga y SobrescritaSobrecarga y Sobrescrita

Sobrecarga: Operaciones distintas con Sobrecarga: Operaciones distintas con el mismo nombre.el mismo nombre.

Sobrescrita: Sub Clase define nueva Sobrescrita: Sub Clase define nueva implementación para operaciones implementación para operaciones definidas en una super clase.definidas en una super clase.

PolimorfimoPolimorfimo

Habilidad de tomar varias formas.Habilidad de tomar varias formas.

ARQUITECTURAARQUITECTURA

Java es mucho!Java es mucho!

Un lenguaje de programación JavaUn lenguaje de programación Java Un ambiente de ejecución.Un ambiente de ejecución. Un Kit de desarrollo Java.Un Kit de desarrollo Java. Una biblioteca de clases (API) Java.Una biblioteca de clases (API) Java.

Plataforma Java 2Plataforma Java 2

Desde la versión 1.2 hasta la 1.5 Desde la versión 1.2 hasta la 1.5 pasó a ser llamada “Java 2” y fue pasó a ser llamada “Java 2” y fue dividida en:dividida en: Java 2 Platform Standard Edition Java 2 Platform Standard Edition

(JavaSE)(JavaSE) Java 2 Platform Enterprise Edition Java 2 Platform Enterprise Edition

(JavaEE)(JavaEE) Java 2 Platform Mobile Edition Java 2 Platform Mobile Edition

(JavaME)(JavaME) Cada una tiene su APICada una tiene su API JAVASE es la base para otras.JAVASE es la base para otras.

Nuevos AiresNuevos Aires

A partir de la versión, quita el 2 de A partir de la versión, quita el 2 de su nombre.su nombre. Java Platform, Standard Edition 6 Java Platform, Standard Edition 6 Java SE 6; Java Platform, Enterprise Java SE 6; Java Platform, Enterprise

Edition 6 Edition 6 Java EE 6; Java Platform, Mobile Java EE 6; Java Platform, Mobile

Edition 6 Java ME 6. Edition 6 Java ME 6. “ “Java2” permanece en versión 1.5Java2” permanece en versión 1.5

Java Platform, Stándard Java Platform, Stándard EditionEdition

Herramientas de desarrollo + API Herramientas de desarrollo + API Nucleo Plataforma de JAVANucleo Plataforma de JAVA Permite el desarrollo de aplicaciones Permite el desarrollo de aplicaciones

de escritorio, inclusive con interfaz de escritorio, inclusive con interfaz grafica, acceso a base de datos,, I/O, grafica, acceso a base de datos,, I/O, redes, etc.redes, etc.

Divida en:Divida en: JDK = Java Development Kit.JDK = Java Development Kit. JRE = Java Runtime Enviroment.JRE = Java Runtime Enviroment.

Java RunTime EnviromentJava RunTime Enviroment

Necesario para la ejecución de programas en Necesario para la ejecución de programas en JAVAJAVA

Es la única plataforma de Java que los Es la única plataforma de Java que los clientes necesitan instalar.clientes necesitan instalar.

En algunos sistemas operativos (MacOS X) ya En algunos sistemas operativos (MacOS X) ya viene instalada.viene instalada.

Implementada por Sun (15 MB)Implementada por Sun (15 MB)

Java Development KitJava Development Kit

Solamente para programadoresSolamente para programadores Contiene:Contiene:

Herramientas de desarrollo.Herramientas de desarrollo. Ambiente de EjecuciónAmbiente de Ejecución API JAVA SE (Compilada y Código API JAVA SE (Compilada y Código

Fuente)Fuente) Programas de Ejemplo.Programas de Ejemplo. Bibliotecas adicionalesBibliotecas adicionales Documentación (obtenida Documentación (obtenida

separadamente)separadamente)

Herramientas DisponiblesHerramientas Disponibles

Compilador (javac)Compilador (javac) Interprete (java)Interprete (java) Generador de documentación (javadoc)Generador de documentación (javadoc) Depurador (jdb)Depurador (jdb) Generador de Paquetes (jar)Generador de Paquetes (jar) Otros:Otros:

Visualizados de Applets (appletviewer)Visualizados de Applets (appletviewer) Criptografía(keytool, jarsigner, etc.)Criptografía(keytool, jarsigner, etc.) Etc.Etc.

Plataformas SoportadasPlataformas Soportadas

Sun da soporte a las siguientes Sun da soporte a las siguientes plataformas:plataformas: Windows i586 / AMD64Windows i586 / AMD64 Linux i586/AMD64Linux i586/AMD64 Solaris SPARC/x86/x64Solaris SPARC/x86/x64

Apple desarrolló una version para MacOSApple desarrolló una version para MacOS Otras:Otras:

HP UX, FreeBSD, OS/2, AIX, AS/400, OS/390, IRIX, HP UX, FreeBSD, OS/2, AIX, AS/400, OS/390, IRIX, Alpha, SCO, NetWare, etc Alpha, SCO, NetWare, etc

Escribe una vez, ejecuta donde Escribe una vez, ejecuta donde quieras:quieras:

Los códigos de Java son compilados para un Los códigos de Java son compilados para un lenguaje intermedio llamado: ByteCodelenguaje intermedio llamado: ByteCode

ByteCode es interpretado por una “maquina ByteCode es interpretado por una “maquina virtual” a JVM.virtual” a JVM.

A JVM envia comandos específicos a la A JVM envia comandos específicos a la plataforma para el sistema operativoplataforma para el sistema operativo

Principales APIsPrincipales APIs

AWT/Swing/SWT: interfaces gráficas; AWT/Swing/SWT: interfaces gráficas; Java2D: Diseño; Java2D: Diseño; JDBC: acesso a Base de Datos; JDBC: acesso a Base de Datos; JNDI: acesso a servidores de dominios; JNDI: acesso a servidores de dominios; RMI: Invocación remota de métodos; RMI: Invocación remota de métodos; Beans: padre de JavaBeans; Beans: padre de JavaBeans; i18n: suporte a internacionalizacion; i18n: suporte a internacionalizacion; I/O: entrada y salida (archivos); I/O: entrada y salida (archivos); JNI: Intergracion con lenguajes nativos JNI: Intergracion con lenguajes nativos Math: cálculos matemáticos; Math: cálculos matemáticos;

Principales APIsPrincipales APIs

Networking: Transmisión por redes;Networking: Transmisión por redes; Security: Seguridad; Security: Seguridad; Serialization:; Serialization:; XML: Procesamiento de XML; XML: Procesamiento de XML; Lang & Util: núcleo da lenguaje, utilitarios Lang & Util: núcleo da lenguaje, utilitarios (colecciones, datas, etc.); (colecciones, datas, etc.); Concurrencua: Programacion Concurrencua: Programacion

Concurrente(threads);Concurrente(threads); Logging: (log); Logging: (log); ReflectionReflection

Java Platform, Enterprise Java Platform, Enterprise EditionEdition

Permite el desarrollo de aplicaciones Permite el desarrollo de aplicaciones corporativas: corporativas: Multi-llamada, distribuídas, centradas en Multi-llamada, distribuídas, centradas en

servidores, altamente robustas, estables y servidores, altamente robustas, estables y escalablesescalables

Incluye especificaciones para desarrollo Incluye especificaciones para desarrollo Web: Servlets, JSP, Web Services. Web: Servlets, JSP, Web Services.

Servlets, JSP e EJBsServlets, JSP e EJBs

Servlets e JSPs: Servlets e JSPs: Componentes que responden a peticiones Componentes que responden a peticiones

Web usados para construir páginas Web usados para construir páginas dinámicas de Web Servicesdinámicas de Web Services

EJBs: EJBs: Componentes heredados integrados a otras Componentes heredados integrados a otras

tecnologías Java EE para proveer acceso tecnologías Java EE para proveer acceso remoto, persistencia y transacciones remoto, persistencia y transacciones transparentes, procesamiento asíncrono, transparentes, procesamiento asíncrono, etc.etc.

Otras tecnologías Otras tecnologías

Java EE Servlets ,EJB; Java EE Servlets ,EJB; RMI/IIOP e Java IDL; RMI/IIOP e Java IDL; JNDI; JNDI; JAC e JNI; JAC e JNI; JAAS;JAAS; JTA; JTA; JMS e JavaMail; JMS e JavaMail;

Java Platform, Mobile Java Platform, Mobile EditionEdition

Permite desarrollo de aplicaciones para Permite desarrollo de aplicaciones para dispositivos mobiles.dispositivos mobiles. Telefonos Celulares.Telefonos Celulares. PDAsPDAs Dispositivos Embedded.Dispositivos Embedded. Etc.Etc.

Java Card: Aplicaciones para Smart Java Card: Aplicaciones para Smart Cards y una cantidad ilimitada de Cards y una cantidad ilimitada de dispositivosdispositivos

JAVA EN TODO LUGARJAVA EN TODO LUGAR

Java esta en todo lugarJava esta en todo lugar

EnterpriseEnterprise

COMO COMENZAR?COMO COMENZAR?

Preparando el ambientePreparando el ambiente

Descargar JDKDescargar JDK También la documentación en:También la documentación en:

http://java.sun.com Escoja la versión de su sistema operativo.Escoja la versión de su sistema operativo.

InstalandoInstalando Windows:Windows:

Instalar primero Microsft, simplicado.Instalar primero Microsft, simplicado. Documentación compactada.Documentación compactada.

Linux:Linux: Instalar de los repositoriosInstalar de los repositorios Documentación compactada.Documentación compactada.

Escribiendo ProgramasEscribiendo Programas

Puedes usar:Puedes usar: EclipseEclipse NetBeansNetBeans JetBrains IntelliJ IDEAJetBrains IntelliJ IDEA Borland JbuilderBorland Jbuilder Etc.Etc.

Editores mas simples:Editores mas simples: JEditJEdit JCreatorJCreator

JAVA Y EL MERCADOJAVA Y EL MERCADO

EmpresasEmpresas

El Mercado en númerosEl Mercado en númerosInformacion de JavaOne:Informacion de JavaOne:900+ millones de microcomputadoras 900+ millones de microcomputadoras corriendo Javacorriendo Java300 millones de descargas de Java desde junio 300 millones de descargas de Java desde junio del 2003del 200312 millones de visitas por mes al sitio 12 millones de visitas por mes al sitio java.comjava.com5 millones de desarrolladores Java en el 5 millones de desarrolladores Java en el mundomundo180,000 desarrolladores registrados en 180,000 desarrolladores registrados en java.netjava.net1+ billon de celulares corriendo java alrededor 1+ billon de celulares corriendo java alrededor del mundodel mundo

El Mercado en númerosEl Mercado en números

Informacion de JavaOne:Informacion de JavaOne:635 modelos de celular en el mundo con Java635 modelos de celular en el mundo con Java32 fabricantes de celulares con soporte para 32 fabricantes de celulares con soporte para

JavaJava140 operadoras de telefonia movil usando Java140 operadoras de telefonia movil usando Java

3 millones de descargas de JavaEE3 millones de descargas de JavaEE28 tipos diferentes de servidores Java28 tipos diferentes de servidores Java

eBay confia en Java para sus ventas que eBay confia en Java para sus ventas que traspasan los $1,400.00 por segundo!traspasan los $1,400.00 por segundo!

El mercado en numerosEl mercado en numeros

Se estima que Java mueve $100 billones al Se estima que Java mueve $100 billones al año y va en aumentoaño y va en aumentoSun esta en mas de 170 paisesSun esta en mas de 170 paises100% de las 500 mayores empresas del 100% de las 500 mayores empresas del mundo (según revista Fortune) usan Javamundo (según revista Fortune) usan JavaSun cambio su nombre en la Bolsa de Sun cambio su nombre en la Bolsa de Valores; antes SUNW, ahora JAVAValores; antes SUNW, ahora JAVA

El mercado en numerosEl mercado en numeros

Según el Instituto Gartner:Según el Instituto Gartner:Java es la tecnologia escogida por las Java es la tecnologia escogida por las empresas; 60% lo usan, 22% planean empresas; 60% lo usan, 22% planean

hacerlo.hacerlo.

EmpleosEmpleos

Oportunidades:Oportunidades:Muchas vacantes apareciendoMuchas vacantes apareciendo

Pocos capacitados, pocos certificadosPocos capacitados, pocos certificadosBuenos salariosBuenos salarios

Mercado en optima fase de crecimiento!Mercado en optima fase de crecimiento!

EmpleosCuanto gana al mes un programador Java?

EEUU $4500EEUU $4500

Chipre $2000Chipre $2000

Austria $1500-3500Austria $1500-3500

Alemania $2000-4500Alemania $2000-4500

Suiza $4000-8000Suiza $4000-8000

Rusia $800-1000Rusia $800-1000

Reino Unido $4000-8000Reino Unido $4000-8000

Francia: $2000-4000Francia: $2000-4000

CertificacionesCertificaciones

Sun realiza pruebas para certificar Sun realiza pruebas para certificar profesionales en la plataforma Javaprofesionales en la plataforma Java

Profesional certificado posee Profesional certificado posee reconocimiento en el mercadoreconocimiento en el mercado

Lamentablemente todavia no tiene Lamentablemente todavia no tiene tanto efecto en el salario.tanto efecto en el salario.

Las certificacionesLas certificaciones

ComunidadesComunidades

Java y el Software Java y el Software LibreLibre

Muchos proyectos en SourceForgeMuchos proyectos en SourceForgePrimer lugar en FreshMeatPrimer lugar en FreshMeat

Java.net: 180,000 miembros en mas Java.net: 180,000 miembros en mas de 1,500 proyectosde 1,500 proyectos

Mas de 550 grupos de usuarios en el Mas de 550 grupos de usuarios en el mundomundo

Como participar?Como participar?Que pueden hacer Que pueden hacer

por usted?por usted? NoticiasNoticias Articulos y Articulos y

tutorialestutoriales ForosForos DescargasDescargas EventosEventos Etc.Etc.

Que puede hacer Que puede hacer usted?usted?

Registrarse en Registrarse en forosforos

Participar Participar respondiendo respondiendo dudasdudas

Escribir articulosEscribir articulos Enviar noticiasEnviar noticias Etc.Etc.

Futuro y tendenciasFuturo y tendencias

TendenciasTendencias JavaME, aplicaciones para celularesJavaME, aplicaciones para celulares

Mercado con gran crecimientoMercado con gran crecimiento Apoyo de las empresas Apoyo de las empresas

telefonicastelefonicas Aun no se sabe todo lo que es Aun no se sabe todo lo que es

posible hacerposible hacer

TendenciasTendencias Programacion Orientada a Aspectos Programacion Orientada a Aspectos

(AOP):(AOP): Creada en 1997 por XeroxCreada en 1997 por Xerox Base de muchos frameworks Base de muchos frameworks

importantes y conocidosimportantes y conocidos Arquitectura Orientada a Servicios Arquitectura Orientada a Servicios

(SOA):(SOA): Implementacion de aplicaciones Implementacion de aplicaciones

con servicios compartidoscon servicios compartidos

TendenciasTendencias Web 2.0 y AJAX:Web 2.0 y AJAX:

Nuevo concepto para el desarrollo Nuevo concepto para el desarrollo de paginas y sistemas web.de paginas y sistemas web.

En torno a los usuariosEn torno a los usuarios Contenido creado por los usuarios Contenido creado por los usuarios

para los usuariospara los usuarios Necesidad de interfaces ricas y de Necesidad de interfaces ricas y de

alta usabilidadalta usabilidad

TendenciasTendencias

Profesional:Profesional: Cuidado con las “novedades del mes”Cuidado con las “novedades del mes” Mas que saber un lenguaje de Mas que saber un lenguaje de

programacion es preciso conocer las programacion es preciso conocer las arquitecturas y como se acoplan.arquitecturas y como se acoplan.

Y AHORA?Y AHORA?

Señor, quiero aprender mas...Señor, quiero aprender mas...

Está con suerte:Está con suerte: Muchos libros!Muchos libros! Muchos tutoriales! (los de Sun son muy Muchos tutoriales! (los de Sun son muy

buenos)buenos) PortalesPortales Grupos de usuarioGrupos de usuario EventosEventos Cursos!!!Cursos!!!

Señor y despues del curso?Señor y despues del curso?

Siga de cerca los frameworks que estan de Siga de cerca los frameworks que estan de modamoda

Defina un area de su agradoDefina un area de su agrado Procure participar en proyectos liderados Procure participar en proyectos liderados

por otras personas:por otras personas: Gane experienciaGane experiencia Conozca nuevas tecnicasConozca nuevas tecnicas

Curso de Java en Curso de Java en ILCOMPILCOMP

Conceptos básicos:Conceptos básicos:

Historia de JavaHistoria de Java

Arquitectura de Java (Maquina Virtual, Compilador Arquitectura de Java (Maquina Virtual, Compilador de Java...)de Java...)

Convenciones de codificacion en JavaConvenciones de codificacion en Java

Concepto de claseConcepto de clase

Concepto de interface Concepto de interface

Variables miembroVariables miembro

MétodosMétodos

PaquetesPaquetes

HerenciaHerencia

InterfacesInterfaces

Curso de Java en Curso de Java en ILCOMPILCOMP

Permisos de acceso (Encapsulacion)Permisos de acceso (Encapsulacion)

Transformacion de Tipo (Casting)Transformacion de Tipo (Casting)

PolimorfismoPolimorfismo

Clases de utilidadClases de utilidad

ArreglosArreglos

Clases String y StringBufferClases String y StringBuffer

EnvoltoriosEnvoltoriosColeccionesColecciones VectorVector Interface EnumerationInterface Enumeration HashtableHashtable TreeSetTreeSet Otras coleccionesOtras colecciones

Curso de Java en Curso de Java en ILCOMPILCOMP

ExcepcionesExcepciones Excepciones Estandar de JavaExcepciones Estandar de Java Lanzamiento de excepcionesLanzamiento de excepciones Capturar excepciones (try... catch)Capturar excepciones (try... catch) Crear nuevas ExcepcionesCrear nuevas Excepciones Manejo de excepciones con herencia de clasesManejo de excepciones con herencia de clases

Bases de datos:Bases de datos: JDBCJDBC Conectar a una base de datosConectar a una base de datos Ejecutar sentencias SQLEjecutar sentencias SQL Recuperar valoresRecuperar valores Actualizar tablasActualizar tablas Sentencias Preparadas (Interface PreparedStatement)Sentencias Preparadas (Interface PreparedStatement) TransaccionesTransacciones

Curso de Java en Curso de Java en ILCOMPILCOMP

Interfaces gráficas con JavaInterfaces gráficas con Java SwingSwing ContenedoresContenedores Manejo de eventosManejo de eventos AppletsApplets Eclipse SWTEclipse SWT GTKGTK

Compilar y empaquetar un programa JavaCompilar y empaquetar un programa Java

Eso es todo amigosEso es todo amigosMuchas gracias a todos!Muchas gracias a todos!

Instituto Latinoamericano de ComputacionInstituto Latinoamericano de Computacion

Pavel Stephan MunozPavel Stephan Munoz minibota.wordpress.com – minibota.wordpress.com –

minibota@gmail.comminibota@gmail.com

top related