Revue de Presse Xebia

Revue de Presse Xebia

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

Agilité

Le coin de la technique

Evénements de notre communauté en France et à l’étranger

Agilité

Tout le monde se lève pour Daily

Fabrice Aimetti, Consultant agile et serial traducteur sur tout ce qui touche à l’agilité nous offre une nouvelle traduction d’un vieil article de Jason Yip intitulé « It’s Not Just Standing Up: Patterns of Daily Stand-up Meetings ».
Cette traduction parle donc des bonnes pratiques du Daily Stand-up Meeting. Nous passerons vite sur la mise page qui ne fait pas bien ressortir le plan car c’est le contenu qui importe. Et celui-ci est dense ! Si pour vous le principe du « Daily » n’est pas encore très clair, si vous le faites tous les jours un peu au hasard en espérant qu’il soit mieux aujourd’hui que la veille, si son intérêt est remis en cause par les membres de l’équipe… alors vous avez là un outil indispensable. Tous les aspects y sont abordés, avec des exemples d’objections et de solutions:

  • Les bonnes pratiques
  • les acteurs
  • les sujets à aborder
  • les horaires
  • la motivation

Par contre, n’oubliez pas que « le Daily » ne constitue que l’une des réunions de la méthode Scrum avec le poker planning, la revue de sprint et la rétrospective. Le tenir de façon journalière ne fera en aucun cas de vous une équipe agile si l’esprit de Scrum n’est pas respecté.

Le coin de la technique

Avenir de Javascript

Javascript est un langage que tout développeur Web a déjà pratiqué. On l’apprend souvent sur le tard, plus ou moins dans la douleur, et les ressentis sur ce langage sont très variés.

L’existence du serveur Node-JS, de l’intégration dans le JDK d’un moteur Javascript (Rhino qui devrait d’ailleurs recevoir sous peu des améliorations) et la montée en puissance de HTML5 (voir notre précédent billet) dénotent l’importance que prend Javascript dans la communauté mondiale, et plus seulement dans le développement côté client.

Les développeurs issus des technologies côté serveur se posent beaucoup de questions sur ce langage souvent mal perçu.

Si faire un module Javascript pour encapsuler des données est aisé, créer une classe et faire de l’héritage l’est beaucoup moins (très bon exemple donné ici). On reproche souvent à Javascript sa verbosité et sa complexité de lecture pour cette approche objet.

Mais sommes-nous dans la bonne direction quand nous faisons cela?
Lorsqu’on utilise un framework qui n’offre pas les moyens de réaliser une solution comme on le souhaiterait, il y a deux possibilités :

  • soit ce framework n’est pas complet et je peux proposer une évolution
  • soit le framework a été volontairement restreint à certaines fonctionnalités car elles représentent le consensus de la communauté sur les bonnes pratiques.

Javascript est un langage à typage dynamique et vouloir le restreindre à une conception objet pure serait lui enlever sa force. Les prototypes en Javascript sont justement présents pour modifier, au cours de la vie du programme, la structure des objets en fonction des besoins.

Il est difficile pour nous autres, développeurs « objet », de ne pas savoir de quel type sera notre paramètre dans une fonction, ou encore de ne pas faire d’héritage. Mais il est de notre devoir de désapprendre ce que l’on a durement acquis sur la POO et adopter une nouvelle approche en Javascript, en acceptant dès le départ son mode de fonctionnement, plutôt que d’y trouver des solutions de contournement.

HTML 5, les API REST avec JSON rendent les langages beaucoup plus communicants en facilitant et standardisant les échanges de données. La coopération est donc inévitable.

Une autre approche existe avec Google GWT qui considère le Javascript comme un langage compilé à partir d’un autre. Javascript serait ainsi le ByteCode des temps prochains ?

Vous pouvez suivre ce long débat sur l’article « JavaScript is Dead. Long Live JavaScript! » de Peter Michaux qui a récemment généré du buzz sur cette thématique.

Evénements de notre communauté en France et à l’étranger

JavaPosse #357 : Courage in Software Development

Le podcast américain populaire aborde le sujet du software craftsmanship sous la forme d’une discussion de groupe lors de leur dernier roundup. On y parle manifeste agile et craftsmanship, DRY (simple design), de l’humilité d’accepter les échecs, de code retreats et du modèle de Dreyfus d’acquisition des compétences. Une discussion intéressante, par l’opposition des points de vue, qui résume assez bien les tendances actuelles autour du mouvement.
A écouter, pour anglophiles, pour une durée d’un peu plus d’1 heure.

Billets sur le même thème :

One Response

  • C’est une très bonne idée de vouloir faire réfléchir à ce qu’est vraiment Javascript, mais attention à ne pas faire de conclusions trop hâtives : JS *est* un langage objet. Les notions de classe et d’instance ne sont pas des caractéristiques constituantes des langages objets, et vouloir faire des classes au sens Java en Javascript n’est pas forcément toujours une bonne idée.
    Le problème principal de Javascript à mon sens à ce niveau (tout du moins dans les versions que nous utilisons couramment sur les browsers) est de n’avoir pas clairement exposé ce qu’il était en ne fournissant pas l’opération clone(), pourtant à la base de la programmation prototype. Voir http://oranlooney.com/functional-javascript/ pour une discussion et des exemples, et un autre langage prototype, IO (http://iolanguage.com/) pour un langage clairement prototype.

    Quoi qu’il en soit, merci pour cette revue de presse !

Laisser un commentaire