Programación en Java I

PRÁCTICO

FORMACIÓN

J AVA ( I )
IGNACIO CÉSPEDES ORDUÑA icespedes@pcw.idg.es
BAJO

P R O G R A M AC I Ó N E N

¿CONOCE EL LENGUAJE DE PROGRAMACIÓN JAVA? SI TIENE INQUIETUDES SOBRE EL TEMA NO DEJE DE SEGUIR NUESTRO CURSO DE INICIACIÓN. HOY ES UN BUEN MOMENTO PARA EMPEZAR.

NIVEL DE DIFICULTAD: OBJETIVO DEL ARTÍCULO: Iniciarse en la programación con JAVA. HERRAMIENTAS NECESARIAS: Entorno de desarrollo JAVA.

F O R M AC I Ó N

Si ha pensado en alguna ocasión en aprender un lenguaje de programación ¡enhorabuena! Va a tener la oportunidad de iniciarse en uno de los lenguajes más completos que existen hasta el momento. Java le va a permitir desarrollar aplicaciones de muy distinta índole, brindándole la oportunidad de ejecutarlas en la mayoría de las plataformas existentes. Hemos de destacar la evolución que ha experimentado Java desde sus inicios. Nació como lenguaje para programar pequeñas aplicaciones en electrodomésticos de uso cotidiano y ha terminado siendo uno de los lenguajes más populares y versátiles que existen en la actualidad.

Con él podremos hacer aplicaciones de propósito general, pequeñas aplicaciones móviles para Web (más conocidas como applets), desarrollar componentes para procesar en un servidor (los denominados servlets), construir páginas dinámicas basadas en plantillas JSP, e incluso desarrollar aplicaciones para dispositivos tales como teléfonos móviles y PDA. Esta diversidad de aplicaciones hace conve niente la creación de una jerarquía de clases que van de lo más genérico y abierto a lo más especí fi co y concreto. Así, por ejemplo, tendremos J2SE (Standard Edition), J2EE (Enterprise Edition) o J2ME (Micro Edition).

216

W W W. P C W O R L D . E S

SEPTIEMBRE 2004

-En cuanto a las clases. por consiguiente. E S . tiene la peculiaridad de que dispone de una opción de bienvenida que nos permite recorrer brevemente la mayoría de las funcionalidades del propio entorno. por lo que nuevamente nos adentramos en tecnologías de POO. Windows 98. el panel de contenido. Sin embargo. En primer lugar están las públicas (public). los conceptos siguientes: -El elemento clave en la programación orientada a objetos es la clase. XP. y de esta forma familiarizarnos con él –ver Figura2-. ELIJA EL ENTORNO DE DE SARROLLO En la actualidad existe gran variedad de entornos de desarrollo a través de los cuales puede trabajar. que pueden ser accesibles desde otras clases. Si bien es cierto que no cuen- Visión general del entorno integrado de trabajo. este entorno de desarrollo es similar en aspecto y funcionalidades a la mayoría de los entornos de programación – ver Figura 1-. ayuda y vistosidad.0 en cuanto a facilidad de uso. las pestañas por cada fichero que esté abierto. tan con las ventajas de un entorno de programación como JBuilder 6. ya que F O R M AC I Ó N 217 SEPTIEMBRE 2004 W W W. En esta opción de recorrido sobre el programa se muestran opciones generales sobre el entorno. que se caracterizan por tener al menos un método abstracto.0. y quizás la más importante. -En tercer lugar encontramos el modificador de clase final. cuenta con una opción de ayuda online que le permitirá resolver cualquier tipo de duda a medida que vaya programando. si no le es posible hacerse con una versión de JBuilder 6. que cuenta con una serie de métodos y propiedades que en realidad son los que definen el comportamiento y la forma de un objeto. al menos para empezar. ejecutar sin problemas la aplicación en cuestión.FORMACIÓN PRÁCTICO Pero sin duda la característica fundamental de Java. ya que en este tipo de ayudas se suele aprender bastante más que en los libros convencionales –ver Figura2-. Para el desarrollo del curso que iniciamos este mes utilizaremos JBuilder 6. En este último podemos encontrar la estructura del programa con sus constructores. son igualmente válidos para dar los primeros pasos en la programación. bien directamente o por herencia (definimos la herencia más adelante) desde otras clases fuera del paquete donde fueron declaradas. En cualquier caso. como Solaris. no es otra que su capacidad de ejecución en las distintas plataformas del mercado. Como la mayoría de entornos de programación. más bien se utiliza como clase base para la herencia. por último. Hemos de puntualizar que no pondremos versión. que permite interpretar el lenguaje ByteCode generado por el compilador y. Este tipo de clases no se instancia. la ventana de errores previos a la compilación y. ya que de algunos de ellos existen varias en el mercado y no es imprescindible que disponga de la última (ver Tabla A). Sin duda es de gran utilidad. -En segundo lugar nos encontramos con las clases abstractas (abstract). Esta capacidad de ejecución en distintas plataformas se consigue gracias a la Máquina Virtual Java (JVM). que tiene el efecto contrario a abstract. como la barra de herramientas del proyecto. NT. Como podrá comprobar. A continuación haremos una breve descripción de los más populares para que tenga una visión general de ellos y pueda elegir aquel que crea más conveniente o considere que es más fácil de manejar. puede acudir a la página de Sun y bajarse alguno de los programas gratuitos que en ella se ofrecen. específica en cada plataforma. Si no está aún familiarizado con este tipo de programación le adelantamos que deberá tener bien claros. CAR AC TERÍS TICA S GENER ALE S DEL LENGUA JE Se trata de un lenguaje orientado a objetos. 2000. Linux.0. etc. existen varios tipos dependiendo del modificador que utilicemos en cada caso. P C W O R L D . Estamos seguros de que le ayudará a la hora de comenzar a trabajar con el entorno.

no permite a nadie heredar de este tipo de clase. fácil y sencillo de manejar. dispone de editor. para construir aplicaciones Java. Contiene un editor sensible al lenguaje Java. Por lo general. que son suficientes para empezar. depurador. etc. ETC. Es un sistema visual integrado. NT. pero en principio para no confundir al lector más profano en la materia nos quedaremos con estos. explicaremos el objeto. Es cierto que existen algunos modificadores más. Tabla A. motor de base de datos. E S SEPTIEMBRE 2004 . para crear un objeto tanto en Java como en lenguajes similares tendremos que seguir estos pasos: en primer lugar proporcionaremos un nombre al objeto (declaración). COMO SOLARIS. al tratarse de POO no podemos olvidar dos características fundamentales: se trata de la herencia y el polimorfismo.PRÁCTICO FORMACIÓN Breve paseo descriptivo del nuevo entorno de desarrollo. un depurador y un analizador de clases. que no es otra cosa que una instancia de una clase. NO ES OTRA QUE SU CAPACIDAD DE EJECUCIÓN EN LAS DISTINTAS PLATAFORMAS DEL MERCADO. En él encontramos todos los elementos necesarios para el desarrollo de programas Java. etc. Incluye gestor de plantillas. es de IBM y se lo puede bajar gratuitamente de su página web. P C W O R L D . visor de clases. LA CARACTERÍSTICA FUNDAMENTAL DE JAVA. WINDOWS 98. En cuanto al polimorfismo. compilador. Algunos de los entornos de desarrollo existentes en la actualidad. después le asignaremos memoria (instanciación) y por último podremos inicializarlo y de esta forma proporcionaremos valores iniciales a las variables de instancia del objeto. XP. Está considerado como uno de los mejores entornos de desarrollo. 218 W W W. Para los profanos en la materia pondremos un ejemplo de la vida real: supongamos que tomamos como clase padre la clase aves . perfectamente podríamos decir que la clase pato hereda todas las propiedades y funcionalidades de su clase padre aves. 2000. En este punto. Definiremos la primera de ellas como la posibilidad que brinda la POO de permitir que clases hijas tengan métodos o funciones que realmente pertenecen a una clase padre. Poderoso entorno de desarrollo para sacar todo el partido a la tecnología Java. F O R M AC I Ó N NOMBRE DE LA APLICACIÓN JBuilder Standard VisualAge for Java CodeWarrior Lite Free Builder Java Workshop Community Edition JDesigner Pro FreeJava BREVE DESCRIPCIÓN Entorno de desarrollo de Borland ideal para el desarrollo rápido de aplicaciones. Tan sólo tiene que registrarse como usuario. Y QUIZÁS LA MÁS IMPORTANTE. gestor de proyectos. lo podríamos definir como la capacidad de definir un método de una clase con el mismo nombre pero con parámetros distintos. Es sencillo pero eficaz. Una vez visto lo que es una clase. LINUX.

P C W O R L D . Invocación remota de métodos. Respecto a esta última característica debemos hablar de un elemento nuevo: Garbage Collector. Componentes gráficos para aplicaciones: botones. Tratamiento de información gráfica bidimensional. certificación. Especificaciones para aplicaciones de telefonía. Se eliminan aquellas características que a lo largo del tiempo resultaron más complicadas en lenguajes como C y C++. Especificaciones para transacciones comerciales en Internet. reciclador de memoria dinámica. pestañas. por último. encapsular el acceso a ellos y determinar las acciones que se pueden aplicar. Especificaciones para la manipulación de objetos tridimensionales. Especificaciones para el reconocimiento y síntesis de voz. captura y videoconferencia. Entorno para determinar el tipo de datos. A través de este elemento nuevo se liberan automáticamente grandes bloques de memoria. Especificaciones para el acceso y utilización de información interactiva. Especificaciones para aparatos electrónicos industriales. definición de tipos (typedef ). o lo que es lo mismo. E S SEPTIEMBRE 2004 . no existen referencias. Especificación para manipulación y movimiento de objetos bidimensionales. Especificaciones para aparatos electrónicos. Se utiliza para componentes que necesitan encriptación. registros (struct).PRÁCTICO FORMACIÓN Ayuda online a la hora de programar. protocolo e interfaces de programación para reproductores multimedia. limitando así en gran medida la fragmentación de la misma. Entre las características eliminadas destacan la eliminación de la aritmética de punteros. Proporciona servicios de directorio y de localización de recursos en un entorno corporativo. macros (#define) y. Nos encontramos con un lenguaje de gran potencia. Especificación para crear applets que se ejecutan en el servidor. pero con una mayor simplicidad a la hora de programar. Una vez descrita la esencia fundamental de la POO hemos de destacar en detrimento de otros lenguajes de similares características una serie de ventajas que nos proporciona Java a la hora de ponernos a desarrollar aplicaciones. Principales API de JAVA. Especificaciones para la arquitectura. firmas digitales y autenticación. la necesidad de liberar memoria. tipo tarjeta de crédito. Jerarquía de clases para el desarrollo de aplicaciones gráficas e interfaces de usuario. NOMBRE Java Enterprise JDBC API Java RMI Java IDL JNDI JavaBeans JAF Java Security API JFC Swing Set Java 2D Java Servlet API Java Server API Java Comerse API F O R M AC I Ó N Java Media API JMF Java Collaboration Java Telephony Java Speech Java Animation Java 3D Personal Java Java Smart Card Embedded Java Tabla B. 220 W W W. Se utiliza para el intercambio de información entre un servidor web y aquellas aplicaciones que se ejecutan en el entorno. Hace compatible el modelo de objetos CORBA. A su vez ofrece una mejor identificación de errores. Especificaciones para la comunicación interactiva bidireccional. ya que tanto en tiempo de compilación como de ejecución DESCRIPCIÓN Le permitirá acceder a bases de datos vía SQL. Especificaciones para tarjetas inteligentes.

PRINCIPALES API DE LA PLATAFORMA JAVA Para ayudar al lector a hacerse una idea de cuáles son las API (interfaces de programación de aplicaciones) que forman la plataforma Java. para terminar con este breve resu men de las principales características del lenguaje Java. PERO CON UNA MAYOR SIMPLICIDAD A LA HORA DE PROGRAMAR. pero al menos si decide seguir formándose sabrá de su existencia y podrá continuar investigando. es decir. E S SEPTIEMBRE 2004 221 . En realidad en este curso de iniciación no veremos gran parte de ellas. P C W O R L D .FORMACIÓN PRÁCTICO NOS ENCONTRAMOS CON UN LENGUAJE DE GRAN POTENCIA. SE ELIMINAN AQUELLAS CARACTERÍSTICAS QUE A LO LARGO DEL TIEMPO RESULTARON MÁS COMPLICADAS EN LENGUAJES COMO C Y C++ se agudiza su detección. tiene la capacidad de realizar varias tareas simultáneamente en una misma aplicación. destacaremos que es un lenguaje multitarea. Dichas tareas pueden ser pequeños procesos que al interactuar en conjunto den como resultado una solución global. Esta característica viene dada por una serie de librerías y herramientas con las que podemos contar para hacer aplicaciones distribuidas. PCW Ignacio Céspedes Orduña es técnico desarrollador de aplicaciones y nuevas tecnologías. Nos proporciona también la capacidad de desarrollar aplicaciones que puedan correr en varias máquinas interactuando entre sí. F O R M AC I Ó N W W W. presentamos una pequeña tabla (Tabla B) con una descripción breve. Por último. facilitando en gran medida el desarrollo de soluciones.

Sign up to vote on this title
UsefulNot useful