Translate

domingo, 28 de febrero de 2010

sábado, 27 de febrero de 2010

The Apache Software Foundation Celebrating a Decade of Open Source Leadership.

La Fundación Apache nos soluciona la vida, con muchos de sus proyectos. Todos mis proyectos usan una librería o producto de Apache. El cual esta cumpliendo una década ayudando a los desarrolladores.

Feliz Cumple!!!


Blogged with the Flock Browser

Apache Tuscany



Apache Provee soluciones para todo y más todavía. Tuscany 
es una implementación de la especificación SCA.

Apache Tuscany 
provee una infraestructura para facilitar el desarrollo de una Arquitectura orientada a servicios (SOA). Apache Tuscany implementa SCA por lo tanto reduce el costo de desarrollo de soluciones basadas en SOA.

Apache Tuscany 
provee soporte para SCA 1.0. También se integra muy bien con tecnologías web 2.0 y OSGI. Soporta SCO y SDO 2.0 para C++ y 2.1 para Java.


Blogged with the Flock Browser

jueves, 25 de febrero de 2010

Flock

Estoy probando un nuevo browser llamado flock y realmente estoy sorprendido. Veo claramente el futuro de los browsers en este producto.

Es el browser 2.0, es decir esta integrado con la web 2.0 , pantallas para edición de blog, integración con facebook, y muchos chiches más!!!

Es gratuito y proveído por la organización Mozilla

Se los recomiendo: www.flock.com
Blogged with the Flock Browser

sábado, 20 de febrero de 2010

SDO

Service Data Objects es una tecnología que permite que los datos sean heterogéneos para arquitecturas SOA. La espacificación SDO fue desarrollada en 2004 en una colaboración entre BEA, IBM y JCP. La versión 2.0 fue parte ya de SCA.
Un modelo simple de programación para desarrollar aplicaciones que utilicen diferentes tipos y fuentes de Datos:
Acceso uniforme a datos de fuentes heterogéneas: XML, RDB, POJO, SOAP, LDAP, JCA, etc.
Soporta modelo desconectado
Provee ambos estilos de programación: Estático (altamente tipado), Dinámico (estilo lenguajes de scripts).
Provee introspección a Metada. Ejemplo: para acceso a los tipos de datos
Es neutral con el lenguaje de programación. Soporte a Java, PHP, C++, etc

SDO reemplaza los diferentes APIs que existen para el acceso a los Datos.
SDO libera al desarrollador de los detalles técnicos del backend de los Datos.
SDO define una forma única y simple de acceso a fuentes heterogéneas de Datos.

SCA

SCA (Service Component Architecture) es una tecnología que simplifica el desarrollo de aplicaciones dentro de una Arquitectura Orientada a Servicios (SOA). Permite crear recursos IT en servicios reusables de una manera muy sencilla. Además, reduce la complejidad de la creación de los mismos ya que unifica la forma de crear dichos servicios de una manera independiente del lenguaje de programación o la plataforma utilizada.

Utilizando SCA se pueden implementar esos recursos IT en términos de funciones de negocio y evitar la exposición de su programación interna (con todo lo complejo que pueda llegar a ser) al usuario. No solo eso, SCA propone un modelo de ensamblaje de los componentes dando solución a todo tipo de problemas como los métodos de acceso o la seguridad.

Qué es, concretamente, SCA? Es un conjunto de especificaciones que describen un modelo para construir aplicaciones y sistemas basadas en una Arquitectura Orientada a Servicios (Service-Oriented Architecture o SOA). El propósito de este proyecto es doble

· Definir en forma única un modelo de componentes de servicios, tanto para la provisión como para el consumo. Lo novedoso es que esta filosofía procura trascender Java para abarcar también C++, COBOL, PHP o incluso lenguajes basados en XML como BPEL, XSLT o XQuery

· Definir en forma única la manera de ensamblar esos componentes, de referenciarlos para poder construir aplicaciones orientadas a servicios

SCA define la manera de ensamblar servicios web (incluso con otros elementos que no sean Servicios Web como EJB’s, CORBA, etc…) . SCA consiste en un conjuntos de “artefactos” los cuales son definidos en un XML.

Si se quedaron con gansa de más info dejo pdf de IBM:

http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-sca/SCA_White_Paper1_09.pdf

http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-sca/SOAProgrammingModelBusinessValue.pdf

domingo, 14 de febrero de 2010

viernes, 12 de febrero de 2010

Apache Click

Apache Click es un framework para desarrollo web que alcanzo a ser Top level. Eso es mucho para el joven framework. Esta basado en el patrón MVC. Y mezcla sencillez con performance. No pude todavía probarlo pero me parece, a simple vista muy bueno.

Dejo links:



Spring y OSGI, algo más?


Se preguntan ¿Qué es OSGi? y supongo que todos hemos usado eclipse alguna vez y con eclipse, equinox. Equinox es un contenedor OSGi implementado por eclipse.

Bueno en pocas palabras eso es OSGI, OSGi proporciona funciones más parecidas a un contenedor web, pero es más versátil. OSGi te permite crear aplicaciones a partir de componentes.

Que es spring? Si no saben que es spring, no han leído otros posts. Spring es el framework que provee inyección de dependencias y programación orientada a aspecto. Y me quedo corto, porque spring soluciona muchos problemas que nos topamos en el desarrollo con subproyectos: spring security, spring Ldap, spring MVC, etc.

Si fueron un poco observadores, notaron que osgi es una tecnología que nos permite desplegar módulos o componentes y spring nos permite trabajar con diferentes tecnologías de forma más fácil.

Spring Dynamic Modules hace más fácil escribir aplicaciones Spring que puedan ser deployeadas en un entorno OSGI, y que puedan aprovechar las ventajas de los servicios que ofrece OSGi.

Spring's OSGi soporta también hacer más simple y más productiva el desarrollo de aplicaciones OSGi. Parar aplicaciones empresariales, la combinación de Spring Dynamic Modules y the OSGi platform provee:

Mejor separación de la logica de la aplicación en modulos.
La habilidad de desplegar diferentes versiones, de los modulos.
La habilidad de descubrir dinámicamente y usar servicios provistos por otros módulos en el sistema.
La habilidad de instalar, modificar y desinstalar módulos on fly.
Puede usar spring dentro y entre los modulos.
Un modelo de programación simple y familiar para los desarrolladores de aplicaciones empresariales.

Spring Dynamic Modules 1.0 soporta JDK 1.4 (y superiores) y OSGi R4 (y superiores). Los paquetes desplegados para usar con Spring Dynamic Modules deben especificar "Bundle-ManifestVersion: 2" en el manifest (OSGi R4). Además soporta Equinox 3.2.x, Felix 1.0.3+ y Knopflerfish 2.1.x .


Dejo links:

martes, 9 de febrero de 2010

Cual es el lenguaje más popular?

langpop.com es una pagina que trata medir la popularidad de los lenguajes.

El primero es java, luego C, C++, PHP y javascript.

Invito que visiten el sitio.





sábado, 30 de enero de 2010

Desarrollando una aplicacion Spring Framework MVC paso a paso

Hay una traducción en español de Spring Framework MVC paso a paso en :




Apache Pivot


Apache Pivot es un proyecto que hace poco fue promovido a top level en la organización apache.








Apache Pivot es un framework de presentación para hacer RIAS a simple vista, me hizo acordar a bindows (otro framework de presenteción) . La idea es generar un xml (WTKX) que contenga los componentes y el layout de tu RIA y vos programas en java, pare sido a la filosofía Flex o Silverligh.












Apache Pivot se ejecuta como un applet embebido y esta basado en Java2D y además implementa el patrón MVC. Obviamente esta bajo licencia apache.





Veamos un ejemplo:


public class HelloJava implements Application {
private Window window = null;



@Override

public void startup(Display display, Map properties) {

Label label = new Label();

label.setText("Hello World!");

label.getStyles().put("font", new Font("Arial", Font.BOLD, 24));

label.getStyles().put("color", Color.RED);

label.getStyles().put("horizontalAlignment",

HorizontalAlignment.CENTER);

label.getStyles().put("verticalAlignment",

VerticalAlignment.CENTER);



window = new Window();

window.setContent(label);

window.setTitle("Hello World!");

window.setMaximized(true);

window.open(display);

}



@Override

public boolean shutdown(boolean optional) {

if (window != null) {

window.close();

}



return false;

}



@Override

public void suspend() {

}



@Override

public void resume() {

}



public static void main(String[] args) {

DesktopApplicationContext.main(HelloJava.class, args);

}

}

Luego de hacer esta clase podemos configurar el applet:

<applet code="org.apache.pivot.wtk.BrowserApplicationContext$HostApplet"

archive="lib/pivot-core-[version].jar,lib/pivot-wtk-[version].jar,lib/pivot-wtk-terra-[version].jar,lib/pivot-tutorials-[version].jar"

width="160" height="80">

<param name="applicationClassName" value="org.apache.pivot.tutorials.HelloJava">

</applet>

En este caso no necesitamos definir el xml que contiene la estructura.

Veamos un ejemplo con este xml armado:

public class HelloWTKX implements Application {
     private Window window = null;
      @Override
    public void startup(Display display, Map properties)         throws Exception {
        WTKXSerializer wtkxSerializer = new WTKXSerializer();
        window = (Window)wtkxSerializer.readObject(this, "hello.wtkx");
        window.open(display);
 }
     @Override
    public boolean shutdown(boolean optional) {
      if (window != null) {
         window.close();
    }
     return false;
    }
        @Override
    public void suspend() {
    }
     @Override
    public void resume() {
    }
     public static void main(String[] args) {
     DesktopApplicationContext.main(HelloWTKX.class, args);
    }
  
}

      
Definimos el xml que tiene la estructura:
<Window title="Hello WTKX!" maximized="true"     xmlns:wtkx="http://pivot.apache.org/wtkx"     xmlns="org.apache.pivot.wtk">
    <content>
        <Label text="Hello WTKX!"
            styles="{font:'Arial bold 24', color:'#ff0000',                 horizontalAlignment:'center', verticalAlignment:'center'}"/>
    </content>
</Window> 

Ahora ya tenemos un pantallaso de un ejemplo de Pivot.
     

Para ver lo que se puede hacer aquí dejo el link de demos: http://pivot.apache.org/demos/











miércoles, 27 de enero de 2010

Jonathan Schwartz se irá de Oracle / Sun

Bueno, he leido hoy en javahispano que el ceo de sun se ira luego de la completa adquisición.

Para que no sepa que hizo Jonathan Schwartz; este hombre fue muy importante para Software Libre y para nosotros los desarrolladores; ya que libero Java y Solaris.

"El soft libre crea volúmen, que genera demanda para implementaciones, que genera ingresos por licencias y soporte de la misma forma que pasaba cuando los productos no eran gratuitos. El softlibre aumenta las oportunidades de ingresos.

Abrir Solaris y darlo gratis, nos llevó a la ola más grande de adopción que Solaris haya visto jamás, alrededor de 3.4 millones de licencias desde Febrero (muchas sobre HP curiosamente). Y esto se combinó con la mayor expansión en su base de ingresos y creo que lo mismo va a ocurrir con el Java Enterprise System, su manejo de identidades y las suites de integración. ¿Porqué?

Porque ni un solo cliente de los Fortune 2000 en el mundo va a correr el corazón de su negocio con productos que no tengan el número de teléfono de la casa de alguien del otro lado. Y ningún desarrollador o nación en desarrollo al que se le presente con un producto open source equivalente o mejor.. va a elegir una opción propietaria (nota: no conoce nuestros mercados)

Apostar contra el FOSS es como apostar contra la gravedad. YSoftware libre no significa sin-ingresos, significa sin-barreras-de-entrada. Sino pregúntenle a nuestro carrier."

Esta es una reflexión que demuestra su forma de pensamiento y el modelo de negocio que planteaba.

domingo, 24 de enero de 2010

martes, 19 de enero de 2010

Hola Mundo!!!

En informática, un programa Hola mundo (o Hello World, en inglés) es el que imprime el texto «¡Hola, mundo!» en un dispositivo de visualización (generalmente una pantalla de monitor). Se suele usar como introducción al estudio de un lenguaje de programación, siendo un primer ejercicio típico.

Esta es la definición de la wikipedia, sobre el programa Hola Mundo!!. La pregunta es : quien no a escrito un Hola mundo? es como el primer paso que da un programador. Existe una pagina que muestra más de 200 ejemplos de Hola Mundo en diferentes lenguajes. Dejo el link para los curiosos: