Le futur de J2EE

paru le 13 Novembre 2003

par Tod Nielsen Executive Vice President, BEA Systems

traduit par François Pfister: f.pfister@free.fr

Il y a treize ans, treize employés de la firme Sun Microsystems entreprenaient une tache grandiose : dessiner la prochaine génération de l'informatique.

Cette question avait été soulevée auparavant, bien entendu, mais on n'y avait rarement répondu de manière aussi révolutionnaire.

Cinq ans plus tard et après beaucoup de réflexions, d'idées, et de propositions, l'équipe a présenté au monde entier la technologie Java, le premier langage d'envergure industrielle créé par une communauté

Le moment ne pouvait être mieux choisi : Java est arrivé à l'instant ou une autre technologie émergeait : Internet. Qui se rappelle de HotJava ? C'était le premier navigateur supportant des applets, ces petits programmes téléchargés. Ces applets ont transformé les pages statiques en applications passionnantes tels que jeux d'échec interactifs, espaces de conversation à plusieurs, ou encore applications commerciales. Java est devenu l'étalon or des applications côté serveur. Mais c'est son rôle côté client qui lui a conféré ses traits essentiels, y compris la sécurité, la portabilité, ainsi que son orientation réseau.

De tels atouts correspondaient exactement aux besoins de l'Internet, et Java est rapidement devenu le langage de fait pour l'informatique de la toile et de l'entreprise. Il se répandit rapidement, en transformant l'informatique et notre rapport à Internet : que vous achetiez un livre en ligne, que vous vendiez des actions par l'intermédiaire d'un courtier en ligne, que vous retiriez de l'argent de votre distributeur de billets, il y a de grandes chances que vous utilisiez Java.

Mais Java est arrivé à un point crucial : après huit ans d'existence, il est temps de poser une question semblable à celle qui avait stimulé son apparition : comment Java pourra-t-il marquer la prochaine ère de l'informatique ?

Il y a bien sûr de nombreuses réponses à cette question. Mais une de ces réponses est assurément la suivante : si Java doit renforcer son rôle, il doit devenir plus facile.

Une des raisons essentielles du succès de Java dans les applications d'entreprise tient dans la version entreprise de Java 2, autrement dit J2EE (Java 2 Enterprise Edition).

J2EE est aussi puissant que le rêve tout développeur. Mais avec la puissance, vint la complexité. Les spécifications de J2EE mises côte à côte occupent une étagère entière dans la bibliothèque, et j'ai du mal à envisager une simplification de la technologie d'entreprise avant longtemps… Pourtant cela peut - et doit - être plus facile ! Si J2EE doit provoquer une adhésion massive, tout en maintenant ce qui fait sa puissance, J2EE doit devenir plus aisé !

Si J2EE ne se conformait pas à cette évidence, il deviendrait le Latin des langages informatiques, une page dans l'histoire, et ne serait que peu - ou plus - utilisé.

Mais je ne crois pas le moins du monde que cela pourrait arriver. Il y a trop de bénéfice et trop de grands esprits derrière J2EE. Mais il faudra éviter deux écueils essentiels :

Le développement avec J2EE reste incroyablement complexe

ce qui le met hors de portée du développeur ordinaire, en le réservant aux plus expérimentés (et aux plus chers..). La complexité de J2EE peut devenir fatale lorsque nous mettons le profil du développeur ordinaire face à la contrainte universelle de réduction des coûts. De plus, J2EE doit innover sans cesse afin de satisfaire les besoins des utilisateurs, de rester en tête de la compétition technologique, et de maintenir son niveau de standardisation.

De la même façon que Visual Basic a facilité les développements sous Windows, les tâches courantes de développement J2EE ne doivent plus être l'apanage de l'élite, elles doivent devenir triviales.

De bonnes nouvelles nous arrivent pourtant: pour automatiser les tâches répétitives de J2EE, des outils visuels émergent, en laissant les tâches complexes à l'élite des développeurs J2EE.

Rendre le développement J2EE moins complexe le rend accessible à un public plus large et entièrement nouveau, tout en réduisant de façon importante les temps de réalisation, et en faisant meilleur usage des compétences, et en étant facteur d'économie et de gain de temps pour les entreprises.

Le second écueil

- le rythme avec lequel les innovations techniques de J2EE sont livrées aux utilisateurs - doit lui aussi être contourné. Quel que soit le degré de simplicité atteint par J2EE, s'il continue froidement à ce rythme d'innovation, gèlera sur place et sera perdu pour le marché. Quelqu'un, quelque part, viendra avec un produit plus rapidement abouti. Peut être pas meilleur, mais plus vite. Et la rapidité est la règle.

Je crois que J2EE peut continuer à être en tête, mais il faudra un changement de comportement de la part de ceux qui en régissent les normes.

A travers JCP (Java Community Process), et pour le bien des utilisateurs, les participants rivalisent en spécifications avant d'introduire les technologies sur le marché.

Ce processus est essentiel, et il prend du temps, souvent un ou deux ans. Actuellement, dans le JCP, nous normalisons les technologies d'abord, et nous les mettons en application plus tard. En attendant, les demandes des clients se font jour, et les fournisseurs sont contraints de livrer des produits perçus comme étant de la technologie propriétaire, alors qu'en réalité, ce sont des technologies qui sont en avance sur le processus de spécification.

Le Web lui-même nous fournit un précédent de taille, il a été réellement utilisé bien avant que le W3C (World Wide Web Consortium) ne le normalise.

Dans le même domaine, les Web Services ont été, d'abord, proposés en tant que produits commerciaux, avant d'être normalisés par la suite.

Cette approche permet l'émergence de normes avérées, utiles aux utilisateurs, et les réalise bien plus rapidement que l'approche actuelle. Bien que J2EE ne serait à la place où il se trouve actuellement sans ce processus rigoureux, nous devons réviser ce processus lui-même en ce sens :

innovez, mettez en application, et normalisez ensuite.

J2EE a connu huit années remarquables dans le domaine technologique. En investissant fortement dans la réduction de la complexité, et en accélérant l'innovation et la normalisation, je suis convaincu que les huit années à venir seront encore plus réussies.