Revue de Presse Xebia

Revue de Presse Xebia
La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.

Actualité éditeurs / SSII

Le coin de la technique

Actualité éditeurs / SSII

VMWare – SpringSource, pourquoi ?

Pourquoi VMWare a racheté SpringSource dont le métier et la culture sont si différents ? Pourquoi un tel prix ?

Cyrille Le Clerc (Xebia) propose son analyse du rachat de SpringSource par VMWare : « Pourquoi VMWare / SpringSource ? Virtualisation matérielle vs. Cloud« .

Les acteurs du marché du Complex Event Processing

Paul Vincent, Tibco, a diffusé un récapitulatif des différents acteurs du marché du Complex Event Processing listant l’ensemble des éditeurs proposant des solutions classés par date d’arrivée sur ce marché.
Il y fait bien la distinction entre les produits se basant sur un système de requêtes temps réelles et ceux basés sur un système de règles.

Il est ainsi possible de visualiser l’arrivée successive des nombreux acteurs sur ce marché en pleine croissance. Par ailleurs on remarque qu’Esper est le seul moteur de requêtes CEP Open Source du marché tandis que Drools, grâce à sa récente version 5 est devenu l’unique moteur de règles CEP qui soit Open Source. Ces nouveaux entrants viennent ainsi perturber StreamBase, Coral8 et Progress sur leurs positions investies il y a plusieurs années.

Le coin de la technique

iBatis suit les dernières tendances Java

iBatis est un framework Apache souvent positionné face aux solutions ORM telles qu’Hibernate. En effet il adopte une stratégie différente puisqu’il ne cherche pas à créer un modèle objet au dessus du modèle relationnel, mais plutôt à faire un mapping objet des données d’entrée et de sortie des requêtes SQL. Traditionnellement ce mapping se décrivait par un lot de fichiers XML de configuration.

Début 2007, l’équipe des développeurs d’iBatis a créé une page Wiki pour recueillir les propositions pour une version 3.0 qui profiterait des nouveautés de Java 5 pour améliorer l’ergonomie de leur framework.

Après de longs débats, et développements, une série de 2 versions bêta a été diffusé. Une première version de documentation est également disponible, permettant de faire le tour des nouveautés les plus intéressantes :

  • Ajout d’un SelectBuilder permettant de construire dynamiquement des requêtes SQL, remplissant ainsi un rôle similaire aux Criterias d’Hibernate. Ce builder offre aux développeurs un DSL interne très élégant basé sur une clause import static Java.
  • Configuration du mapping par annotations. On dispose ainsi d’annotations @Insert, @Update, @Delete, @Select et @Result à placer sur les Pojos. L’équipe iBatis reconnaît par contre la possible lourdeur de ce modèle de configuration lorsque des mapping très complexes doivent être définis.
  • Possibilité de créer des DAOs utilisant des generics en type de retour. Typiquement une méthode listAllEmployees() retournera un type List<Employee> et non plus un type List.

iBatis répond à un besoin réel, car il propose une solution de persistance dont le niveau d’abstraction est intermédiaire entre JDBC et JPA. On ne peut donc que se réjouir de ce rafraichissement de l’API, l’alignant ainsi sur les tendances du moment dans le monde Java que sont les annotations, les DSLs, et autres interfaces simplifiés, qui permettent d’améliorer la productivité du développement.

Apache HTTP Client 4.0 finalisé

La refonte du client HTTP d’Apache a été initiée il y a deux ans avec l’arrivée d’une première version alpha. Un an après arrivait une première version bêta. Apache annonce maintenant la disponibilité d’une version finalisée du projet.

Au fil des années un nombre croissant de projets se sont basés sur HTTP Client lui concédant ainsi une certaine omniprésence. Son intérêt par rapport au client HTTP standard de Java est d’offrir une plus grande richesse de fonctionnalités liées à une meilleure flexibilité d’utilisation.

Cette nouvelle version majeure est une réécriture totale du projet, expliquant donc son temps de gestation particulièrement long. L’architecture y est repensée pour offrir une meilleure modularité et des possibilités d’extensions supplémentaires. Le client est ainsi désormais constitué de deux modules :

  • HttpCore apporte les fonctionnalités fondamentales du protocole HTTP et offre le choix entre un modèle d’I/O bloquant ou non bloquant en s’appuyant sur NIO.
  • HttpClient se base sur HttpCore pour offrir des fonctionnalités supplémentaires de HTTP telles que la gestion des cookies et l’authentification.

Une documentation très complète est déjà disponible pour HttpCore comme pour HttpClient.

Tour d’horizon de CouchDB

Une présentation de CouchDB par Jan Lehnardt, développeur sur le projet, lors du QCon de novembre 2008 vient d’être mise à disposition. Elle offre un aperçu global de CouchDB qui permettra de saisir l’ensemble de ses intérêts. Ainsi les principales caractéristiques de cette base de données mises en avant sont :

  • Base de données orientée documents : les informations sont groupées par documents qui sont stockés de manière versionnée.
  • Optimistic locking : CouchDB se base sur un numéro de version stocké au sein du document.
  • API Restful : les fonctions d’ajout, lecture, modification et suppression (CRUD) sont accessibles par une API Resful permettant ainsi une intégration triviale avec n’importe quel langage et plate-forme.
  • Views : CouchDB n’offre pas de mécanisme de requête tel qu’on en trouve habituellement sur les bases de données relationnelles. Ici tout n’est que vue des documents générée dynamiquement par MapReduce.
  • Réplication et résistance aux crashs : CouchDB supporte un mécanisme de réplication peer to peer lui permettant d’offrir une haute disponibilité des données sans effort supplémentaire.

Jan Lehnardt rappelle en outre que CouchDB est distribué sous licence Apache et que le projet est soutenu par IBM. Les lecteurs intéressés par CouchDB pourront également se tourner vers la documentation du projet ou encore vers le livre qui lui est consacré chez O’Reilly, prévu pour novembre, et d’ores et déjà librement accessible en ligne.

Commentaire

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nous recrutons

Être un Sapient, c'est faire partie d'un groupe de passionnés ; C'est l'opportunité de travailler et de partager avec des pairs parmi les plus talentueux.