vendredi 12 décembre 2008

Veille technologique semaine 50

Pour le bulletin de cette semaine 50, je vous propose les sujets suivants :
  • une première rétrospective de l'année 2008 sur la technologie Java : du langage à la plate-forme.
  • JavaFX est sorti depuis début décembre, et un certain nombre d'articles commencent à sortir. Une version 1.1 de JavaFx devrait voir le jour en Février, et une autre version 1.5 fera son apparition aux alentours de Juin 2009. Je vous propose les articles suivants :
    • SUN et JavaFX
    • des plugins qui permettent d'utiliser photoshop ou illustrator comme outil de composition visuel pour JavaFX
    • la FAQ de JavaFX
    • un article sur la création d'une petite application en JavaFX
  • Comment mesurer la productivité ? C'est une question récurrente pour laquelle l'article propose une solution qui a fait ses preuves : les tests automatisés pour permettre le refactoring.
  • Le planning de la conférence annuelle Javoxx (anciennement JavaPolis) qui se passe en Belgique en décembre. C'est une conférence très importante pour le monde Java avec des présentations de qualités. Ce planning montre un très grands nombre de sujets tous les plus intéressant les uns que les autres. Je vous indiquerais lorsque les slides seront disponible sur internet.
  • Un article au sujet de quelques amélioration des EJB proposé par la version EJB 3.1 avec : l'asynchronisme sur les services, une version d'EJB lite, ...
  • un petit article au sujet des exceptions en Java et de leur bon usage.
  • encore une page sur les performances en Java.
  • et enfin, pour ceux qui font de l'IHM avec Swing et Awt, sur la suppression de la limitation sur le mélange de composants lourd et léger : enfin corrigé dans le version JDK 6 update 12 (non encore officiel) et JDK 7.
Bonne lecture


Year in Review: Java in 2008 - What just happened?

When high-tech history is inscribed for the ages, 2008 may be remembered as the year Java tipped from a language-centric to a platform-centric technology. Andrew Glover kicks off JavaWorld's Year in Review series with a look back over the last 12 months in Java development, when alternate languages for the JVM took center stage, new directions emerged in the enterprise space, and Sun Microsystems staked its claim on the client side -- with or without Swing.


With JavaFX, Sun seeks new coders, new revenue.
JavaFX also comes with a slick feature, the ability to move running applications out of the browser and onto the desktop--and back, if desired. Essentially, they can change their nature and abilities according to where they're housed. And the same application also can run on JavaFX Mobile, holding the promise for programmers that they won't have to endlessly rewrite the same applications for different media.

"You can build a media player, run it in a browser, then you can simply drag it out of your browser onto your desktop, and it becomes a desktop application automatically. It's the same code, the same application," said Jeet Kaul, Sun's senior vice president of Java engineering. Moving to the desktop, the application could take advantage of new screen real estate that affords a better user interface and new permissions for tasks such as writing files to a hard drive, Kaul said.

JavaFX 1.0 Production Suite enables designers to convert their rich media assets to JavaFX format and view the converted files before handing them off to JavaFX application developers. JavaFX 1.0 Production Suite consists of three components:

JavaFX Plugin for Adobe Photoshop (exports graphics in Photoshop to JavaFX format)
JavaFX Plugin for Adobe Illustrator
(exports graphics in Illustrator to JavaFX format)

JavaFX Media Factory
(converts SVG files to JavaFX format and provides a Viewer for displaying JavaFX format files)



JavaFX Technology - FAQs


Getting Started With JavaFX Technology
Creating Your First JavaFX Application
This section guides application developers in creating their first JavaFX application by using the NetBeans IDE 6.5 for JavaFX 1.0 technology. For web designers who want to get started using the JavaFX 1.0 Production Suite, see the Getting Started With JavaFX 1.0 Production Suite article.


Comment mesurer la productivité ?
Depuis toujours, dans le monde du logiciel, on entend « Il faut augmenter la productivité des développements ». Il ne suffit pas d'en parler pour améliorer la productivité. Comment passer d'un slogan très abstrait à des actions concrètes et des résultats tangibles ?

On ne peut améliorer que ce que l'on mesure. Il est donc impératif de trouver un indicateur permettant de vérifier l'amélioration recherchée. Les mesures comme le nombre de lignes de code ou le nombre de points de fonctions, encore utilisées aujourd'hui, sont trop éloignées de la valeur produite pour être intéressantes. Un indicateur beaucoup plus proche de la satisfaction client, et donc plus pertinent, est « le nombre de fonctionnalités sans erreur ajoutées à un logiciel durant un période donnée », ce que l'on pourrait appeler le débit de fonctionnalités.
Malgré les différences de technologies, les deux tendances (1) et (2) ont une caractéristique commune : après un certain temps, le débit de fonctionnalités chute. Le profil 3 montre les équipes arrivant à conserver une augmentation de leur productivité. Quelle caractéristique magique ont-elles ?

Une technologie spécifique ? Non. Une architecture spéciale ? Non. Elles observent simplement deux disciplines : le test automatisé et le remaniement permanent du code.


Javoxx 2008 - Schedule

Avec 3200 personnes inscrites la conférence Devoxx 2008 qui a eu lieu du 8 au 12 décembre 2008 est complète ! C'est un vrai plébiscite et une grande réussite pour le JUG Belge, organisateur de cette conférence.


EJB 3.1 – EJB New and Improved!

The EJB 3.0 specification was a huge improvement from what we were used to in the early versions of EJB. Available as an early draft, EJB 3.1 has many more features and is even easier to use. Let's take a brief overview of a few interesting topics being considered in this new and improved version of EJB.


Exceptions in Java

In this article, we look at exception handling in Java. We start with the history of exceptions, looking back at the precursor of Java, a language called Oak. We see reasons why Thread.stop() should not be used and discover the mystery of the RuntimeException name. We then look at some best practices that you can use for your coding, followed by some worst practices, in the form of exception anti-patterns.


Java Performance

I remember 12 years ago, when Java was on the rise, and it was seen as "too high level" and slow when compared to C and C++.
The latter languages were the languages of choice when you wanted to achieve maximum performance.
Java, on the other hand, was seen back then as a high overhead alternative, due to its features like bytecode generation by the compiler, automatic memory management, references instead of pointers, and built in array bounds checks. At that time, those features looked like a costly overhead. The reasoning behind that point of view went more or less along these lines:

  • Java provides automatic array bounds verification, which means that it has to check the limits of the array at every access, therefore it has to be slower.
  • Java doesn't have pointers. There must be an overhead every time a reference is accessed, therefore Java is slower than C/C++.
  • Java has the garbage collector, therefore the virtual machine has to spend a long time finding unreachable objects, therefore Java is slower than C/C++.
  • Java compiles to bytecode, therefore it loses to C and C++ because those two languages compile to native code.

The reasoning above may have been true back then, in the pre-HotSpot era of Java 1.0 and 1.1, but since the introduction of the HotSpot virtual machine in java 1.3 those problems have been greatly reduced and in some cases Java now even beats C and C++ in terms of performance.


Allow limited mixing of heavy and lightweight components

Release Fixed 7(b19), 6u12(b01) (Bug ID:2167756)



Aucun commentaire: