JAVA KARA
Programando en JAVA
Uno de los lenguajes de programacin ms usados es JAVA. Debido a la existencia
de distintos tipos de CPUs y a los continuos cambios, era importante conseguir
una herramienta independiente del tipo de CPU utilizada. Desarrollaron un cdigo
neutro que no dependa del tipo de electrodomstico, el cual se ejecutaba
sobre una mquina hipottica o virtual denominada Java Virtual Machine (JVM).
Debido entonces a su importancia y como se ha aplicado este lenguaje hoy en
da que el conocimiento de este lenguaje no es importante sino indispensable
para los ingenieros de Sistemas.
Muchas cosas que JAVA tiene en su lenguaje, lleva cierta similitud con el lenguaje
C++, as como la estructuracin del lenguaje. Sin embargo los programas
desarrollados en Java presentan diversas ventajas frente a los desarrollados en
otros lenguajes como C/C++. La ejecucin de programas en Java tiene muchas
posibilidades:
ejecucin
como
aplicacin
independiente
(Stand-alone
Application), ejecucin como applet, ejecucin como servlet, etc. Un applet es
una aplicacin especial que se ejecuta dentro de un navegador o browser (por
ejemplo Netscape Navigator o Internet Explorer) al cargar una pgina HTML
desde un servidor Web. El applet se descarga desde el servidor y no requiere
instalacin en el ordenador donde se encuentra el browser. Un servlet es una
aplicacin sin interface grfica que se ejecuta en un servidor de Internet. La
ejecucin como aplicacin independiente es anloga a los programas
desarrollados con otros lenguajes.
Eso har que cuando est en el siguiente entorno, Kara siga por el camino de
hojas, evitando colisionar con los rboles.
kara.treeRight()
void turnAround() {
kara.turnLeft();
kara.turnLeft();
}
public void myProgram() {
kara.removeLeaf();
while (!kara.treeFront()) {
kara.move();
if (!kara.onLeaf()) {
turnAround();
kara.move();
kara.turnRight();
kara.move();
if (!kara.onLeaf()) {
turnAround();
kara.move();
kara.move();
if (!kara.onLeaf()) {
break;
}
}
}
kara.removeLeaf();
}
}
LEGO
Una de las caractersticas bien resaltantes del programa JAVA Kara es que se
puede programar mediante una interfaz Mindstorms Lego. Es decir, mediante
este podemos programar en diagramas de flujo al cual le otorgaramos ciertas
caractersticas para el desarrollo de eventos. Es til cuando se quiere programar
y ver cmo el programa sigue su ruta.
Aqu mostramos un modelo del ejemplo de arriba el cual haca que Kara siga una
ruta y que busque en esta, hojas.
Esta ltima programacin har que Kara busque hojas por el recuadro. No
necesariamente la ruta puede estar definida. Simplemente los sensores
programables har su trabajo.
Entre otras caractersticas del programa, es un acercamiento al lenguaje de
programacin que ofrece JAVA.
10
Conclusiones
Es un programa divertido que ayudar a desarrollar esa parte de crear funciones
y determinar eventos. El punto es que se puede trabajar con la mayor comodidad
que se desee, como el modelo de Lego mostrando el diagrama de flujo del
programa.
El diseo de mundos de juguete para instrucciones de programacin es un
esfuerzo popular, habiendo una antecesor grande llamado KAREL, la robot.
Muchos de estos ambientes ofrecen varias ms opciones y posibilidades que
Kara, y algunos de ellos no son expresadamente diseados para ser usados como
introduccin a la programacin. Por otro lado, Kara fue diseada para ser tan
simple como sea posible, para ofrecer las posibilidades y opciones que sean
absolutamente necesarias, y que puedan ser usadas para la enseanza de los
primeros pasos en programacin.
Uno problema es que se pierde cierta naturalidad directamente asociada al
lenguaje JAVA, sin embargo an podemos practicar sobre todo colocar funciones,
declararlas y analizar cmo va ese trabajo.
Otro problema es que no se puede tener de alguna forma de pasar del modo
Lego al modo Consola o viceversa. Es decir, si uno comienza a programar en el
modo Lego tiene que terminar la programacin en ese modo. Tambin carece de
alguna forma exportar e archivo hacia otros afines. Al fin, y acabo es una bonita
aplicacin con la que podremos aprender la forma de programacin JAVA y un
poco de sus sintaxis.
11