Sei sulla pagina 1di 50

PROG01_Contenidos

1 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

La evolucin de Internet y de las nuevas tecnologas, as como


las diferentes posibilidades para establecer nuevas lneas de
negocio para la empresa BK Programacin, han hecho que Ada
haya decidido abrir una va de innovacin. Para ello, su
empresa deber realizar el desarrollo de sus aplicaciones a
travs de lenguajes y tcnicas de programacin modernos,
aunque con una eficiencia y flexibilidad contrastadas.
Mara y Juan, ayudados y orientados por Ada, recordarn y
ampliarn sus conocimientos relacionados con la programacin,
permitindoles crear software que pueda adaptarse a nuevas situaciones, como el funcionamiento en
diferentes plataformas (PDA, Mviles, Web, etc.) o la interaccin con bases de datos. Todo ello sin
perder de vista de donde parten y hacia dnde quieren redirigir sus esfuerzos.
Estas innovaciones, junto a la predisposicin para adaptarse y evolucionar que BK Programacin est
potenciando en todas sus reas, repercutirn en una mayor capacidad de respuesta ante las
necesidades de sus posibles clientes. En definitiva, conseguir mayor competitividad.

12/11/2014 12:40

PROG01_Contenidos

2 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Cuntas acciones de las que has realizado hoy, crees que estn relacionadas con la
programacin? Hagamos un repaso de los primeros instantes del da: te ha
despertado la alarma de tu telfono mvil o radio-despertador, has preparado el
desayuno utilizando el microondas, mientras desayunabas has visto u odo las
ltimas noticias a travs de tu receptor de televisin digital terrestre, te has vestido y
puede que hayas utilizado el ascensor para bajar al portal y salir a la calle, etc. Quiz
no es necesario que continuemos ms para darnos cuenta de que casi todo lo que
nos rodea, en alguna medida, est relacionado con la programacin, los programas y
el tratamiento de algn tipo de informacin.
El volumen de datos que actualmente manejamos y sus innumerables posibilidades
de tratamiento constituyen un vasto territorio en el que los programadores tienen
mucho que decir.
En esta primera unidad realizaremos un recorrido por los conceptos fundamentales de la programacin de
aplicaciones. Iniciaremos nuestro camino conociendo con qu vamos a trabajar, qu tcnicas podemos emplear y
qu es lo que pretendemos conseguir. Continuando con el anlisis de las diferentes formas de programacin
existentes, identificaremos qu fases conforman el desarrollo de un programa, avanzaremos detallando las
caractersticas relevantes de cada uno de los lenguajes de programacin disponibles, para posteriormente,
realizar una visin general del lenguaje de programacin Java. Finalmente, tendremos la oportunidad de conocer
con qu herramientas podramos desarrollar nuestros programas, escogiendo entre una de ellas para ponernos
manos a la obra utilizando el lenguaje Java.

12/11/2014 12:40

PROG01_Contenidos

3 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Ada conoce bien lo que significa tener que llevar a cabo el


proceso completo de creacin de software y sabe que, en
ocasiones, no se le da la importancia que debera a las fases
iniciales de este proceso. Quiere que Juan, que desarrolla
programas casi sin darse cuenta, recuerde las ventajas que
aporta un buen anlisis inicial de los problemas a solucionar y
que no aborde el desarrollo de sus programas sentndose
directamente ante el ordenador a teclear cdigo.
Juan le comenta a Ada y a Mara: La verdad es que cuando conoces bien un lenguaje de
programacin crees que puedes hacer cualquier programa directamente sobre el ordenador, pero al
final te das cuenta de que deberas haberte parado a planificar tu trabajo. Muchas veces tienes que
volver atrs, recodificar y en ocasiones, rehacer gran parte del programa porque lo que tienes no est
bien planteado.
Mara, que permanece atenta a lo que dicen Ada y Juan, quiere aprender bien desde el principio y
tendr la ventaja de tener a su lado a dos expertos.

12/11/2014 12:40

PROG01_Contenidos

4 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

2.1.- Buscando una solucin.


Generalmente, la primera razn que mueve a una persona hacia el aprendizaje de
la programacin es utilizar el ordenador como herramienta para resolver
problemas concretos. Como en la vida real, la bsqueda y obtencin de una
solucin a un problema determinado, utilizando medios informticos, se lleva a
cabo siguiendo unos pasos fundamentales. En la siguiente tabla podemos ver
estas analogas.

Resolucin de problemas
En la vida real...

En Programacin...

Observacin de la
situacin o problema.

Anlisis del problema: requiere que el problema sea


definido y comprendido claramente para que pueda
ser analizado con todo detalle.

Pensamos en una o
varias
posibles
soluciones.

Diseo o desarrollo de algoritmos: procedimiento


paso a paso para solucionar el problema dado.

Aplicamos la solucin
que estimamos ms
adecuada.

Resolucin del algoritmo elegido en la


computadora: consiste en convertir el algoritmo en
programa, ejecutarlo y comprobar que soluciona
verdaderamente el problema.

Qu virtudes debera tener nuestra solucin?


Correccin y eficacia: si resuelve el problema adecuadamente.
Eficiencia: si lo hace en un tiempo mnimo y con un uso ptimo de los recursos del sistema.
Para conseguirlo, cuando afrontemos la construccin de la solucin tendremos que tener en cuenta los
siguientes conceptos:
1. Abstraccin: se trata de realizar un anlisis del problema para descomponerlo en problemas ms
pequeos y de menor complejidad, describiendo cada uno de ellos de manera precisa. Divide y
vencers, esta suele ser considerada una filosofa general para resolver problemas y de aqu que su
nombre no slo forme parte del vocabulario informtico, sino que tambin se utiliza en muchos otros
mbitos.
2. Encapsulacin: consiste en ocultar la informacin para poder implementarla de diferentes maneras sin
que esto influya en el resto de elementos.
3. Modularidad: estructuraremos cada parte en mdulos independientes, cada uno de ellos tendr su
funcin correspondiente.

Roger Pressman: El comienzo de la sabidura para un ingeniero de software es


reconocer la diferencia entre hacer que un programa funcione y conseguir que lo haga
correctamente.

12/11/2014 12:40

PROG01_Contenidos

5 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

2.2.- Algoritmos y programas.


Despus de analizar en detalle el problema a solucionar, hemos de disear y desarrollar el algoritmo adecuado.
Pero, Qu es un algoritmo?
Algoritmo: secuencia ordenada de pasos, descrita sin ambigedades, que conducen a la solucin de
un problema dado.
Los algoritmos son independientes de los lenguajes de programacin y de
las computadoras donde se ejecutan. Un mismo algoritmo puede ser
expresado en diferentes lenguajes de programacin y podra ser ejecutado
en diferentes dispositivos. Piensa en una receta de cocina, sta puede ser
expresada en castellano, ingls o francs, podra ser cocinada en fogn o
vitrocermica, por un cocinero o ms, etc. Pero independientemente de
todas estas circunstancias, el plato se preparar siguiendo los mismos
pasos.
La diferencia fundamental entre algoritmo y programa es que, en el
segundo, los pasos que permiten resolver el problema, deben escribirse en un determinado lenguaje de
programacin para que puedan ser ejecutados en el ordenador y as obtener la solucin.
Los lenguajes de programacin son slo un medio para expresar el algoritmo y el ordenador un procesador
para ejecutarlo. El diseo de los algoritmos ser una tarea que necesitar de la creatividad y conocimientos de
las tcnicas de programacin. Estilos distintos, de distintos programadores a la hora de obtener la solucin del
problema, darn lugar a algoritmos diferentes, igualmente vlidos.
En esencia, todo problema se puede describir por medio de un algoritmo y las caractersticas fundamentales que
stos deben cumplir son:
Debe ser preciso e indicar el orden de realizacin paso a paso.
Debe estar definido, si se ejecuta dos o ms veces, debe obtener el mismo resultado cada vez.
Debe ser finito, debe tener un nmero finito de pasos.
Pero cuando los problemas son complejos, es necesario descomponer stos en subproblemas ms simples y, a
diseo descendente o
diseo
su vez, en otros ms pequeos. Estas estrategias reciben el nombre de
modular (top-down design). Este sistema se basa en el lema divide y vencers.
Para representar grficamente los algoritmos que vamos a disear, tenemos a nuestra disposicin diferentes
herramientas que ayudarn a describir su comportamiento de una forma precisa y genrica, para luego poder
codificarlos con el lenguaje que nos interese. Entre otras tenemos:
Diagramas de flujo: Esta tcnica utiliza smbolos grficos para la representacin del algoritmo. Suele
utilizarse en las fases de anlisis.
constantes,
Pseudocdigo: Esta tcnica se basa en el uso de palabras clave en lenguaje natural,
variables, otros objetos, instrucciones y estructuras de programacin que expresan de forma escrita la
solucin del problema. Es la tcnica ms utilizada actualmente.
Tablas de decisin: En una tabla son representadas las posibles condiciones del problema con sus
respectivas acciones. Suele ser una tcnica de apoyo al pseudocdigo cuando existen situaciones
condicionales complejas.

A continuacin te ofrecemos dos enlaces muy interesantes:


En el primer vdeo puedes ver los elementos grficos fundamentales que se utilizan para la
generacin de diagramas de flujo.
En el segundo vdeo se realiza la construccin de un diagrama de flujo con una herramienta
grfica y su transformacin a pseudocdigo.

12/11/2014 12:40

PROG01_Contenidos

6 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Rellena los huecos con los conceptos adecuados:


A los pasos que permiten resolver el problema, escritos en un lenguaje de programacin, para que
puedan ser ejecutados en el ordenador y as obtener la solucin, se les denomina:
.

Enviar

12/11/2014 12:40

PROG01_Contenidos

7 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Ada comenta con Juan y Mara los distintos enfoques para el


desarrollo de programas que han existido a lo largo de la historia de la
programacin, destacando que todos van a tener que renovar su
forma de pensar, si quieren comenzar a utilizar un lenguaje moderno
que les permita construir programas adaptados a las nuevas
necesidades de sus clientes.

Cuntas formas existen de hacer las cosas? Supongo que estars


pensando: varias o incluso, muchas. Pero cuando se establece un patrn
para la creacin de aplicaciones nos estamos acercando al significado de la
palabra paradigma.

Paradigma de programacin: es un modelo bsico para el diseo y la implementacin de


programas. Este modelo determinar como ser el proceso de diseo y la estructura final del
programa.

El paradigma representa un enfoque particular o filosofa para la construccin de software. Cada uno tendr sus
ventajas e inconvenientes, ser ms o menos apropiado, pero no es correcto decir que exista uno mejor que los
dems.
Puedes acceder a un resumen de los diferentes paradigmas de programacin en el siguiente enlace:

12/11/2014 12:40

PROG01_Contenidos

8 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Resumen textual alternativo

Como habrs podido apreciar, existen mltiples paradigmas, incluso puede haber lenguajes de programacin que
Smalltalk es un lenguaje basado en el
no se clasifiquen nicamente dentro de uno de ellos. Un lenguaje como
Scheme, en cambio, soporta slo programacin
paradigma orientado a objetos. El lenguaje de programacin
Python, soporta mltiples paradigmas.
funcional.

Te proponemos el siguiente enlace en el que encontrars informacin adicional sobre los diferentes
paradigmas de programacin.
Paradigmas de programacin y lenguajes

Cul es el objetivo que se busca con la aplicacin de los diferentes enfoques? Fundamentalmente, reducir la
dificultad para el mantenimiento de las aplicaciones, mejorar el rendimiento del programador y, en general,
mejorar la productividad y calidad de los programas.

En qu paradigma de programacin podramos enmarcar el lenguaje de programacin Java?


Programacin Estructurada.
Programacin Declarativa.
Programacin Orientada a Objetos.

12/11/2014 12:40

PROG01_Contenidos

9 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Juan pregunta a Ada cmo van a realizar todo el proceso de


produccin, y duda si el utilizar un nuevo lenguaje supondr
cambiar drsticamente los mtodos aprendidos en el pasado.
Ada tranquiliza a Juan y a Mara: Est claro que las fases
principales que hemos estado llevando a cabo a lo largo de
nuestros anteriores proyectos se seguirn aplicando, aunque
con algunas diferencias. Lo ms importante Juan, es que
sigamos adecuadamente el mtodo de trabajo para conseguir buenos resultados.
Me costar mucho trabajo adaptarme? pregunta Mara.
Ada le contesta sentndose a su lado: No te preocupes Mara, se trata de adaptar conocimientos
que ya tienes y aprender algunos otros.

Sea cual sea el estilo que escojamos a la hora de automatizar una determinada tarea, debemos realizar el
proceso aplicando un mtodo a nuestro trabajo. Es decir, sabemos que vamos a dar solucin a un problema,
aplicando una filosofa de desarrollo y lo haremos dando una serie de pasos que deben estar bien definidos.
El proceso de creacin de software puede dividirse en diferentes fases:
Fase de resolucin del problema.
Fase de implementacin.
Fase de explotacin y mantenimiento.
A continuacin, analizaremos cada una de ellas.

12/11/2014 12:40

PROG01_Contenidos

10 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

4.1.- Resolucin del problema.


Para el comienzo de esta fase, es necesario que el problema sea definido y comprendido claramente para que
pueda ser analizado con todo detalle. A su vez, la fase de resolucin del problema puede dividirse en dos etapas:
a. Anlisis
Por lo general, el anlisis indicar la especificacin de requisitos que
se deben cubrir. Los contactos entre el analista/programador y el
cliente/usuario sern numerosos, de esta forma podrn ser conocidas
todas las necesidades que precisa la aplicacin. Se especificarn los
procesos y estructuras de datos que se van a emplear. La creacin
de prototipos ser muy til para saber con mayor exactitud los puntos
a tratar.
El anlisis inicial ofrecer una idea general de lo que se solicita, realizando posteriormente sucesivos
refinamientos que servirn para dar respuesta a las siguientes cuestiones:
Cul es la informacin que ofrecer la resolucin del problema?
Qu datos son necesarios para resolver el problema?
La respuesta a la primera pregunta se identifica con los resultados deseados o las salidas del problema.
La respuesta a la segunda pregunta indicar qu datos se proporcionan o las entradas del problema.
En esta fase debemos aprender a analizar la documentacin de la empresa , investigar, observar todo lo
que rodea el problema y recopilar cualquier informacin til.

Vamos a ilustrar esta fase realizando el anlisis del siguiente problema:


Leer el radio de un crculo y calcular e imprimir su superficie y circunferencia.
Est claro que las entradas de datos en este problema se reducen al radio del crculo, pero piensa
qu salidas de datos ofrecer la solucin?

b. Diseo
En esta etapa se convierte la especificacin realizada en la fase de anlisis en un diseo ms detallado,
indicando el comportamiento o la secuencia lgica de instrucciones capaz de resolver el problema
planteado. Estos pasos sucesivos, que indican las instrucciones a ejecutar por la mquina, constituyen lo
que conocemos como algoritmo.
Consiste en plantear la aplicacin como una nica operacin global, e ir descomponindola en
operaciones ms sencillas, detalladas y especficas. En cada nivel de refinamiento, las operaciones
identificadas se asignan a mdulos separados.
Hay que tener en cuenta que antes de pasar a la implementacin del algoritmo, hemos de asegurarnos
que tenemos una solucin adecuada. Para ello, todo diseo requerir de la realizacin de la prueba o
traza del programa. Este proceso consistir en un seguimiento paso a paso de las instrucciones del
algoritmo utilizando datos concretos. Si la solucin aportada tiene errores, tendremos que volver a la fase
de anlisis para realizar las modificaciones necesarias o tomar un nuevo camino para la solucin. Slo
cuando el algoritmo cumpla los requisitos y objetivos especificados en la fase de anlisis se pasar a la
fase de implementacin.

12/11/2014 12:40

PROG01_Contenidos

11 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

4.2.- Implementacin.
Si la fase de resolucin del problema requiere un especial cuidado en la
realizacin del anlisis y el posterior diseo de la solucin, la fase de
implementacin cobra tambin una especial relevancia. Llevar a la realidad
nuestro algoritmo implicar cubrir algunas etapas ms que se detallan a
continuacin.
a. Codificacin o construccin
Esta etapa consiste en transformar o traducir los resultados
obtenidos a un determinado lenguaje de programacin. Para
comprobar la calidad y estabilidad de la aplicacin se han de realizar una serie de pruebas que
comprueben las funciones de cada mdulo (pruebas unitarias), que los mdulos funcionan bien entre ellos
(pruebas de interconexin) y que todos funcionan en conjunto correctamente (pruebas de integracin).
Cuando realizamos la traduccin del algoritmo al lenguaje de programacin debemos tener en cuenta las
reglas gramaticales y la sintaxis de dicho lenguaje. Obtendremos entonces el cdigo fuente, lo que
normalmente conocemos por programa.
Pero para que nuestro programa comience a funcionar, antes debe ser traducido a un lenguaje que la
mquina entienda. Este proceso de traduccin puede hacerse de dos formas, compilando o interpretando
el cdigo del programa.
Compilacin: Es el proceso por el cual se traducen las instrucciones escritas en un determinado
lenguaje de programacin a lenguaje que la mquina es capaz de interpretar.
Compilador: programa informtico que realiza la traduccin. Recibe el cdigo fuente, realiza un
anlisis lexicogrfico, semntico y sintctico, genera un cdigo intermedio no optimizado, optimiza
dicho cdigo y finalmente, genera el cdigo objeto para una plataforma especfica.
Intrprete: programa informtico capaz de analizar y ejecutar otros programas, escritos en un
lenguaje de alto nivel. Los intrpretes se diferencian de los compiladores en que mientras estos
traducen un programa desde su descripcin en un lenguaje de programacin al cdigo de mquina
del sistema, los intrpretes slo realizan la traduccin a medida que sea necesaria, tpicamente,
instruccin por instruccin, y normalmente no guardan el resultado de dicha traduccin.

Una vez traducido, sea a travs de un proceso de compilacin o de interpretacin, el programa podr ser
ejecutado.
b. Prueba de ejecucin y validacin
Para esta etapa es necesario implantar la aplicacin en el sistema donde va a funcionar, debe ponerse en
marcha y comprobar si su funcionamiento es correcto. Utilizando diferentes datos de prueba se ver si el
programa responde a los requerimientos especificados, si se detectan nuevos errores, si stos son bien
gestionados y si la interfaz es amigable. Se trata de poner a prueba nuestro programa para ver su
respuesta en situaciones difciles.
Mientras se detecten errores y stos no se subsanen no podremos avanzar a la siguiente fase. Una vez
corregido el programa y testeado se documentar mediante:
Documentacin interna: Encabezados, descripciones, declaraciones del problema y comentarios
que se incluyen dentro del cdigo fuente.
Documentacin externa: Son los manuales que se crean para una mejor ejecucin y utilizacin
del programa.

Rellena los huecos con los conceptos adecuados:

12/11/2014 12:40

PROG01_Contenidos

12 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

En la fase de codificacin, hemos de tener en cuenta la


el cdigo fuente o programa. Posteriormente, ste deber ser

del lenguaje para obtener


o

para que pueda ser ejecutado posteriormente.

Enviar

12/11/2014 12:40

PROG01_Contenidos

13 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

4.3.- Explotacin.
Cuando el programa ya est instalado en el sistema y est siendo de utilidad
para los usuarios, decimos que se encuentra en fase de explotacin.
Peridicamente ser necesario realizar evaluaciones y, si es necesario, llevar
a cabo modificaciones para que el programa se adapte o actualice a nuevas
necesidades, pudiendo tambin corregirse errores no detectados
anteriormente. Este proceso recibe el nombre de mantenimiento del
software.

Mantenimiento del software: es el proceso de mejora y optimizacin del software despus de su


entrega al usuario final. Involucra cambios al software en orden de corregir defectos y dependencias
encontradas durante su uso, as como la adicin de nuevas funcionalidades para mejorar la usabilidad
y aplicabilidad del software.
Ser imprescindible aadir una documentacin adecuada que facilite al programador la comprensin, uso y
modificacin de dichos programas.

12/11/2014 12:40

PROG01_Contenidos

14 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Mara le pregunta a Juan: Juan, qu ocurre cuando terminas


un programa? Se entrega al cliente y ya est? La verdad es que
los programas que he hecho han sido para uso propio y no s
cmo termina el proceso con los clientes.
Contesta Juan: Pues vers, cuando terminas un programa, o
crees que lo has terminado, hay que llevar a cabo toda clase de
pruebas para ver dnde puede fallar. Despus mejoras los
posibles fallos y posteriormente se entrega al cliente, ah es
donde ves si tu software ha sido bien construido. El cliente lo utilizar y durante un tiempo puede ser
que haya que arreglar alguna cosilla. Y cuando ya est todo correcto, en ocasiones, se establece un
contrato de mantenimiento con el cliente. Como ves, desarrollar software no consiste slo en
programar y ya est.

Sean cuales sean las fases en las que realicemos el proceso de desarrollo de software, y casi
independientemente de l, siempre se debe aplicar un modelo de ciclo de vida.
Ciclo de vida del software: es una sucesin de estados o fases por las cuales pasa un software a lo
largo de su "vida".
El proceso de desarrollo puede involucrar siempre las siguientes etapas mnimas:
Especificacin y Anlisis de requisitos.
Diseo.
Codificacin.
Pruebas.
Instalacin y paso a Produccin.
Mantenimiento.
Existen varios tipos de ciclos de vida del software, a continuacin te mostramos un resumen de los ms
importantes.

12/11/2014 12:40

PROG01_Contenidos

15 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Resumen textual alternativo

Entre los distintos tipos de ciclo de vida del software, los modelos incremental y en cascada
son modelos del tipo evolutivo.
Verdadero.

Falso.

12/11/2014 12:40

PROG01_Contenidos

16 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Ada y Juan estn recordando lo complejos que eran algunos


lenguajes de programacin, Ada comenta: Cuando yo
empec en esto, haba relativamente pocos lenguajes de
programacin y no permitan hacer programas como los que
ahora desarrollamos.
Juan indica que l conoce las caractersticas generales de
algunos lenguajes, pero que le gustara saber algo ms sobre
los que hubo, hay y habr.
Mara que asiente con la cabeza, piensa que aprender ms sobre los lenguajes disponibles en la
actualidad puede ayudar a la hora de elegir entre unos u otros.

Como hemos visto, en todo el proceso de resolucin de un problema mediante la creacin de software, despus
del anlisis del problema y del diseo del algoritmo que pueda resolverlo, es necesario traducir ste a un
lenguaje que exprese claramente cada uno de los pasos a seguir para su correcta ejecucin. Este lenguaje
recibe el nombre de lenguaje de programacin.

Lenguaje de programacin: Conjunto de reglas sintcticas y semnticas, smbolos y palabras


especiales establecidas para la construccin de programas. Es un lenguaje artificial, una construccin
mental del ser humano para expresar programas.
Gramtica del lenguaje: Reglas aplicables al conjunto de smbolos y palabras especiales del
lenguaje de programacin para la construccin de sentencias correctas.
Lxico: Es el conjunto finito de smbolos y palabras especiales, es el vocabulario del lenguaje.
Sintaxis: Son las posibles combinaciones de los smbolos y palabras especiales. Est relacionada
con la forma de los programas.
Semntica: Es el significado de cada construccin del lenguaje, la accin que se llevar a cabo.

Hay que tener en cuenta que pueden existir sentencias sintcticamente correctas, pero
semnticamente incorrectas. Por ejemplo, Un avestruz dio un zarpazo a su cuidador
est bien construida sintcticamente, pero es evidente que semnticamente no.
Una caracterstica relevante de los lenguajes de programacin es, precisamente, que
ms de un programador pueda usar un conjunto comn de instrucciones que sean
comprendidas entre ellos. A travs de este conjunto se puede lograr la construccin de
un programa de forma colaborativa.
Los lenguajes de programacin pueden ser clasificados en funcin de lo cerca que estn
del lenguaje humano o del lenguaje de los computadores. El lenguaje de los
computadores son cdigos binarios, es decir, secuencias de unos y ceros. Detallaremos
seguidamente las caractersticas principales de los lenguajes de programacin.

12/11/2014 12:40

PROG01_Contenidos

17 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

6.1.- Lenguaje mquina.


Este es el lenguaje utilizado directamente por el procesador, consta de un conjunto de
instrucciones codificadas en binario. Es el sistema de cdigos directamente interpretable
circuito microprogramable.
por un
Este fue el primer lenguaje utilizado para la programacin de computadores. De hecho,
cada mquina tena su propio conjunto de instrucciones codificadas en ceros y unos.
Cuando un algoritmo est escrito en este tipo de lenguaje, decimos que est en cdigo
mquina.
Programar en este tipo de lenguaje presentaba los siguientes inconvenientes:
Cada programa era vlido slo para un tipo de procesador u ordenador.
La lectura o interpretacin de los programas era extremadamente difcil y, por tanto, insertar
modificaciones resultaba muy costoso.
Los programadores de la poca deban memorizar largas combinaciones de ceros y unos, que equivalan
a las instrucciones disponibles para los diferentes tipos de procesadores.
Los programadores se encargaban de introducir los cdigos binarios en el computador, lo que provocaba
largos tiempos de preparacin y posibles errores.
A continuacin, se muestran algunos cdigos binarios equivalentes a las operaciones de suma, resta y
movimiento de datos en lenguaje mquina.

Algunas operaciones en
lenguaje mquina.
Operacin

Lenguaje mquina

SUMAR

00101101

RESTAR

00010011

MOVER

00111010

Dada la complejidad y dificultades que ofreca este lenguaje, fue sustituido por otros ms sencillos y fciles
utilizar. No obstante, hay que tener en cuenta que todos los programas para poder ser ejecutados, han de
traducirse siempre al lenguaje mquina que es el nico que entiende la computadora.

Como recordatorio, te proponemos el siguiente enlace sobre cmo funciona el sistema binario.

Resumen textual alternativo

12/11/2014 12:40

PROG01_Contenidos

18 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Rellena los huecos con los conceptos adecuados:


En el lenguaje mquina de algunos procesadores, la combinacin 00101101 equivale a la operacin
de

Enviar

12/11/2014 12:40

PROG01_Contenidos

19 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

6.2.- Lenguaje Ensamblador.


La evolucin del lenguaje mquina fue el lenguaje ensamblador. Las instrucciones ya no son secuencias binarias,
se sustituyen por cdigos de operacin que describen una operacin elemental del procesador. Es un lenguaje
de bajo nivel, al igual que el lenguaje mquina, ya que dependen directamente del hardware donde son
ejecutados.
Mnemotcnico: son palabras especiales, que sustituyen largas secuencias de ceros y unos,
utilizadas para referirse a diferentes operaciones disponibles en el juego de instrucciones que soporta
cada mquina en particular.
En ensamblador, cada instruccin (mnemotcnico) se corresponde a una instruccin del procesador. En la
siguiente tabla se muestran algunos ejemplos.

Algunas operaciones y su
mnemotcnico en lenguaje
Ensamblador.
Operacin

Lenguaje Ensamblador

MULTIPLICAR

MUL

DIVIDIR

DIV

MOVER

MOV

En el siguiente grfico puedes ver parte de un programa escrito en lenguaje ensamblador. En color rojo se ha
resaltado el cdigo mquina en
hexadecimal, en magenta el cdigo escrito en ensamblador y en azul, las
direcciones de memoria donde se encuentra el cdigo.

Pero aunque ensamblador fue un intento por aproximar el lenguaje de los procesadores al lenguaje humano,
presentaba mltiples dificultades:
Los programas seguan dependiendo directamente del hardware que los soportaba.
Los programadores tenan que conocer detalladamente la mquina sobre la que programaban, ya que
deban hacer un uso adecuado de los recursos de dichos sistemas.
La lectura, interpretacin o modificacin de los programas segua presentando dificultades.
Todo programa escrito en lenguaje ensamblador necesita de un intermediario, que realice la traduccin de cada
una de las instrucciones que componen su cdigo al lenguaje mquina correspondiente. Este intermediario es el
programa ensamblador. El programa original escrito en lenguaje ensamblador constituye el cdigo fuente y el
programa traducido al lenguaje mquina se conoce como programa objeto que ser directamente ejecutado por
la computadora.

12/11/2014 12:40

PROG01_Contenidos

20 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

6.3.- Lenguajes compilados.


Para paliar los problemas derivados del uso del lenguaje ensamblador y con el
objetivo de acercar la programacin hacia el uso de un lenguaje ms cercano al
humano que al del computador, nacieron los lenguajes compilados. Algunos ejemplos
C++, etc.
de este tipo de lenguajes son: Pascal, Fortran, Algol, C,
Al ser lenguajes ms cercanos al humano, tambin se les denomina lenguajes de
alto nivel. Son ms fciles de utilizar y comprender, las instrucciones que forman
parte de estos lenguajes utilizan palabras y signos reconocibles por el programador.
Cules son sus ventajas?
Son mucho ms fciles de aprender y de utilizar que sus predecesores.
Se reduce el tiempo para desarrollar programas, as como los costes.
Son independientes del hardware, los programas pueden ejecutarse en
diferentes tipos de mquina.
La lectura, interpretacin y modificacin de los programas es mucho ms sencilla.
Pero un programa que est escrito en un lenguaje de alto nivel tambin tiene que traducirse a un cdigo que
pueda utilizar la mquina. Los programas traductores que pueden realizar esta operacin se llaman
compiladores.

Compilador: Es un programa cuya funcin consiste en traducir el cdigo fuente de un programa


escrito en un lenguaje de alto nivel a lenguaje mquina. Al proceso de traduccin se le conoce con el
nombre de compilacin.
Para ilustrar el proceso de compilacin de programas te proponemos el siguiente enlace:
Proceso de compilacin en varias plataformas
El compilador realizar la traduccin y adems informar de los posibles errores. Una vez subsanados, se
generar el programa traducido a cdigo mquina, conocido como cdigo objeto. Este programa an no podr
ser ejecutado hasta que no se le aadan los mdulos de enlace o bibliotecas, durante el proceso de enlazado.
Una vez finalizado el enlazado, se obtiene el cdigo ejecutable.

Durante la fase de enlazado, se incluyen en el cdigo fuente determinados mdulos


(bibliotecas) que son necesarios para que el programa pueda realizar ciertas tareas,
posteriormente se obtendr el cdigo ejecutable.
Verdadero.

Falso.

12/11/2014 12:40

PROG01_Contenidos

21 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

6.4.- Lenguajes interpretados.


Se caracterizan por estar diseados para que su ejecucin se realice a travs de un intrprete. Cada instruccin
escrita en un lenguaje interpretado se analiza, traduce y ejecuta tras haber sido verificada. Una vez realizado el
proceso por el intrprete, la instruccin se ejecuta, pero no se guarda en memoria.
Intrprete: Es un programa traductor de un lenguaje de alto nivel en el que el proceso de traduccin y
de ejecucin se llevan a cabo simultneamente, es decir, la instruccin se pasa a lenguaje mquina y
se ejecuta directamente. No se genera programa objeto, ni programa ejecutable.
Los lenguajes interpretados generan programas de menor tamao que los
generados por un compilador, al no guardar el programa traducido a cdigo
mquina. Pero presentan el inconveniente de ser algo ms lentos, ya que
han de ser traducidos durante su ejecucin. Por otra parte, necesitan
disponer en la mquina del programa intrprete ejecutndose, algo que no
es necesario en el caso de un programa compilado, para los que slo es
necesario tener el programa ejecutable para poder utilizarlo.
Ejemplos de lenguajes interpretados son: Perl, PHP, Python, JavaScript,
etc.
A medio camino entre los lenguajes compilados y los interpretados, existen los lenguajes que podemos
denominar pseudo-compilados o pseudo-interpretados, es el caso del Lenguaje Java. Java puede verse
como compilado e interpretado a la vez, ya que su cdigo fuente se compila para obtener el cdigo binario en
forma de bytecodes, que son estructuras parecidas a las instrucciones mquina, con la importante propiedad de
no ser dependientes de ningn tipo de mquina (se detallarn ms adelante). La Mquina Virtual Java se
encargar de interpretar este cdigo y, para su ejecucin, lo traducir a cdigo mquina del procesador en
particular sobre el que se est trabajando.

Puedes entender por qu Java es un lenguaje compilado e interpretado a travs del siguiente
esquema.
El lenguaje Java es compilado e interpretado.

En Java el cdigo fuente es compilado, obtenindose el cdigo binario en forma de bytecodes.


Pero, Cul es la extensin del archivo resultante?
Extensin .obj.
Extensin .class.
Extensin .Java.

12/11/2014 12:40

PROG01_Contenidos

22 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Ada indica a Juan y Mara que el lenguaje elegido para sus


desarrollos va a ser Java. La flexibilidad, facilidad de
aprendizaje, similitud con algunos lenguajes que ya conocen y
su capacidad para adaptarse a cualquier plataforma, hacen que
sea ideal para producir las nuevas aplicaciones de BK
Programacin.

12/11/2014 12:40

PROG01_Contenidos

23 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

7.1.- Qu y cmo es Java?


Java es un lenguaje sencillo de aprender, con una sintaxis parecida a la de C++, pero en
la que se han eliminado elementos complicados y que pueden originar errores. Java es
orientado a objetos, con lo que elimina muchas preocupaciones al programador y
permite la utilizacin de gran cantidad de bibliotecas ya definidas, evitando reescribir
cdigo que ya existe. Es un lenguaje de programacin creado para satisfacer nuevas
necesidades que los lenguajes existentes hasta el momento no eran capaces de
solventar.
Una de las principales virtudes de Java es su independencia del hardware, ya que el
cdigo que se genera es vlido para cualquier plataforma. Este cdigo ser ejecutado
sobre una mquina virtual denominada Maquina Virtual Java (MVJ o JVM Java
Virtual Machine), que interpretar el cdigo convirtindolo a cdigo especfico de la
plataforma que lo soporta. De este modo el programa se escribe una nica vez y puede
hacerse funcionar en cualquier lugar. Lema del lenguaje: Write once, run everywhere.
Antes de que apareciera Java, el lenguaje C era uno de los ms extendidos por su versatilidad. Pero cuando los
programas escritos en C aumentaban de volumen, su manejo comenzaba a complicarse. Mediante las tcnicas
de programacin estructurada y programacin modular se conseguan reducir estas complicaciones, pero no era
suficiente.
Fue entonces cuando la Programacin Orientada a Objetos (POO) entra en escena, aproximando notablemente
la construccin de programas al pensamiento humano y haciendo ms sencillo todo el proceso. Los problemas
se dividen en objetos que tienen propiedades e interactan con otros objetos, de este modo, el programador
puede centrarse en cada objeto para programar internamente los elementos y funciones que lo componen.
Las caractersticas principales de lenguaje Java se resumen a continuacin:
El cdigo generado por el compilador Java es independiente de la arquitectura.
Est totalmente orientado a objetos.
Su sintaxis es similar a C y C++.
TCP/IP.
Es distribuido, preparado para aplicaciones
Dispone de un amplio conjunto de bibliotecas.
Es robusto, realizando comprobaciones del cdigo en tiempo de compilacin y de ejecucin.
La seguridad est garantizada, ya que las aplicaciones Java no acceden a zonas delicadas de memoria o
de sistema.

Obtn una descripcin detallada de las caractersticas reseadas anteriormente a travs del siguiente
artculo:
Caractersticas detalladas del lenguaje Java

12/11/2014 12:40

PROG01_Contenidos

24 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

7.2.- Breve historia.


Javasurgi en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de disear un nuevo lenguaje
de programacin destinado a programar pequeos dispositivos electrnicos. La dificultad de estos dispositivos es
que cambian continuamente y para que un programa funcione en el siguiente dispositivo aparecido, hay que
rescribir el cdigo. Por eso la empresa Sun quera crear un lenguaje independiente del dispositivo.
Pero no fue hasta 1995 cuando pas a llamarse Java, dndose a conocer al pblico como lenguaje de
programacin para computadores. Java pasa a ser un lenguaje totalmente independiente de la plataforma y a la
vez potente y orientado a objetos. Esa filosofa y su facilidad para crear aplicaciones para redes TCP/IP ha hecho
que sea uno de los lenguajes ms utilizados en la actualidad.
El factor determinante para su expansin fue la incorporacin de un intrprete Java en la versin 2.0 del
navegador Web Netscape Navigator, lo que supuso una gran revuelo en Internet. A principios de 1997 apareci
Java 1.1que proporcion sustanciales mejoras al lenguaje. Java 1.2, ms tarde rebautizado como Java 2, naci
a finales de 1998.
El principal objetivo del lenguaje Java es llegar a ser el nexo universal que conecte a los usuarios con la
informacin, est sta situada en el ordenador local, en un servidor Web, en una base de datos o en cualquier
otro lugar.
Para el desarrollo de programas en lenguaje Java es necesario utilizar un entorno de desarrollo denominado JDK
(Java Development Kit), que provee de un compilador y un entorno de ejecucin (JRE Java Run Environment)
para los bytecodes generados a partir del cdigo fuente. Al igual que las diferentes versiones del lenguaje han
incorporado mejoras, el entorno de desarrollo y ejecucin tambin ha sido mejorado sucesivamente.
Java 2 es la tercera versin del lenguaje, pero es algo ms que un lenguaje de programacin, incluye los
siguientes elementos:
Un lenguaje de programacin: Java.
Un conjunto de bibliotecas estndar que vienen incluidas en la plataforma y que son necesarias en todo
entorno Java. Es el Java Core.
Un conjunto de herramientas para el desarrollo de programas, como es el compilador de bytecodes, el
generador de documentacin, un depurador, etc.
Un entorno de ejecucin que en definitiva es una mquina virtual que ejecuta los programas traducidos a
bytecodes.
El siguiente esquema muestra los elementos fundamentales de la plataforma de desarrollo Java 2.

Actualmente hay tres ediciones de la plataforma Java 2:


J2SE: Entorno de Sun relacionado con la creacin de aplicaciones y
applets en lenguaje Java.
J2EE: Pensada para la creacin de aplicaciones Java empresariales y del lado del servidor.
J2ME: Pensada para la creacin de aplicaciones Java para dispositivos mviles.

Si deseas conocer ms sobre los orgenes del lenguaje Java, aqu te ofrecemos ms informacin:
Los orgenes de Java

12/11/2014 12:40

PROG01_Contenidos

25 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Historia de Java
Lnea de tiempo de la historia de Java

12/11/2014 12:40

PROG01_Contenidos

26 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

7.3.- La POO y Java.


En Java, los datos y el cdigo (funciones o mtodos) se combinan en entidades llamadas objetos. El objeto
tendr un comportamiento (su cdigo interno) y un estado (los datos). Los objetos permiten la reutilizacin del
cdigo y pueden considerarse, en s mismos, como piezas reutilizables en mltiples proyectos distintos. Esta
caracterstica permite reducir el tiempo de desarrollo de software.
Por simplificar un poco las cosas, un programa en Java ser como una representacin teatral en la que debemos
preparar primero cada personaje, definir sus caractersticas y qu va a saber hacer. Cuando esta fase est
terminada, la obra se desarrollar sacando personajes a escena y hacindoles interactuar.
Al emplear los conceptos de la Programacin Orientada a Objetos (POO), Java incorpora las tres caractersticas
encapsulacin,
herencia y
polimorfismo. Los patrones o tipos de objetos
propias de este paradigma:
clases y los objetos que utilizan estos patrones o pertenecen a dichos tipos, se identifican con
se denominan
instancias. Pero, no hay que alarmarse, estos conceptos se vern ms adelante en sucesivas
el nombre de
unidades.

Otro ejemplo para seguir aclarando ideas, piensa en los bloques de juegos de
construccin. Suponemos que conoces los cubos de plstico en varios colores y
tamaos. Por una de sus caras disponen de pequeos conectores circulares y en
otra de sus caras pequeos orificios en los que pueden conectarse otros bloques,
con el objetivo principal de permitir construir formas ms grandes. Si usas
diferentes piezas del lego puedes construir aviones, coches, edificios, etc. Si te
fijas bien, cada pieza es un objeto pequeo que puede unirse con otros objetos
para crear objetos ms grandes.
Pues bien, aproximadamente as es como funciona la programacin dirigida a
objetos: unimos elementos pequeos para construir otros ms grandes. Nuestros
programas estarn formados por muchos componentes (objetos) independientes y diferentes; cada uno con una
funcin determinada en nuestro software y que podr comunicarse con los dems de una manera predefinida.

12/11/2014 12:40

PROG01_Contenidos

27 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

7.4.- Independencia de la plataforma y trabajo en red.


Existen dos caractersticas que distinguen a Java de otros lenguajes, como son la independencia de la
plataforma y la posibilidad de trabajar en red o, mejor, la posibilidad de crear aplicaciones que trabajan en
red.
Estas caractersticas las vamos a explicar a continuacin:
a. Independencia: Los programas escritos en Java pueden ser ejecutados en cualquier tipo de hardware. El
cdigo fuente es compilado, generndose el cdigo conocido como Java Bytecode (instrucciones
mquina simplificadas que son especficas de la plataforma Java), el bytecode ser interpretado y
ejecutado en la Mquina Virtual Java (MVJ o JVM Java Virtual Machine) que es un programa escrito
en cdigo nativo de la plataforma destino entendible por el hardware. Con esto se evita tener que realizar
un programa diferente para cada CPU o plataforma.
Por tanto, la parte que realmente es dependiente del sistema es la Mquina Virtual Java, as como las
libreras o bibliotecas bsicas que permiten acceder directamente al hardware de la mquina.
b. Trabajo en red: Esta capacidad del lenguaje ofrece mltiples posibilidades para la comunicacin va
TCP/IP. Para poder hacerlo existen libreras que permiten el acceso y la interaccin con protocolos como
http,
ftp, etc., facilitando al programador las tareas del tratamiento de la informacin a travs de
redes.

Qu elemento es imprescindible para que una aplicacin escrita en Java pueda ejecutarse en
un ordenador?
Que disponga de conexin a Internet y del hardware adecuado.
Que tenga instalado un navegador web y conexin a Internet.
Que tenga la Mquina Virtual Java adecuada instalada.

12/11/2014 12:40

PROG01_Contenidos

28 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

7.5.- Seguridad y simplicidad.


Junto a las caractersticas diferenciadoras del lenguaje Java relacionadas
con la independencia y el trabajo en red, han de destacarse dos virtudes
que hacen a este lenguaje uno de los ms extendidos entre la comunidad
de programadores: su seguridad y su simplicidad.
a. Seguridad: En primer lugar, los posibles accesos a zonas de
memoria sensibles que en otros lenguajes como C y C++ podan
suponer peligros importantes, se han eliminado en Java.
En segundo lugar, el cdigo Java es comprobado y verificado para
evitar que determinadas secciones del cdigo produzcan efectos no deseados. Los test que se aplican
garantizan que las operaciones, operandos, conversiones, uso de clases y dems acciones son seguras.
Y en tercer lugar, Java no permite la apertura de ficheros en la mquina local, tampoco permite ejecutar
ninguna aplicacin nativa de una plataforma e impide que se utilicen otros ordenadores como puente, es
decir, nadie puede utilizar nuestra mquina para hacer peticiones o realizar operaciones con otra.
En definitiva, podemos afirmar que Java es un lenguaje seguro.
b. Simplicidad: Aunque Java es tan potente como C o C++, es bastante ms sencillo. Posee una curva de
aprendizaje muy rpida y, para alguien que comienza a programar en este lenguaje, le resulta
relativamente fcil comenzar a escribir aplicaciones interesantes.
Si has programado alguna vez en C o C++ encontrars que Java te pone las cosas ms fciles, ya que se
punteros, los registros, la definicin de tipos, la gestin de memoria,
han eliminado: la aritmtica de
etc. Con esta simplificacin se reduce bastante la posibilidad de cometer errores comunes en los
programas. Un programador experimentado en C o C++ puede cambiar a este lenguaje rpidamente y
obtener resultados en muy poco espacio de tiempo.
Muy relacionado con la simplicidad que aporta Java est la incorporacin de un elemento muy til como
es el Recolector de Basura (Garbage collector). Permite al programador liberarse de la gestin de la
memoria y hace que ciertos bloques de memoria puedan reaprovecharse, disminuyendo el nmero de
huecos libres ( fragmentacin de memoria).
Cuando realicemos programas, crearemos objetos, haremos que stos interaccionen, etc. Todas estas
operaciones requieren de uso de memoria del sistema, pero la gestin de sta ser realizada de manera
transparente al programador. Todo lo contrario que ocurra en otros lenguajes. Podremos crear tantos
objetos como solicitemos, pero nunca tendremos que destruirlos. El entorno de Java borrar los objetos
cuando determine que no se van a utilizar ms. Este proceso es conocido como recoleccin de basura.

Rellena los huecos con los conceptos adecuados:


En Java se ha simplificado la gestin de memoria a travs de la eliminacin de la Aritmtica de
crecimiento

de

, por lo que la incorporacin del Garbage Collector evita que se produzca un


los
huecos
libres
en
memoria,
que
recibe
el
nombre
de
de memoria.

Enviar

12/11/2014 12:40

PROG01_Contenidos

29 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

7.6.- Java y los Bytecodes.


Un programa escrito en Java no es directamente ejecutable, es necesario que el cdigo fuente sea interpretado
por la Maquina Virtual Java. Cules son los pasos que se siguen desde que se genera el cdigo fuente hasta
que se ejecuta? A continuacin se detallan cada uno de ellos.

Una vez escrito el cdigo fuente (archivos con extensin .Java), ste es precompilado generndose los cdigos
de bytes, Bytecodes o Java Bytecodes (archivos con extensin .class) que sern interpretados directamente
por la Maquina Virtual Java y traducidos a cdigo nativo de la plataforma sobre la que se est ejecutando el
programa.

Bytecode: Son un conjunto de instrucciones en lenguaje mquina que no son especficas a ningn
procesador o sistema de cmputo. Un intrprete de cdigo de bytes (bytecodes) para una plataforma
especfica ser quien los ejecute. A estos intrpretes tambin se les conoce como Mquinas Virtuales
Java o intrpretes Java de tiempo de ejecucin.
En el proceso de precompilacin, existe un verificador de cdigos de bytes que se asegurar de que se cumplen
las siguientes condiciones:
El cdigo satisface las especificaciones de la Mquina Virtual Java.
No existe amenaza contra la integridad del sistema.
No se producen desbordamientos de memoria.
Los parmetros y sus tipos son adecuados.
No existen conversiones de datos no permitidas.
Para que un bytecode pueda ser ejecutado en cualquier plataforma, es imprescindible que dicha plataforma
cuente con el intrprete adecuado, es decir, la mquina virtual especfica para esa plataforma. En general, la
Mquina Virtual Java es un programa de reducido tamao y gratuito para todos los sistemas operativos.

12/11/2014 12:40

PROG01_Contenidos

30 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Juan celebra que BK Programacin vaya a desarrollar sus


programas en un lenguaje como Java. En algunas ocasiones ha
asistido a congresos y ferias de exposiciones de software en las
que ha podido intercambiar impresiones con compaeros de
profesin sobre los diferentes lenguajes que utilizan en sus
proyectos. Una gran mayora destacaba lo fcil y potente que es
programar en Java.
Juan est entusiasmado y pregunta: Ada, cundo
empezamos? Tienes cdigo fuente para empezar a ver la
sintaxis? Podremos utilizar algn entorno de desarrollo profesional?
Ada responde sonriendo: Manos a la obra! Mara, preparada? Vamos a echarle un vistazo a este
fragmento de cdigo...

Hasta ahora, hemos descrito el lenguaje de programacin Java, hemos hecho un recorrido por su historia y nos
hemos instruido sobre su filosofa de trabajo, pero te preguntars Cundo empezamos a desarrollar
programas? Qu elementos forman parte de un programa en Java? Qu se necesita para programar en este
lenguaje? Podemos crear programas de diferente tipo?
No te impacientes, cada vez estamos ms cerca de comenzar la experiencia con el lenguaje de programacin
Java. Iniciaremos nuestro camino conociendo cuales son los elementos bsicos de un programa Java, la forma
en que debemos escribir el cdigo y los tipos de aplicaciones que pueden crearse en este lenguaje.

12/11/2014 12:40

PROG01_Contenidos

31 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

8.1.- Estructura de un programa.


En el grfico al que puedes acceder a continuacin, se presenta la estructura general de un programa realizado
en un lenguaje orientado a objetos como es Java.

Vamos a analizar cada uno de los elementos que aparecen en dicho grfico:
public class Clase_Principal: Todos los programas han de incluir una clase como esta. Es una clase

general en la que se incluyen todos los dems elementos del programa. Entre otras cosas, contiene el mtodo o
funcin main() que representa al programa principal, desde el que se llevar a cabo la ejecucin del programa.
Esta clase puede contener a su vez otras clases del usuario, pero slo una puede ser public. El nombre del
fichero .Java que contiene el cdigo fuente de nuestro programa, coincidir con el nombre de la clase que
estamos describiendo en estas lneas.

Ten en cuenta que Java distingue entre maysculas y minsculas. Si le das a la clase principal el
nombre PrimerPrograma, el archivo .Java tendr como identificador PrimerPrograma.Java, que es
totalmente diferente a primerprograma.Java. Adems, para Java los elementos PrimerPrograma y
primerprograma seran considerados dos clases diferentes dentro del cdigo fuente.

public static void main (String[] args): Es el mtodo que representa al programa principal, en
l se podrn incluir las instrucciones que estimemos oportunas para la ejecucin del programa. Desde l
se podr hacer uso del resto de clases creadas. Todos los programas Java tienen un mtodo main.

Comentarios: Los comentarios se suelen incluir en el cdigo fuente para realizar aclaraciones,
anotaciones o cualquier otra indicacin que el programador estime oportuna. Estos comentarios pueden
introducirse de dos formas, con // y con /* */. Con la primera forma estaramos estableciendo una
nica lnea completa de comentario y, con la segunda, con /* comenzaramos el comentario y ste no
terminara hasta que no insertramos */.
Bloques de cdigo: son conjuntos de instrucciones que se marcan mediante la apertura y cierre de llaves
{ }. El cdigo as marcado es considerado interno al bloque.

Punto y coma: aunque en el ejemplo no hemos incluido ninguna lnea de cdigo que termine con punto y
coma, hay que hacer hincapi en que cada lnea de cdigo ha de terminar con punto y coma (;). En caso
de no hacerlo, tendremos errores sintcticos.

public static void main (String[] args) es la clase general del programa.

Verdadero.

Falso.

12/11/2014 12:40

PROG01_Contenidos

32 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

8.2.- El entorno bsico de desarrollo Java.


Ya conoces cmo es la estructura de un programa en Java, pero, qu
necesitamos para llevarlo a la prctica? La herramienta bsica para empezar a
desarrollar aplicaciones en Java es el JDK (Java Development Kit o Kit de
Desarrollo Java), que incluye un compilador y un intrprete para lnea de
comandos. Estos dos programas son los empleados en la precompilacin e
interpretacin del cdigo.
Como veremos, existen diferentes entornos para la creacin de programas en
Java que incluyen multitud de herramientas, pero por ahora nos centraremos en el
entorno ms bsico, extendido y gratuito, el Java Development Kit (JDK). Segn
se indica en la propia pgina web de Oracle, JDK es un entorno de desarrollo para
construir aplicaciones, applets y componentes utilizando el lenguaje de programacin Java. Incluye herramientas
tiles para el desarrollo y prueba de programas escritos en Java y ejecutados en la Plataforma Java.
As mismo, junto a JDK se incluye una implementacin del entorno de ejecucin Java, el JRE (Java Runtime
Environment) para ser utilizado por el JDK. El JRE incluye la Mquina Virtual de Java (MVJ JVM Java Virtual
Machine), bibliotecas de clases y otros ficheros que soportan la ejecucin de programas escritos en el lenguaje
de programacin Java.

Para poder utilizar JDK y JRE es necesario realizar la descarga e instalacin de stos. Puedes seguir
los pasos del proceso a continuacin:

Resumen textual alternativo

Para poder desarrollar nuestros primeros programas en Java slo necesitaremos un editor de texto plano y los
elementos que acabamos de instalar a travs de Java SE.

12/11/2014 12:40

PROG01_Contenidos

33 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Podemos desarrollar programas escritos en Java mediante un editor de textos y a travs del
JRE podremos ejecutarlos.
Verdadero.

Falso.

12/11/2014 12:40

PROG01_Contenidos

34 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

8.3.- La API de Java.


Junto con el kit de desarrollo que hemos descargado e instalado anteriormente,
vienen incluidas gratuitamente todas las bibliotecas de la API (Aplication
Programming Interface Interfaz de programacin de aplicaciones) de Java, es lo
que se conoce como Bibliotecas de Clases Java. Este conjunto de bibliotecas
proporciona al programador paquetes de clases tiles para la realizacin de
mltiples tareas dentro de un programa. Est organizada en paquetes lgicos,
donde cada paquete contiene un conjunto de clases relacionadas
semnticamente.
En dcadas pasadas una biblioteca era un conjunto de programas que contenan
cientos de rutinas (una rutina es un procedimiento o funcin bien verificados, en
determinado lenguaje de programacin). Las rutinas de biblioteca manejaban las tareas que todos o casi todos
los programas necesitaban. El programador poda recurrir a esta biblioteca para desarrollar programas con
rapidez.
Una biblioteca de clases es un conjunto de clases de programacin orientada a objetos. Esas clases contienen
mtodos que son tiles para los programadores. En el caso de Java cuando descargamos el JDK obtenemos la
biblioteca de clases API. Utilizar las clases y mtodos de las APIs de Java reduce el tiempo de desarrollo de los
programas. Tambin, existen diversas bibliotecas de clases desarrolladas por terceros que contienen
componentes reutilizables de software, y estn disponibles a travs de la Web.

Si quieres acceder a la informacin oficial sobre la API de Java, te proponemos el siguiente enlace
(est en Ingls).
Informacin oficial sobre la API de Java

Indica qu no es la API de Java:


Un entorno integrado de desarrollo.
Un conjunto de bibliotecas de clases.
Una parte del JDK, incluido en el Java SE.

12/11/2014 12:40

PROG01_Contenidos

35 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

8.4.- Afinando la configuracin.


Para que podamos compilar y ejecutar ficheros Java es necesario que
realicemos unos pequeos ajustes en la configuracin del sistema. Vamos a
indicarle dnde encontrar los ficheros necesarios para realizar las labores de
compilacin y ejecucin, en este caso Javac.exe y Java.exe, as como las
libreras contenidas en la API de Java y las clases del usuario.
La variable PATH: Como an no disponemos de un IDE (Integrated
Development Environment - Entono Integrado de Desarrollo) la nica forma
de ejecutar programas es a travs de lnea de comandos. Pero slo
podremos ejecutar programas directamente si la ruta hacia ellos est
indicada en la variable PATH del ordenador. Es necesario que incluyamos la
ruta hacia estos programas en nuestra variable PATH. Esta ruta ser el lugar donde se instal el JDK hasta su
directorio bin.
Para ello, sigue las indicaciones que te mostramos a continuacin:

En la siguiente animacin aprenders como configurar la variable PATH en Windows.

Resumen textual alternativo

Si deseas conocer ms sobre la configuracin de variables de entorno en sistemas Windows y Linux,


te proponemos los siguientes enlaces:
Configurar el PATH en Windows
Configurar variables de entorno en Ubuntu

12/11/2014 12:40

PROG01_Contenidos

36 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

La variable CLASSPATH: esta variable de entorno establece dnde buscar las clases o biblitecas de la API de
Java, as como las clases creadas por el usuario. Es decir, los ficheros .class que se obtienen una vez
compilado el cdigo fuente de un programa escrito en Java. Es posible que en dicha ruta existan directorios y
ficheros comprimidos en los formatos zip o jar que pueden ser utilizados directamente por el JDK, conteniendo
en su interior archivos con extensin class.
(Por ejemplo: C:\Program Files\Java\jdk1.6.0_25\bin)
Si no existe la variable CLASSPATH debes crearla, para modificar su contenido sigue el mismo mtodo que
hemos empleado para la modificacin del valor de la variable PATH, anteriormente descrito. Ten en cuenta que la
ruta que debes incluir ser el lugar donde se instal el JDK hasta su directorio lib.
(Por ejemplo: C:\Program Files\Java\jdk1.6.0_25\lib)

Qu variable de sistema o de entorno debemos configurar correctamente para que podamos


compilar directamente desde la lnea de comandos nuestros programas escritos en lenguaje
Java?
CLASSPATH.
PATH.
Javac.exe.

12/11/2014 12:40

PROG01_Contenidos

37 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

8.5.- Codificacin, compilacin y ejecucin de aplicaciones.


Una vez que la configuracin del entorno Java est completada y tenemos el cdigo fuente de nuestro programa
escrito en un archivo con extensin .Java, la compilacin de aplicaciones se realiza mediante el programa
Javac incluido en el software de desarrollo de Java.

Para llevar a cabo la compilacin desde la lnea de comandos, escribiremos:


Javac archivo.Java

Donde Javac es el compilador de Java y archivo.Java es nuestro cdigo fuente.

El resultado de la compilacin ser un archivo con el mismo nombre que el


archivo Java pero con la extensin class. Esto ya es el archivo con el
cdigo en forma de bytecode. Es decir con el cdigo precompilado. Si en el
cdigo fuente de nuestro programa figuraran ms de una clase, veremos
como al realizar la compilacin se generarn tantos archivos con extensin
.class como clases tengamos. Adems, si estas clases tenan mtodo main
podremos ejecutar dichos archivos por separado para ver el funcionamiento
de dichas clases.
Para que el programa pueda ser ejecutado, siempre y cuando est incluido en su interior el mtodo main,
podremos utilizar el interprete incluido en el kit de desarrollo.

La ejecucin de nuestro programa desde la lnea de comandos podremos hacerla escribiendo:


Java archivo.class

Donde Java es el intrprete y archivo.class es el archivo con el cdigo precompilado.

Vamos a llevar a la prctica todo lo que hemos estado detallando a travs de la creacin, compilacin
y ejecucin de un programa sencillo escrito en Java.
Observa el cdigo que se muestra ms abajo, seguro que podrs entender parte de l. Cpialo en un
editor de texto, respetando las maysculas y las minsculas. Puedes guardar el archivo con extensin
.Java en la ubicacin que prefieras. Recuerda que el nombre de la clase principal (en el cdigo de
ejemplo MiModulo) debe ser exactamente igual al del archivo con extensin .Java, si tienes esto en
cuenta la aplicacin podr ser compilada correctamente y ejecutada.
/**
* La clase MiModulo implementa una aplicacin que
* simplemente imprime "Mdulo profesional - Programacin" en pantalla.
*/
class MiModulo {
public static void main(String[] args) {
System.out.println("Mdulo profesional - Programacin"); // Muestra
la cadena de caracteres.
}
}

Accede a la lnea de comandos y teclea, en la carpeta donde has guardado el archivo Java, el
comando para compilarlo: Javac MiModulo.Java

12/11/2014 12:40

PROG01_Contenidos

38 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

El compilador genera entonces un fichero de cdigo de bytes: MiModulo.class. Si visualizas ahora


el contenido de la carpeta vers que en ella est el archivo .Java y uno o varios (depende de las
clases que contenga el archivo con el cdigo fuente) archivos .class.
Finalmente, para realizar la ejecucin del programa debes utilizar la siguiente sentencia:
Java MiModulo.Java

Si todo ha ido bien, vers escrito en pantalla: Mdulo profesional Programacin.

12/11/2014 12:40

PROG01_Contenidos

39 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

8.6.- Tipos de aplicaciones en Java.


La versatilidad del lenguaje de programacin Java permite al programador crear
distintos tipos de aplicaciones. A continuacin, describiremos las caractersticas
ms relevantes de cada uno de ellos:
Aplicaciones de consola:
Son programas independientes al igual que los creados con los
lenguajes tradicionales.
Se componen como mnimo de un archivo .class que debe contar
necesariamente con el mtodo main.
No necesitan un navegador web y se ejecutan cuando invocamos el
comando Java para iniciar la Mquina Virtual de Java (JVM). De no
encontrarse el mtodo main la aplicacin no podr ejecutarse.
Las aplicaciones de consola leen y escriben hacia y desde la entrada y salida estndar, sin ninguna
interfaz grfica de usuario.
Aplicaciones grficas:
Aquellas que utilizan las clases con capacidades grficas, como Swing que es la biblioteca para la
interfaz grfica de usuario avanzada de la plataforma Java SE.
Incluyen las instrucciones import, que indican al compilador de Java que las clases del paquete
Javax.swing se incluyan en la compilacin.
Applets:
Son programas incrustados en otras aplicaciones, normalmente una pgina web que se muestra
en un navegador. Cuando el navegador carga una web que contiene un applet, ste se descarga
en el navegador web y comienza a ejecutarse. Esto nos permite crear programas que cualquier
usuario puede ejecutar con tan solo cargar la pgina web en su navegador.
Se pueden descargar de Internet y se observan en un navegador. Los applets se descargan junto
con una pgina HTML desde un servidor web y se ejecutan en la mquina cliente.
No tienen acceso a partes sensibles (por ejemplo: no pueden escribir archivos), a menos que uno
mismo le d los permisos necesarios en el sistema.
No tienen un mtodo principal.
Son multiplataforma y pueden ejecutarse en cualquier navegador que soporte Java.
Servlets:
Son componentes de la parte del servidor de Java EE, encargados de generar respuestas a las
peticiones recibidas de los clientes.
Los servlets, al contrario de los applets, son programas que estn pensados para trabajar en el
lado del servidor y desarrollar aplicaciones Web que interacten con los clientes.
Midlets:
Son aplicaciones creadas en Java para su ejecucin en sistemas de propsito simple o dispositivos
mviles. Los juegos Java creados para telfonos mviles son midlets.
Son programas creados para dispositivos embebidos (se dedican a una sola actividad), ms
especficamente para la mquina virtual Java MicroEdition (Java ME).
Generalmente son juegos y aplicaciones que se ejecutan en telfonos mviles.

Un Applet es totalmente seguro ya que no puede acceder, en ningn caso, a zonas sensibles
del sistema. Es decir, no podra borrar o modificar nuestros archivos.
Verdadero.

Falso.

12/11/2014 12:40

PROG01_Contenidos

40 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Ada, Juan y Mara estn navegando por Internet buscando


informacin sobre herramientas que les faciliten trabajar en Java.
Ada aconseja utilizar alguno de los entornos de desarrollo
integrado existentes, ya que las posibilidades y rapidez que
ofrecen, aumentaran la calidad y reduciran el tiempo requerido
para desarrollar sus proyectos.
Juan, que est chateando con un miembro de un foro de
programadores al que pertenece, corrobora lo que Ada recomienda.

En los comienzos de Java la utilizacin de la lnea de comandos era algo habitual. El programador escriba el
cdigo fuente empleando un editor de texto bsico, seguidamente, pasaba a utilizar un compilador y con l
obtena el cdigo compilado. En un paso posterior, necesitaba emplear una tercera herramienta para el
ensamblado del programa. Por ltimo, poda probar a travs de la lnea de comandos el archivo ejecutable. El
problema surga cuando se produca algn error, lo que provocaba tener que volver a iniciar el proceso completo.
Estas circunstancias hacan que el desarrollo de software no estuviera optimizado. Con el paso del tiempo, se
fueron desarrollando aplicaciones que incluan las herramientas necesarias para realizar todo el proceso de
programacin de forma ms sencilla, fiable y rpida. Para cada lenguaje de programacin existen mltiples
entornos de desarrollo, cada uno con sus ventajas e inconvenientes. Dependiendo de las necesidades de la
persona que va a programar, la facilidad de uso o lo agradable que le resulte trabajar con l, se elegir entre
unos u otros entornos.
Para el lenguaje de programacin Java existen mltiples alternativas, siendo los principales entornos de
desarrollo NetBeans (que cuenta con el apoyo de la empresa Sun), Eclipse y JCreator. Los dos primeros son
gratuitos, con soporte de idiomas y multiplataforma (Windows, Linux, MacOS).
Y cul ser con el que vamos a trabajar? El entorno que hemos seleccionado llevar a cabo nuestros desarrollos
de software en este mdulo profesional ser NetBeans, al haber sido construido por la misma compaa que
cre Java, ser de cdigo abierto y ofrecer capacidades profesionales. Aunque, no te preocupes, tambin
haremos un recorrido por otros entornos destacables.

12/11/2014 12:40

PROG01_Contenidos

41 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

9.1.- Qu son?
Son aplicaciones que ofrecen la posibilidad de llevar a cabo el proceso completo de
desarrollo de software a travs de un nico programa. Podremos realizar las labores de
edicin, compilacin, depuracin, deteccin de errores, correccin y ejecucin de
programas escritos en Java o en otros lenguajes de programacin, bajo un entorno
grfico (no mediante lnea de comandos). Junto a las capacidades descritas, cada
entorno aade otras que ayudan a realizar el proceso de programacin, como por
ejemplo: cdigo fuente coloreado, plantillas para diferentes tipos de aplicaciones,
creacin de proyectos, etc.
Hay que tener en cuenta que un entorno de desarrollo no es ms que una fachada para el proceso de
compilacin y ejecucin de un programa. Qu quiere decir eso? Pues que si tenemos instalado un IDE y no
tenemos instalado el compilador, no tenemos nada.

Si deseas conocer algo ms sobre lo que son los Entornos Integrados de Desarrollo (IDE) accede a
las definiciones que te proponemos a continuacin:
Definicin de Entorno Integrado de Desarrollo
Definicin de Entorno Integrado de Desarrollo en Wikipedia

12/11/2014 12:40

PROG01_Contenidos

42 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

9.2.- IDE's actuales.


Existen en el mercado multitud de entornos de desarrollo para el lenguaje Java, los hay de libre distribucin, de
pago, para principiantes, para profesionales, que consumen ms recursos, que son ms ligeros, ms amigables,
ms complejos que otros, etc.
Entre los que son gratuitos o de libre distribucin tenemos:
NetBeans
Eclipse
BlueJ
Jgrasp
Jcreator LE
Entre los que son propietarios o de pago tenemos:
IntelliJ IDEA
Jbuilder
Jcreator
JDeveloper

Cada uno de los entornos nombrados ms arriba posee caractersticas que los hacen diferentes unos
de otros, pero para tener una idea general de la versatilidad y potencia de cada uno de ellos, accede
a la siguiente tabla comparativa:
Comparativa entornos para Java

Pero, cul o cules son los ms utilizados por la comunidad de programadores


Java? El puesto de honor se lo disputan entre Eclipse, IntelliJ IDEA y
NetBeans. En los siguientes epgrafes haremos una descripcin de NetBeans y
Eclipse, para posteriormente desarrollar los puntos claves del entorno NetBeans.

Si quieres conocer la situacin actual de uso y comparar los diferentes entornos integrados de
desarrollo para el lenguaje de programacin Java, puedes ampliar datos en el siguiente artculo:
Artculo con comparativa sobre utilizacin de entornos Java. (En ingls)
Para acceder a los lugares de Internet donde obtener los diferentes entornos integrados de
desarrollo, puedes utilizar la lista que te ofrecemos en este enlace:
Listado con acceso a las webs de los diferentes entornos Java

12/11/2014 12:40

PROG01_Contenidos

43 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Cul de los siguientes entornos slo est soportado en la plataforma Windows?


Eclipse.
Intellij IDEA.
Jcreator.

12/11/2014 12:40

PROG01_Contenidos

44 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

9.3.- El entorno NetBeans.


Como se ha indicado anteriormente, el entorno de desarrollo que vamos a utilizar a lo largo
de los contenidos del mdulo profesional ser NetBeans. Por lo que vamos primero a
analizar sus caractersticas y destacar las ventajas que puede aportar su utilizacin.
Se trata de un entorno de desarrollo orientado principalmente al lenguaje Java, aunque puede servir para otros
lenguajes de programacin. Es un producto libre y gratuito sin restricciones de uso. Es un proyecto de cdigo
abierto de gran xito, con una comunidad de usuarios numerosa, en continuo crecimiento y apoyado por varias
empresas.
El origen de este entorno hay que buscarlo en un proyecto realizado por estudiantes de la Repblica Checa. Fue
el primer IDE creado en lenguaje Java. Un tiempo ms tarde, se form una compaa que sera comprada en
1999 por Sun Microsystems (quien haba creado el lenguaje Java). Poco despus, Sun decidi que el producto
sera libre y de cdigo abierto y naci Netbeans como IDE de cdigo abierto para crear aplicaciones Java.
NetBeans lleva tiempo pugnando con Eclipse por convertirse en la plataforma ms importante para crear
aplicaciones en Java. Hoy en da es un producto en el que participan decenas de empresas con Sun a la cabeza.
Sigue siendo software libre y ofrece las siguientes posibilidades:
Ruby,
Groovy,
Javascript,
CSS y
PHP adems de Java.
Escribir cdigo en C, C++,
Permitir crear aplicaciones J2EE gracias a que incorpora servidores de aplicaciones Java (actualmente
Glassfish y
Tomcat)
Swing de forma sencilla, al estilo del Visual Studio de Microsoft.
Crear aplicaciones
Crear aplicaciones JME para dispositivos mviles.
La ltima versin lanzada en 2011 es la NetBeans 7.0.
La plataforma NetBeans permite que las aplicaciones sean desarrolladas a
partir de un conjunto de componentes de software llamados mdulos. Un
mdulo es un archivo Java que contiene clases de Java escritas para
interactuar con las APIs de NetBeans y un archivo especial (manifest file) que lo identifica como mdulo.
Las aplicaciones construidas a partir de mdulos pueden ser extendidas agregndole nuevos mdulos. Debido a
que los mdulos pueden ser desarrollados independientemente, las aplicaciones basadas en esta plataforma
pueden ser extendidas fcilmente por cualquiera que desarrolle tambin software.
Cada mdulo provee una funcin bien definida, tales como el soporte de Java, edicin, o soporte para el sistema
de control de versiones. NetBeans contiene todos los mdulos necesarios para el desarrollo de aplicaciones Java
en una sola descarga, permitiendo a la persona que va a realizar el programa comenzar a trabajar
inmediatamente.

Encuentra ms informacin sobre esta plataforma en los enlaces que te proponemos a continuacin:
Informacin oficial sobre NetBeans
Versiones del entorno NetBeans

12/11/2014 12:40

PROG01_Contenidos

45 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

9.4.- Instalacin y configuracin.


Para realizar la instalacin del entorno NetBeans, seguiremos los siguientes pasos
bsicos:
1. Descarga de la versin deseada desde la web oficial o desde los enlaces
propuestos ms abajo. La versin completa contiene todas las posibilidades
aunque es la ms pesada (unos 240 MegaBytes). En nuestro caso, por estar
en fase de iniciacin, podra ser suficiente descargar la versin ms bsica
(unos 60 MegaBytes).
2. Seleccionar la plataforma o sistema operativo, existen versiones para
Windows, Linux y MacOS. Tanto en Windows como en Linux, se descarga un
archivo ejecutable que se encarga de la instalacin.
3. Seleccionar el idioma.
4. Comenzar la descarga del archivo de instalacin ejecutable y una vez
finalizada, lanzar ste, comenzando la instalacin en nuestro equipo.
5. En las primeras pantallas, seleccionaremos los componentes a instalar. Como mnimo, para poder
programar en Java ser imprescindible instalar el IDE bsico y Java SE.
6. Posteriormente, establecemos el directorio donde se instalar NetBeans, as como la carpeta que
contiene el JDK que se utilizar por defecto.
7. Finalmente, la instalacin se completa y dispondremos de este entorno totalmente operativo.
Para llevar a cabo las operaciones descritas en el paso 1, te ofrecemos la posibilidad de descargar cada una de
las partes por separado, o bien, en conjunto, a travs de los siguientes enlaces:
Descarga nicamente NetBeans si tienes ya instalado el JDK. (Esta versin an no incluye lenguaje Espaol)
Descarga slo NetBeans en Espaol, sin JDK
Descarga NetBeans y JDK desde la pgina oficial de ORACLE

Para aprender cmo realizar la instalacin completa, JDK y NetBeans, en sus ltimas versiones es
importante que sigas las indicaciones que se muestran en el siguiente artculo:
Gua para la instalacin detallada del JDK y NetBeans en su versin completa

Si eres de los que le gusta la accin, ms que leer los tutoriales, en este vdeo podrs seguir el
proceso de descarga e instalacin de NetBeans bajo las plataformas Windows y Linux.

12/11/2014 12:40

PROG01_Contenidos

46 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Resumen textual alternativo

12/11/2014 12:40

PROG01_Contenidos

47 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

9.5.- Aspecto del entorno y gestin de proyectos.


La pantalla inicial de nuestro entorno de desarrollo ofrece accesos directos a las operaciones ms usuales:
aprendizaje inicial, tutoriales, ejemplos, demos, los ltimos programas realizados y las novedades de la versin.
Para comenzar a describir el aspecto del entorno, es necesario crear un nuevo proyecto accediendo al men File
- New Project, indicaremos el tipo de aplicacin que vamos a crear.

Para continuar con la creacin de nuestro proyecto y la descripcin del aspecto del entorno, accede a
la siguiente presentacin:

Resumen textual alternativo

Cuando trabajemos con NetBeans, nuestros proyectos harn uso de clases para poder desarrollar las
operaciones de nuestros programas. Estas clases se agruparn en paquetes y en la siguiente
presentacin puedes aprender cmo se gestionan a travs del entorno:

12/11/2014 12:40

PROG01_Contenidos

48 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Resumen textual alternativo

Una de las ventajas que ofrece este entorno es poder examinar nuestros proyectos a travs de la vista Archivos.
Esta vista nos ensea la realidad de los archivos del proyecto, la carpeta build contiene los archivos compilados
(.class), la carpeta src el cdigo fuente y el resto, son archivos creados por Netbeans para comprobar la
configuracin del proyecto o los archivos necesarios para la correcta interpretacin del cdigo en otros sistemas
(en cualquier caso no hay que borrarlos). Para activar esta vista, selecciona en el men principal Windows Files.

Rellena los huecos con los conceptos adecuados:


En NetBeans, los archivos .class de un proyecto estn alojados en la carpeta
.Java en la carpeta

y los

Enviar

12/11/2014 12:40

PROG01_Contenidos

49 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Licencias de recursos utilizados en la Unidad de Traba


Recurso (1)

Datos del recurso (1)

Recurso (2)

Autora: Rdiger Wlk


Licencia: CC-BY-SA
Procedencia: http://commons.wikimedia.org
/wiki/File:Wiener_Melange_0363wien_img_9691.jpg

Auto
Licen
Proce
/wiki/

Autora: barraquito from Santa Cruz de Tenerife,


Canary Islands, Spain
Licencia: CC-by-sa
Procedencia: http://commons.wikimedia.org
/wiki/File:Cruce_de_caminos-El_Hierro.jpg

Auto
Licen
Proce
/wiki/

Autora: Desconocido.
Licencia: Dominio Pblico.
Procedencia: http://commons.wikimedia.org
/wiki/File:OstrichHead.JPG

Auto
Licen
Proce
http:/
/wiki/

Autora: German, usuario espaol de Wikipedia


Licencia: Dominio pblico
Procedencia: http://commons.wikimedia.org
/wiki/File:Codigo_de_maquina.png

Auto
Licen
Proce
/wiki/

Autora: Robpatrik
Licencia: CC BY-NC-SA
Procedencia: http://www.flickr.com/photos
/alkalinezoo/3595562784/

Auto
Licen
Proce
/wiki/

Autora: Ziko van Dijk


Licencia: CC-by-sa
Procedencia: http://commons.wikimedia.org
/wiki/File:2010-11-14_orr_ob_08.JPG

Auto
Licen
Proce
/wiki/

Autora: Sasa Stefanovic


Licencia: GNU/GPL
Procedencia: http://commons.wikimedia.org
/wiki/File:Exquisite-kcontrol.png

Auto
Licen
Proce
/wiki/

Autora: netbeans.org
Licencia: Copyright (cita), se autoriza el uso sin
restricciones.
Procedencia: http://netbeans.org

Auto
Licen
restri
Proce
NetB

12/11/2014 12:40

PROG01_Contenidos

50 de 50

http://moodle.teleformacionfp.aragon.es/pluginfile.php/6349/mod_res...

Recurso (1)

Datos del recurso (1)

Autora: Nevit Dilmen


Licencia: GNU Free Documentation License.
Procedencia: http://commons.wikimedia.org
/wiki/File:Maldives_00147.JPG

Recurso (2)
Auto
Licen
Proce
aplica
Micro

12/11/2014 12:40

Potrebbero piacerti anche