Why would I need a payday loan Payday loans UK We can help

Y Por Fin Llega Java 7

Jul 28

El día de hoy Jueves 27 de Julio de 2011 una fecha con varios sietes (27-7-2011) llega después de mucha espera y muchas expectativas, la version numero 7 de la plataforma Java. En esta nueva version de la cual ya hemos hablado y probado en este blog:

Caracteristicas :

Aunque los cambios son Interesantes, en esta nueva version no han hecho grandes avances en materia de aplicaciones de escritorio y la actualización de Swing el cual le hace falta que le adicionen mas componentes.

Ya tenemos tambien la noticia que hoy tambien sale GlassFish 3.1.1 con Java 7 incorporado.

Quedaremos a la espera de la version 8 de Java para el 2012

Enlaces :

Read More

Nodos : Editor y Cliente de Escritorio Publicados

Jul 27

Ya se encuentran disponibles las primeras versiones publicas de las Aplicaciones para Nodos (Ambiente Distribuidos para la Creación Colaborativa) las cuales permiten controlar dispositivos que soporte el protocolo OSC (Open Sound Control) a través de una aplicación de escritorio o móvil a manera de control remoto, permitiendo el control de aplicaciones que permitan la comunicación con OSC, dispositivos como sintetizadores que soporten el protocolo y aplicaciones que sirvan de puente entre OSC y otros protocolos de control.

Camaleon Desktop Editor 0.7.1

Las aplicaciones de Nodos esta dividia en tres grandes productos :

  • Camaleon Desktop Editor :
    Editor de interfaces graficas que pemite crear los archivos que contienen las descripciones de los controles a ser visualizados en la aplicación de control. Permite la creación de interfaces con controles como Sliders, PushButtons, ToggleButtons, XY, MultiSliders, MultiToggles, Rotary, Labels
    http://www.sensorlab.org/nodos/sitio/camaleon/desktop-editor
  • Camaleon Desktop Player :
    Aplicación de Escritorio que hace las veces de control remoto para el manejo de las aplicaciones con soporte OSC. Utiliza las interfaces generadas por el editor para controlar diferentes aplicaciones y dispositivos.
    http://www.sensorlab.org/nodos/sitio/camaleon/desktop-player
  • Camaleon Android Player :
    Aplicación para dispositivos moviles basados en la plataforma Android que pemite el control remoto de aplicaciones con soporte OSC que esten en la misma red inalambrica que el dispositivo movil.
    http://www.sensorlab.org/nodos/sitio/camaleon/android-player

Las versiones del Player y el Editor pueden ser ejecutadas rápidamente a través de Java Web Start (se necesita instalar Java para su funcionamiento)

Enlaces :

Read More

Bukkit : Creando un Plugin para Minecraft

Jun 24

MinecraftEn entradas anteriores hablamos acerca de Bukkit un modulo para el servidor de Minecraft que permite la creación de plugins los cuales pueden interactuar con los usuarios a través de comandos o escuchar eventos producidos dentro del mundo virtual.

En esta ocasión nos daremos a la tarea de desarrollar un plugin muy sencillo que escuche el comando hello y salude al avatar replicando hello <usuario>, esto con el fin de explorar los pasos y requerimientos para el desarrollo de plugins para Minecraft.

Prerequisitos :

  • Tener instalado el NetBeans 7.0
  • Acceso a Internet
  • Acceso a un servidor de Minecraft con Bukkit instalado

Pasos :

  • Descargar la librería de desarrollo para Bukkit
    • Ir al servidor Wiki de Bukkit
      http://wiki.bukkit.org/
    • Buscar el enlace y descargar el archivo
      Bukkit API - For Developers
    • La vesion al momento de escribir estos pasos se puede descargar asi :
      wget http://ci.bukkit.org/job/dev-Bukkit/lastSuccessfulBuild/artifact/target/bukkit-0.0.1-SNAPSHOT.jar
  • Abrir el NetBeans 7.0
  • Crear un proyecto Java, del tipo Java Class Library
  • Colocarle el nombre mchelloplugin
  • Para evitar problemas con el API de Bukkit copiaremos esta dentro del proyecto,
    para que no dependa del ambiente de desarrollo y siempre quede asociado al proyecto
  • Active la opcion
    Use Dedicated Folder for Storing Libraries
  • Verifique que en la caja de dialogo aparezca
    Libraries Folder: ./lib
  • Pulse el boton Finish
  • Vamos a Libraries en el arbol del proyecto
    Click derecho y seleccionamos Add Jar/Folder
  • Buscamos el archivo bukkit-0.0.1-SNAPSHOT.jar
    lo adicionamos con la opcion Copy Libraries to Folder
  • Ahora crearemos la clase Java que implementa el Plugin
  • Vamos a Source Packages
    Click derecho y New Java Class
  • Colocamos como Class Name
    HelloPlugin
  • Colocamos como Package
    mjs.minecraft.plugin.hello
  • Pulsamos el boton Finish
  • Reemplazamos el contenido del archivo por :
package mjs.minecraft.plugin.hello;

import java.util.logging.Logger;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;

public class HelloPlugin extends JavaPlugin {

    public static final Logger log = Logger.getLogger("Minecraft");    

    @Override
    public void onDisable() {
        PluginManager pluginManager = getServer().getPluginManager();
        log.info("Hello plugin has been disabled.");
    }

    @Override
    public void onEnable() {
        log.info("Hello plugin has been enabled!");
    }

    @Override
    public boolean onCommand(CommandSender sender, Command command,
        String label, String[] args) {

        if(label.equals("hello")) {
            Player player = (Player) sender;
            player.sendMessage("Hello " + player.getDisplayName());
            return true;
        }

        return false;
    }
}
  • Vamos a Source Packages y al paquete
    <default package>
    Click derecho y New Empty File
  • Colocamos como File Name
    plugin.yml
  • Pulsamos el boton Finish
  • Reemplazamos el contenido del archivo por :
name: MHello
main: mjs.minecraft.plugin.hello.HelloPlugin
version: 0.1
author: Marlon J. Manrique
website: http://www.marlonj.com
description: Example command to say hello to the user 

commands:
 hello:
 description: Say hello to the user.
 usage: /<command>
  • En este momento ya tenemos los componentes necesarios para el Plugin
    El descriptor y la clase principal del mismo
  • Compilamos el proyecto, no deben salir errores (F6)
  • Construimos la solución (Build, F11)
  • Esto genera el directorio dist que dentro tiene el archivo mchelloplugin.jar
  • Debemos copiar este archivo al directorio plugins de nuestro servidor
  • Por ejemplo en nuestro ambiente de desarrollo
    scp /home/<usuario>/NetBeansProjects/mchelloplugin/dist/mchelloplugin.jar minecraft@<ipservidor>:/home/minecraft/server/plugins
  • Reiniciamos el servicio de McMyAdmin o el de Minecraft en el servidor
    si usamos mcmyadmin
    sudo service mcmyadmin restart
    si usamos minecraft
    sudo service minecraft restart
  • Ahora se puede listar el plugin dentro del administrador de McMyAdmin

LIsta de Plugins instalados en el servidor

  • Podemos entrar desde el visor de Minecraft a nuestro servidor y ejecutar el comando
    <pulsar la tecla t>
    /hello
    El servidor responde
    hello <usuario>

Probando el Comando desde el Visor

Descargar el archivo con el proyecto listo para NetBeans 7.0 (incluye el API de Bukkit y el codigo fuente del ejemplo) mchelloplugin

Enlaces :

Read More

Nodos Camaleon : Prototipos

Mar 15


El Martes 15 de Marzo de 2011 se presentaron oficialmente los primeros prototipos al equipo de trabajo del proyecto Nodos con el fin de avanzar rápidamente en la definición de plataformas de desarrollo y en la creación de la estructura de cada proyecto para iniciar el proceso de desarrollo por parte de los estudiantes que colaboraran en el desarrollo de los clientes para el proyecto Nodos. Los prototipos presentados implementan la funcionalidad básica de dibujado de los controles en la pantalla y responden a la interacción con el usuario lo que permite entrar en una etapa de implementación de otros controles adicionales que vendran incluidos en la primera version de Camaleon.

Los prototipos desarrollados fueron el cliente de escritorio desarrollado en la plataforma Java, el cliente para dispositivos móviles como teléfonos y tablets basados en la plataforma Android y el cliente para la plataforma iOS el cual permite la ejecución de la aplicación en dispositivos iPhone y iPad. El desarrollo de estos prototipos también sirvo para comprobar el funcionamiento de las herramientas de desarrollo a utilizar que incluyen el ambiente de desarrollo NetBeans para el desarrollo de la version de escritorio, Eclipse y el SDK de Android para la version para este sistema operativo y el Xcode para el desarrollo de la version para iOS.

Read More

Nodos Camaleon : Protipos Iniciales

Mar 15

Camaleon : Prototipo funcionado en Android

Con el fin de iniciar el desarrollo del cliente de Nodos se implementaron prototipos iniciales de la aplicación para escritorio en la plataforma Java, para teléfonos Android y para la plataforma iOS para el teléfono iPhone y la tablet iPad. Estos prototipos cumplen el propósito de crear un punto de partida para el desarrollo de los clientes en estas tres plataformas, permitiendo a los desarrolladores del proyecto comenzar a adicionar las nuevas caracteristicas a cada uno de los proyectos.

Prototipo Camaleon Desktop :

Implementacion inicial del cliente de Nodos desarrollado en la plataforma Java el cual sirve de base para el desarrollo de los proyectos en Android e iOS.

Camaleon : Prototipo Desktop

El prototipo esta basado en una serie de controles encontrados en las aplicaciones para el control de audio que se encuentran en muchas consolas de DJs y en la aplicación móvil TouchOSC que ha servido como base para la creación del cliente móvil de Nodos.

Este prototipo implementa los controles :

  • NO2Slider (Deslizador, Horizontal o Vertical)
  • NO2PushButton (Boton Pulsador)
  • NO2ToggleButton (Boton de Estado)

Tambien implementa los contenedores :

  • NO2WorkStation (Dispositivo Controlador)
  • NO2Screen (Pantalla del Dispositivo)
  • NO2Tab (Pestañas dentro de la Pantalla)

La información se lee desde un archivo xml que contiene la posición y tamaño de cada uno de los controles, así como también su nombre y los valores adicionales de cada control.

Prototipo Camaleon Android :

 

La version Android del prototipo reutiliza el código Java de la definición de los controles como tambien el lector del archivo XML con la información de los controles, lo que cambia es las primitivas para la visualización de los controles y el dibujado de cada uno de ellos ya que se utiliza un View en el cual se pinta sobre el canvas cada control y los métodos de este varían en la forma de construcción por lo que el código no es totalmente potable entre la version Java de escritorio y la version Android.

Este prototipo se probo en un teléfono Xperia X10 con Android 2.1 el cual visualizo correctamente el cliente permitiendo observar el funcionamiento de los controles ya en un dispositivo móvil.

Prototipo Camaleon iOS :

 

La version para la plataforma iOS se debió escribir en el lenguaje de programación Objective-C ya que este es el lenguaje utilizado para el desarrollo nativo de aplicaciones en las plataformas de Apple, se uso el ambiente de desarrollo Xcode con el SDK para iOS 4.2 el cual permite crear aplicaciones para telefonos iPhone y tablets iPad incluso el proyecto se creo bajo el esquema Universal que permite crear una misma aplicación para estos dos dispositivos compartiendo el código base.

El prototipo de la aplicación solo puede pintar los controles NO2ControlPushButton debido a que se invirtió mucho tiempo en la traducción del código Java a Objective-C respetando la estructura de los tres proyectos para seguir el mismo modelo de programacion.

Conclusiones :

El desarrollo de los tres prototipos se demoro 22 horas en el desarrollo de la version escritorio, 5 horas la version Android debido a que la gran mayoría de código se pudo reutilizar y 22 horas la version de iOS debido a la traducción a Objective-C, con esto ya es posible comenzar el desarrollo incremental del cliente de Nodos en las diferentes plataformas.

Read More
Page 1 of 1012345...10...Last »