Wednesday, April 16, 2014

Revisión del libro Learning PrimeFaces Extensions Development

El libro "Learning PrimeFaces Extensions Development "
http://www.packtpub.com/learning-primefaces-extensions-development/book


Ofrece una explicación detallada del uso de PrimeFaces Extension, de manera que podemos trabajar rápidamente con un proyecto utilizando los diversos componentes.
Explicación detallada y fácil, te permitirá conocer y crear una aplicación completa.
Se muestra el uso de Layout, Dinamyc Forms, entre otros.
Sin duda un libro necesario.

Monday, April 14, 2014

Entrevista a Adam Bien sobre Java 8

En esta cuarta entrevista converse con Adam Bien, quien ha escrito varios libros sobre JavaEE, acerca de su opinión sobre Java8

 




 1.Could you  tell us something about yourself
My name is Adam Bien (adam-bien.com), I'm a contractor / freelancer and so Singleton.  I really like the Java Programming Language.
Three times a year I'm delivering Java EE workshops at the MUCs Airport to an truly international audience -- http://airhacks.com

 2. What has been your experience with Java?
I'm working with Java since 1995. I started implementing serverside Java with the JavaWebServer. On the client I started with Applets, AWT, then evaluated JFC, then Swing, first versions of JavaFX Script. Java remains exciting. I really like it.

3. How do you consider the new Java 8 release?
It is a really big deal. I used Java 8 for about one year. Since the last JavaOne Java 8 is really stable. I ran NetBeans and all my development on Java 8 daily builds.

Also Nashorn is exciting. It saved me already several hours of my time with the maintenance of my web sites: https://github.com/AdamBien/spg


 4. What do you think of lambda, stream?
I already removed JPA with JPA QL and replaced it with plain domain objects, an in memory-grid and Lambdas with streams.
I think Java 8 will have a huge impact on Java EE architectures.


5. Do you know companies / developers who are migrating to Java8?
There is nothing to migrate :-). In some projects we just launched the server on Java 8.

Other projects were started already last year on Java 8--just because of lambdas. If possible you should upgrade as fast as possible to Java 8.


 6. What are the characteristics that should be added to or removed from the platform?
I really miss Jigsaw. Even more syntactic sugar would be nice, but I really like the direction Oracle's engineers are going with Java.


 7- Recommendations

Stay passionated and enjoy hacking. Keep away from meetings, politics and the boring stuff :-)

Thank you for the interview!

 workshops.adam-bien.com
 blog.adam-bien.com
 about.adam-bien.com

 Author of:
 "Real World Java EE Night Hacks", "Real World Java EE Patterns--Rethinking Best Practices"

Friday, April 11, 2014

Entrevista a Constantin Drabo sobre Java 8


Continuando con la serie de entrevistas sobre Java8, en esta ocasión converse con mi amigo Drabo.

1.Could you  tell us something about yourself
I'm Constantin Drabo from Burkina Faso where I'm working as software
engineer in National Treasury Office. I'm founder  FasoJUG  and Google
Developer Group  manager. I'm also contributor at both NetBeans
Community and Fedora Project where I've been elected as ambassador
since 2010.



2. What has been your experience with Java?
My first contact with Java is in 2002 when I'm student. I wrote my
first java program after reading the book of Anne
Tasso(http://www.editions-eyrolles.com/Livre/9782212111002/le-livre-de-java-premier-langage)
. I developed also several applications both academic and
professional. In my free time I help java moving forward by publishing
tutorials and evangelize.

3. How do you consider the new Java 8 release?
This release is seriously a great bunch for Java technology. I think
Oracle mistook by evolving slowly the platform. They should add  the
new features since a while.
This release comprises several interesting features. The prominent
ones are Java Embedded ,  scripting language support and IoT (Internet
of Things).

4. What do you think of lambda, stream?
With Lambda expression  they introduced functional programming into
Java. This concept is not new since there are already several language
that integrate it (PHP, Ruby, etc). In syntax level it is very strong
, but I skeptical according it usefulness. I think it can be a
concurrent of Nashorn which introduces the usage of a functional
language; JavaScript.Stream API contents  some important classes that
makes easy parallelization.


5. Do you know companies / developers who are migrating to Java8?
Franky speaking, the Java technology is very slow to be adopted here
in companies. Most of them use proprietary solutions and Java is
seeing as a hard adopted technology.
But some are very fun of Java !  I do not know if someone is ready to
move to Java 8 soon.


6. What are the characteristics that should be added to or removed from the platform?
The plateform is becoming  rich and complete. I think there is nothing
to be removed.

7- Recommendations
Java 8 is great  move on it as quick as possible  !


Constantin

Thursday, April 03, 2014

Entrevista a Jorge Guerra Guerra sobre Java 8

Continuando con la serie de entrevistas sobre Java 8, en esta ocasión conversamos con nuestro gran amigo Jorge Guerra.

Sitio web: https://sites.google.com/site/jguerra91/



1. Podrías hablarnos algo sobre ti

Soy Ing. Electronico y Lic. en Computación, trabajo como docente en Sistemas Distribuidos en la Universidad Nacional Mayor de San Marcos y en la Universidad Inca Garcilaso de la Vega, y soy capacitador en New Horizons Peru S.A. en todo lo que es tecnología Java.
He escrito dos libros de Java con Netbeans (Cliente / Servidor y aplicaciones Web), trabajo en tecnologías de todo nivel desde 1999, y actualmente desarrollo aplicaciones en Android usando Android Developer Tools (también en Java) 


2. ¿Cual ha sido tu experiencia con Java?
Desde que conocí Java (en 1998, usando Visual Age for Java de IBM) he apoyado el desarrollo de soluciones informáticas usando este lenguaje. En Peru, es el lenguaje ,mas usado, tanto en aplicaciones académicas como en desarrollos empresariales y he tenido oportunidad de participar en varias proyectos web y actualmente en la nube (usando Google App Engine) y ha sido realmente una gran experiencia profesional.

3.¿Como consideras la  nueva versión Java 8?
Es una versión que implementa ideas muy interesantes que van a obligar a cambiar código en muchos proyectos actuales, pero sobre todo en aquellas en la que se esta implementando aplicaciones sobre Cloud Computing, debido a las bondades que ofrecen los nuevos conceptos sobre stream , lambda y el nuevo papel que asumen las interfaces.

4. ¿Que opinas de lambda, stream?
Lo mejor que le pudo pasar a Java, es una apuesta clara a un código muchos mas compacto y definitivamente una evolución definitiva a la computación paralela que hace tiempo Java debió impulsar.
Otra cosa fundamental es stream que impulsa el concepto map/reduce indispensable cuando se hacen aplicaciones en Cloud Computing y sobre todo cuando se usan bases de datos NoSQL.

5.¿Conoces empresas/desarrolladores que están migrando a Java8?
Varias empresas de desarrollo están evaluando las nuevas características en algunos desarrollos actuales, pero todavía no hay una aplicación concreta que se este desarrollando con Java 8.

6.¿Características deben ser agregadas o removidas de la plataforma?
Me parece muy importante que se agregue de manera definitiva la posibilidad de convertir automáticamente datos de tipo simple a String y viceversa, mejoraría mucho el código. En AppInventor se realiza esto sin ningún problema.
Otra cosa que debería agregarse es un modelo de parseo XML similar al de JDom que me parece mucho mas practico que el tradicional org.xml del JDK actual.

7.Recomendaciones
Divulgar en articulos y charlas los nuevos conceptos alrededor de lambda, para que los nuevos programadores los puedan usar en futuros desarrollos.



Tuesday, April 01, 2014

Entrevista a Raul Casado Piqueras sobre Java 8

En esta ocasión haré una serie de entrevistas a grandes desarrolladores Java sobre su opinión acerca de Java 8.
Tenemos la primera entrevista que corresponde a un gran amigo Raul Casado Piqueras, quien ha contribuido durante muchos años en las comunidades hispanas de Java.
  1.  

1. Podrías hablarnos algo sobre ti

Soy Ingeniero Informático y llevo trabajando con tecnologías de la información desde hace más de 15 años. Trabajo como consultor y director de proyectos para compañías que tienen presencia en grandes clientes, con necesidades tecnológicas muy dispares. 

2. ¿Cual ha sido tu experiencia con Java?
Java ha sido uno de los lenguajes en los que me inicié en el mundo de la programación profesional y en el que más recorrido he tenido, hasta el punto que es una de mis áreas de conocimiento más fuerte. No sólo por conocimientos en el lenguaje en sí mismo, sino por el ecosistemas de herramientas que han evolucionado en torno al mismo. 

3.¿Como consideras la  nueva versión Java 8?
A lo largo de las diferentes versiones que se han ido lanzando se han ido incorporando funcionalidades muy interesantes, y sin duda en esta ocasión las novedades son muy esperadas. Las mejoras a nivel de JVM son cruciales en entornos empresariales, donde la crisis actual ha obligado a volver a pensar en términos de optimización de recursos.

4.¿Que opinas de lambda, stream?
Otra mejora cuya aplicación a nivel profesional es crucial: permite econtrar economías de escala a nivel de código, permitiendo al desarrollador un código más fácil de mantener, más sencillo de construir y mucho más reutilizable, más allá de la encapsulación de contenido. Generics, annotations y ahora lambda, son armas indispensables para conseguir un código mantenible, reutilizable y ajustado a las necesidades de los clientes.
Stream por otro lado, es una mejora que a priori puede suponer en los entornos empresariales un ahorro enorme, sobre todo al implementar estrategias como por ejemplo paralelizar su procesamiento. No sólo permite tener un código más sencillo, sino que simplifica la distribución de la carga de trabajo entre los diferentes núcleos o cualquier otra estrategia que se adapte a las necesidades de negocio

5. ¿Conoces empresas/desarrolladores que están migrando a Java8?
Personal y profesionalmente estoy animando a mis clientes a incluir las nuevas características de Java8 a sus soluciones. Son ventajas competitivas que deben ser aprovechadas lo antes posible porque son la evolución natural del lenguaje y el futuro del desarrollo. Nadie se acuerda hoy de cuando aparecieron los Collections y como se cuestionaba su idoneidad ... y hoy en día son claves en cualquier solución Java! 

6. ¿Características deben ser agregadas o removidas de la plataforma?
Cualquier simplificación del lenguaje es bienvenida y sin duda las optimizaciones y el profiling son algo que todos deseamos. Cuanto más sencillo sea el lenguaje en sí, mucho mejor. Closures, con la aparición de Lambda, puede que pasen a la historia, de la misma manera que Iterator lo haga con Stream. Sin duda, serán los desarrolladores los que decidirán que encaja más en la soluciones. No debemos olvidar que las soluciones que hay basadas en Java se cuentan por millones, por lo que hay cosas que son difíciles de eliminar, sobre todo si la comunidad vuelve a tener un papel relevante.

7.Recomendaciones
No hay que tener miedo a probar las nuevas funcionalidades que Java 8 ofrece, al contrario, hay que intentar ver en ellas una oportunidad para crear un código más sencillo, mantenible, eficiente y óptimo. Un lenguaje que nos centre en el desarrollo y menos en el lenguaje en sí, es sin duda nuestra mejor oportunidad para satisfacer mejor las necesidades de nuestros clientes




Saturday, March 29, 2014

Crear componentes Java Server Faces con NetBeans

Crear componentes Java Server Faces

En este ejemplo tenemos el siguiente dialogo.


podemos reemplazarlo por un un componente personalizado


Pasos para la creación del componente
 Crear la carpeta javscaz dentro de resources
Crear la pagina eliminar.xhtml


En la sección  <composite:interface>
Definimos el nombre del atributo con <composite:attribute name>
para los métodos usamos  method-signature y especificamos el tipo de valor de retorno.


En la sección <composite:implementation>, realizamos la implementacón del codigo.
Para usar el valor  nos basamos en la sintaxis cc.attrs.nombredelatributo 

  <p:commandButton id="removeButton" value="#{app['boton.yes']}"
                                 update="#{cc.attrs.buttonYesUpdate}"
                                 oncomplete="#{cc.attrs.buttonYesOncomplete}"
                                 actionListener="#{cc.attrs.buttonYesAction}" />


Secciones:
1. namespace
2. composite interface
3. composite implementation
4. uso de componentes




En la pagina que deseamos usarlo nivel1.xhtml
en el namespace incluir (nombre de la carpeta en resources)
 xmlns:javscaz="http://java.sun.com/jsf/composite/javscaz"

Agregar el componente formato: namespace:nombredecomposite, y colocamos los valores a los atributos.
  <javscaz:eliminar
                            buttonNoOnclick="PF('confirmationwidgetVar').hide()"
                            
                            buttonYesAction="#{nivel1Controller.delete()}"
                            buttonYesOncomplete="PF('confirmationwidgetVar').hide();"
                            buttonYesUpdate=":form:panel,:form:growl"
                            />