vendredi 4 septembre 2009

Veille technologique semaine 36

Pour le bulletin de cette semaine, je vous propose les sujets suivant :
  • un concours proposé pour les développeurs JavaFX : faire une application d'ici le 30 septembre JavaFX en 30 lignes de code maximum. A vos NetBeans !
  • la liste courante des évolutions du langage Java prévues pour le JDK 7. Quand pensez vous ?
  • un article sur l'architecture logicielle à base de composants : quelle est la différence entre une architecture modulaire et une architecture à base de composants ? La séparation des préoccupations.
  • La JVM qui devient multi-langages : la plateforme Java (la JVM + les API) est plus importante que le langage Java lui-même.
  • Les cinq conseils pour faire des revues de code efficaces.
  • La JVM et son tuning : explication.
  • Les optimisations du JDK 7 : encore des améliorations de performance possible.
Bonne lecture


Starting Soon: New JFXStudio Challenge for JavaFX Developers
Josh Marinacci has announced a new JFXStudio Challenge: Small is the New Big. JavaFX developers will have from September 8 through September 30 to develop an interesting application in 30 or fewer lines of code (3000 characters maximum), all contained in a single JavaFX file.


Liste finale des évolutions du langage Java apportées par le JDK 7

En début d'année, Sun a initié le Project Coin, un sous-projet d'OpenJDK visant à recueillir les propositions d'évolutions du langage Java pour le JDK 7 prévu pour début 2010. Les soumissions ont été nombreuses et Joseph D. Darcy, leader du projet, informait régulièrement la communauté sur l'avancement du processus de sélection. C'est maintenant la liste finale des évolutionsqu'il annonce. Sauf problème de planning, il s'agit donc là de ce que le langage Java sera dans JDK 7 :

On est loin de la liste d'évolutions très audacieuses initialement prévue pour JDK 7, mais les évolutions finalement retenues ont l'avantage d'être réalistes en terme de temps d'implémentation, tout en apportant un confort supplémentaire au quotidien pour les développeurs Java.

Rémi Forax, très au fait des développements sur l'OpenJDK, propose d'ailleurs son analyse des tâches restant à accomplir et de leur complexité pour chacune des évolutions.


Final list of Project Coin changes for JDK 7
Project Coin got its name because it is about making "small change"(s) to the Java programming language for JDK 7. Sun's Joe Darcy has been leading the project. In his blog post, Project Coin: The Final Five (Or So), has announced which small changes will actually make it into JDK 7.


Project Coin: The Final Five (Or So)


Component-Based Software Engineering
the benefits of components modularity, focusing exclusively on the component based architecture software paradigm. Component's relationship to reuse and touch on how components helps ease maintenance and improve extensibility, also making the system easier to understand, maintain, and extend:

Maximizing reuse complicates use.


Java yields to other languages on the Java Virtual Machine
the JVM is becoming a polyglot platform, where developers can take advantage of different languages for different needs.

Java the platform taking more prominence than Java the language. Sun's Bray emphasizes that the Java platform is becoming more important than the language itself: "I personally think that the Java platform has more strategic importance than the Java language, going forward."



5 tips to make good code reviews
Code reviews are one of the most valuable engineering practices.
1. Code reviews improve the quality of the code through the suggestions from the code reviewer.
2. Code reviews are a great tool to indirectly teach other developers parts of the system they may have to maintain in the future.
3. Code reviews encourage people to learn best practices from other developers.
4. Code reviews can be used as a validation of the clarity and simplicity of the system.

You may have noticed that I have omitted from the list that code reviews help finding bugs and enforce coding standards and that's because:
1. Code reviews SHOULD'T be performed to find errors in the code.
2. Code reviews SHOULD'T be performed to enforce coding standards.



Java Performance Tuning, Profiling, and Memory Management
Java application performance is an abstract word until you face its real implications. It may vary depending on your interpretation of the word 'performance'. This article is meant to give the developer a perspective of the various aspects of the JVM internals, the controls and switches that can be altered to optimal effects that suit your application. There is no single size that can fits all. You need to customize to suit your application. You may be facing one of the issues listed below:

1. The dreaded java.lang.OutOfMemory Error
2. Your application is literally crawling.

Before we take the plunge into solving the issues, we first need to understand some of the theory behind the issues.


Java HotSpot Virtual Machine Performance Enhancements - JDK 7

  • Zero Based Compressed OOPS
  • Escape Analysis Improvements
  • NUMA Collector Enhancements
  • NUMA Performance Metrics

Aucun commentaire: