IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Chroniqueur Actualit�s

    Homme Profil pro
    Administrateur de base de donn�es
    Inscrit en
    Mars 2013
    Messages
    9 660
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Administrateur de base de donn�es

    Informations forums :
    Inscription : Mars 2013
    Messages : 9 660
    Par d�faut Java a 30 ans : retour sur l��volution d�un langage qui a su rester pertinent � l��re du cloud et de l'IA
    Java f�te ses 30 ans : retour sur l��volution d�un langage qui a su rester pertinent � l��re du cloud, du DevOps et de l�IA.
    Ce v�t�ran du d�veloppement peut-il encore s�duire les nouvelles g�n�rations ?

    Lan�� par Sun Microsystems le 23 mai 1995, Java est rapidement devenu � un pilier de l�informatique d�entreprise �. En 2025, la � mascotte � Duke de Java souffle ses trente bougies, mais le langage reste tr�s vivant : son cr�ateur James Gosling affirme qu�il est � encore tr�s utilis� et activement d�velopp� � et qu�il a � des d�cennies de vie � devant lui. Java est toujours l�un des langages les plus populaires au monde, class� r�guli�rement dans le top 5 par l�indice Tiobe.

    Selon une enqu�te d�Azul, 99 % des entreprises utilisent Java dans leurs applications ou infrastructures critiques. Son succ�s dans l�industrie est tel qu�on le compare volontiers au mortier et aux briques d�un b�timent � selon Scott Sellers (PDG d�Azul), � Java est comme le mortier et les murs de briques de l�entreprise � il est juste l� �. La long�vit� de Java est illustr�e par son adoption dans des domaines vari�s (web, mobile, cloud, big data, IoT�) et par son �volution constante pour r�pondre aux besoins modernes. Comme le souligne un rapport, m�me apr�s trois d�cennies � Java reste indispensable � aux entreprises et � la communaut� de d�veloppeurs, gr�ce � son � adaptabilit� � et sa compatibilit� ascendante.

    Origine et d�nomination du langage

    Avant de s�appeler Java, le langage �tait d�abord surnomm� � Oak � par ses concepteurs (r�f�rence � un ch�ne visible depuis le bureau de James Gosling). Ce nom dut �tre abandonn� car il �tait d�j� d�pos�, et l��quipe de Sun chercha d�autres appellations (Java, DNA, Silk, etc.). Finalement, ce fut � Java � (en hommage au caf� �ponyme) qui fut retenu. Ce choix � caf�in� � a fait date : d�sormais, on associe Java (l��le d�Indon�sie c�l�bre pour son caf�) � la portabilit� du langage. Par la suite, la plateforme Java (JVM + biblioth�ques) a concr�tis� la fameuse promesse du Write Once, Run Anywhere (� �crire une fois, ex�cuter partout �).

    Ironie du sort, des d�veloppeurs ont plaisant� que l�on devrait dire � Write Once, Test Everywhere � tant certains ajustements sont encore parfois n�cessaires pour assurer cette portabilit�. Quoi qu�il en soit, ce nom inspir� du caf� est maintenant synonyme de robustesse et d�universalit�.


    Un langage omnipr�sent en entreprise

    Java est aujourd�hui omnipr�sent dans l�industrie : back-ends web, applications bancaires, syst�mes embarqu�s, Big Data ou encore Android en utilisent la plate-forme. Dans les infrastructures critiques, Java fournit le socle de nombreux outils (par exemple Jenkins, Hadoop, ou des serveurs d�applications) et reste un choix de r�f�rence. Les chiffres sont �loquents : dans une �tude aupr�s de 2 000 d�veloppeurs, pr�s de 70 % d�claraient que plus de la moiti� de leurs applications tournent sous Java, et pr�s de 50 % l�utilisaient pour des projets d�intelligence artificielle.

    Cette diffusion massive explique que Java demeure dans le top 10 des langages pr�f�r�s (selon StackOverflow 2024), devant des langages plus r�cents comme C# ou C++. Certes la mont�e en puissance de Python ou Rust lui a fait perdre un peu de terrain (TIOBE le place autour de la 4 place aujourd�hui), mais Java a m�me �t� �lu � langage de l�ann�e 2015 � par cet indice, attestant de sa popularit� historique.

    � Java a surv�cu aux modes et aux changements de paradigmes. Des applets et servlets aux microservices et au cloud natif, Java a �volu� tout en restant familier. C�est lui qui a ouvert la voie � l�open source en entreprise. Et, sans doute, l�entreprise n�a jamais regard� en arri�re. � � Brian Fox (Sonatype)

    Nom : tiobe.png
Affichages : 12430
Taille : 27,4 Ko

    �volutions majeures du langage et innovations cl�s

    Au fil des versions, Java a int�gr� des �volutions importantes pour rester comp�titif et moderne. Par exemple :
    • Java 8 (mars 2014) : c�est la version qui a fait entrer Java dans l��re de la programmation fonctionnelle. Elle introduit les expressions lambda et l�API Stream, permettant de traiter les collections de mani�re plus concise et expressive. De nouvelles fonctionnalit�s comme les default methods dans les interfaces et la nouvelle API Date/Time modernisent �galement le langage (JDK 1.8 fut publi� le 18 mars 2014.
    • Java 9 (sept. 2017) : arriv�e de la modularit� via le projet Jigsaw (d�coupage en modules du JDK) et d�outils comme JShell (console interactive). Ce fut aussi la premi�re version � adopter le cycle de sortie semestriel (deux versions par an).
    • Java 16 (mars 2021) : formalisation des records (types immuables concis pour les donn�es) et des classes scell�es (hi�rarchies strictement born�es). Ces apports r�pondent aux critiques de verbosit� du langage en simplifiant la d�claration des classes � porteuses de donn�es �.
    • Java 17 (sept. 2021, LTS) : version long-terme (LTS) actuelle, apportant de nombreuses am�liorations internes (nouveaux garbage collectors, optimisations JIT, etc.). Elle comprend aussi des fonctionnalit�s plus r�centes (pattern matching, etc.) et confirme l�engagement de la communaut� envers la compatibilit� ascendante.
    • Java 21 (sept. 2023, LTS) : derni�re version LTS en date, avec d�autres �volutions (types num�riques � virgule am�lior�s, etc.). La prochaine version LTS, Java 25, est d�j� attendue pour septembre 2025.
    • Portabilit� et JVM : le c�ur de Java r�side dans sa JVM (HotSpot, OpenJ9, GraalVM�), qui ex�cute le bytecode Java sur chaque plateforme. C�est gr�ce � elle que la promesse Write Once, Run Anywhere devient r�alit�. Les compilateurs Just-In-Time et les collecteurs m�moire (garbage collector) ont beaucoup progress� pour optimiser les performances sur serveurs comme sur machines l�g�res. Comme l�observe Charles Oliver Nutter (membre cl� d�OpenJDK), � du langage lui-m�me � la JVM, le rythme des am�liorations est stup�fiant �.
    • Cycle de d�veloppement : depuis 2017, une nouvelle version de Java sort tous les six mois, permettant d�ajouter r�guli�rement des am�liorations. Les organisations peuvent choisir les versions � long terme (LTS) pour la stabilit� � ainsi Java 8, 11, 17, 21 (et bient�t 25) b�n�ficient d�un support renforc�.

    Chacune de ces �tapes a contribu� � moderniser Java sans trahir son h�ritage. Par exemple, Java 8 a r�duit nettement la verbosit� historique du langage. Plus r�cemment, l�introduction des records �vite l��criture manuelle de getters/setters, �quations ou toString() pour des classes de donn�es. Toutes ces innovations montrent que Java peut �voluer au rythme des nouveaux besoins sans perdre sa compatibilit� avec le code existant. Andrew Cornwall (Forrester) le r�sume ainsi : � Ils ont transform� Java en un langage moderne offrant une bonne exp�rience d�veloppeur tout en conservant la compatibilit� avec les versions pr�c�dentes �.

    Nom : pricing.png
Affichages : 2200
Taille : 17,5 Ko

    Gouvernance et avenir : d�Oracle � l�open source

    L�histoire de Java comprend aussi une saga de licences et de gouvernance. En 2010, Oracle a acquis Sun Microsystems et repris Java. Si la plupart du code a �t� ouvert dans OpenJDK, Oracle a ensuite modifi� son mod�le : passage � la souscription payante (2019) puis � une facturation par employ� (2023). Ces changements ont cr�� de la confusion et pouss� de nombreuses entreprises � explorer des distributions libres de Java. Par exemple, Azul rapporte que la part d�organisation utilisant les versions Oracle est pass�e de 70 % � 30 % en six ans, et que pr�s de 90 % des sond�s envisagent de migrer vers des alternatives open source. Cette tendance s�explique par le co�t et la complexit� croissants : selon des analystes, le nouveau mod�le d�abonnement d�Oracle a surtout p�nalis� les grandes entreprises (moins de clients payants, frais calcul�s au nombre d�employ�s). Une �tude r�cente confirme que seulement 10 % des utilisateurs Java interrog�s comptent rester chez Oracle.

    Deux ans apr�s l'introduction par Oracle de sa tarification bas�e sur le nombre d'employ�s pour Oracle Java SE, les inqui�tudes restent vives. 82 % des utilisateurs d'Oracle Java ont exprim� un malaise � l'�gard de son mod�le de co�t (le m�me pourcentage que celui indiqu� dans l'enqu�te et le rapport Azul 2023 sur l'�tat de Java). Le pourcentage d'organisations envisageant des alternatives � Oracle Java a �galement augment� de mani�re significative, passant de 72% en 2023 � 88% aujourd'hui. Les cinq principales raisons invoqu�es pour envisager une migration loin d'Oracle Java (o� les r�pondants pouvaient s�lectionner toutes les r�ponses applicables) comprennent : le co�t (42%), la pr�f�rence pour l'open-source (40%), les tactiques de vente d'Oracle (37%), l'incertitude cr��e par les changements continus de la tarification et des licences (36%), et les politiques restrictives d'Oracle (33%). Ces r�ponses soulignent que les entreprises recherchent de plus en plus des alternatives rentables, flexibles et transparentes � Oracle Java pour att�nuer les risques financiers et op�rationnels.

    Pour autant, ce conflit de licences n�a pas �corn� la position de Java. De nombreuses entreprises se tournent vers OpenJDK ou des distributions comme GraalVM, Red Hat ou AWS Corretto pour continuer � utiliser Java sans licence Oracle. Comme le rel�ve une enqu�te, la pr�sence massive de Java assure que m�me les soi-disant � tactiques de licence pr�datrices � ne freinent pas sa popularit�. Au contraire, la plateforme Java est soutenue par une vaste communaut� OpenJDK et des acteurs comme Oracle, Azul, IBM, etc., qui veillent � son �volution.

    Du c�t� d�Oracle, les responsables (comme Georges Saab) affichent leur confiance : Java a � un long pass� de pers�v�rance face aux �volutions technologiques � et on ne voit aucun signe d�essoufflement. En t�moigne la feuille de route active du JDK (la version 25 sera notamment LTS en septembre 2025). Les d�veloppeurs v�t�rans ne voient pas Java dispara�tre de sit�t : par exemple Kohsuke Kawaguchi (cr�ateur de Jenkins) affirme clairement que � Java n�est pas pr�t de dispara�tre �. Au total, m�me si de nouveaux langages attirent l�attention, Java conserve ses forces (portabilit�, stabilit�, performance) et continue � servir de base aux innovations technologiques.

    Nom : azul.png
Affichages : 1286
Taille : 139,7 Ko

    Conclusion

    En fin de compte, Java � 30 ans reste plus que jamais fondamental dans le paysage logiciel : il en incarne l�ind�pendance et la maturit�. Comme l�explique Brian Fox (Sonatype), Java a non seulement surv�cu aux changements de paradigme, mais il a aussi � pav� la voie de l�open source en entreprise � � une tendance dont l��cho perdure encore aujourd�hui. Et comme le r�sume Paul Krill : Java � continue d�assurer ce que les d�veloppeurs veulent et les entreprises ont besoin : ind�pendance, �volutivit� et r�silience �. Trente ans apr�s sa naissance, Java f�te donc un anniversaire sous les signes � la fois de la stabilit� et de l�innovation, pr�t � �crire de nouveaux chapitres pour ses d�cennies � venir.

    Sources : vid�o dans le texte, Azul, State of Java 2025, OpenJDK, Sonatype, Georges Saab

    Et vous ?

    Java est-il aujourd�hui aussi � moderne � que Kotlin, Rust ou Go ? Qu�est-ce qui manque encore selon vous ?

    Les lambdas, les records, le pattern matching� Ont-ils vraiment chang� votre fa�on de coder en Java ?

    La compatibilit� ascendante de Java est souvent salu�e, mais est-elle un frein � l�innovation plus radicale ?

    Pourquoi, selon vous, Java reste-t-il aussi massivement utilis� en entreprise malgr� la mont�e de nouveaux langages ?

    Quel est selon vous l�avenir de Java dans le cloud natif ou l�intelligence artificielle ? Peut-il y tenir t�te � Python ou Node.js ?

    Le co�t des licences Oracle a-t-il modifi� vos choix technologiques ? Utilisez-vous encore la distribution officielle ?

    30 ans, c�est long pour un langage : est-ce un signe de solidit� ou un risque de stagnation ?

    Quels moments ou versions cl�s ont marqu� votre parcours avec Java ?

    Java aurait-il connu le m�me succ�s sans la JVM ?

    Quels usages �mergents voyez-vous pour Java dans les ann�es � venir (IoT, edge computing, quantique�) ?

    Selon vous, Java existera-t-il encore dans 20 ans ? Sous quelle forme ?

    Si vous deviez recommander Java � un�e jeune d�veloppeur�se aujourd�hui, que diriez-vous ?
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et R�digez des actualit�s

  2. #2
    Mod�rateur
    Avatar de Gugelhupf
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    D�cembre 2011
    Messages
    1 326
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Analyste Programmeur

    Informations forums :
    Inscription : D�cembre 2011
    Messages : 1 326
    Billets dans le blog
    12
    Par d�faut
    Java est-il aujourd�hui aussi � moderne � que Kotlin, Rust ou Go ? Qu�est-ce qui manque encore selon vous ?
    Java s'est modernis�, notamment avec les Virtual Threads, mais n'int�gre toujours pas des concepts tels que :
    • L'optional chaining, qui est essentiel pour faciliter la gestion du null lorsque l'on manipule des objets business avec beaucoup d'imbrication. L'api Optional<T> est lamentablement insuffisant. Je vous laisse imaginer les pat�s de code qu'il est n�cessaire d'�crire en Java pour produire un mapping custom null-safe
    • Les tuples sont essentiels pour les api one-liner, mais visiblement ce concept ne serait pas dans la philosophie du langage selon monsieur Brian Goetz. Quand je vois � quel point il serait possible de simplifier l'utilisation des futures api tels que StructuredTaskScope.Joiner<T,R> c'est juste d�sesp�rant
    • Les named arguments pour faciliter la maintenance d'un constructeur, les constructeurs en Java sont issue du C++ et apportent une confusion lorsqu'il est question d'ajouter des param�tres de m�me type, le pattern builder est au final plus une solution de secours qu'une solution �l�gante

    Je trouve cela dommage que les utilisateurs du langage aient recours � des g�n�rateurs de code non-standard tels que Mapstruct ou Lombok (un peu moins gr�ce aux record) pour �crire du code plus concis. Nous pourrions comparer Java � d'autres languages JVM tel que Kotlin, ou bien n�cessitant un GC comme Golang, mais Java n'est pas comparable � Rust.

    Les lambdas, les records, le pattern matching� Ont-ils vraiment chang� votre fa�on de coder en Java ?
    Oui, il est juste impossible de se passer des lambdas depuis leur int�gration dans Java 8, personne ne va s'amuser � �crire des instances de classe anonyme. Les record sont int�ressants, mais je pense que tout le monde utilise d�j� Lombok et n'en ressent pas le besoin. Le pattern matching qui implique instanceof est quand � lui une ab�ration, une insulte au polymorphisme, cela va inciter les d�veloppeurs qui font du dev business � moins r�fl�chir sur les design pattern, cette feature n'�tait juste pas n�cessaire.

    La compatibilit� ascendante de Java est souvent salu�e, mais est-elle un frein � l�innovation plus radicale ?
    La compatibilit� ascendante n'est pas r�elle, vous ne pouvez pas prendre un JAR contenant du code JAXB ou librairies similaires pour l'ex�cuter sous une JVM 9+

    Pourquoi, selon vous, Java reste-t-il aussi massivement utilis� en entreprise malgr� la mont�e de nouveaux langages ?
    L'effet COBOL ? Blague � part c'est un langage appartenant � une �re o� l'informatique de d�veloppement s'est beaucoup �tendu, c'est LE langage universitaire 2005-2020, et ce ne sont pas les quelques features manquantes au langage qui feront de lui un mauvais langage, �a reste un langage performant pour du haut niveau, le fait qu'il soit plus de deux fois plus lent en moyenne m�me avec du GraalVM (source) par rapport au C, C++, Rust, Fortran etc est totalement acceptable pour les entreprises qui ne font pas du calcul pur

    Quel est selon vous l�avenir de Java dans le cloud natif ou l�intelligence artificielle ? Peut-il y tenir t�te � Python ou Node.js ?
    Java est d�j� pr�sent dans le cloud natif depuis le d�but, que ce soit chez AWS, Microsoft Azure, Google GCP, ils ont toujours fournit des API Java en premier MAIS pour �tre totalement honn�te j'ai d�j� eu l'occasion de discuter avec des devs AWS : certains n'aiment pas Java, mais Java est tr�s pr�sent sur le march�. Pour ce qui est des AWS Lambda ou Azure/GCP Function (produit phare du cloud native) Java n'est tout simplement pas adapt� � cause des temps de d�marrage (malgr� les optimisations de type snapstart)
    En ce qui concerne l'intelligence artificielle le langage propose de nouvelles features telles que l'API Vector (toujours en incubation) mais je dirais que c'est mort. Python est devenu le langage de r�f�rence � l'image de Node.js/TypeScript pour les projets web front & back. Ce n'est pas vraiment la faute � Java, mais les professeurs de math�matiques pr�f�rent Python pour sa simplificit�, pour ce qui est des performances les impl�mentations C, C++, Rust feront les calculs derri�re les rideaux.

    Le co�t des licences Oracle a-t-il modifi� vos choix technologiques ? Utilisez-vous encore la distribution officielle ?
    Je suis pass� sous OpenJDK & Amazon Corretto il y a bien longtemps, je n'ai jamais �t� impact� par les licences Oracle.

    30 ans, c�est long pour un langage : est-ce un signe de solidit� ou un risque de stagnation ?
    Tout d�pendra :
    • d'Oracle : Est-ce que le projet OpenJDK continuera d'�voluer ? Est-ce que Java fera l'effort d'offrir de meilleures performances malgr� sa nature qui requiert un GC ?
    • des entreprises : Est-ce que les entreprises s'orienteront vers d'autres technologies de gr� ou de force ?
    • des d�veloppeurs : Est-ce que les d�veloppeurs ne se mettront pas � faire plus de Rust, Python, TypeScript/Node.js selon les besoins ?


    Quels moments ou versions cl�s ont marqu� votre parcours avec Java ?
    Java 5 Tiger, je connaissais d�j� les templates en C++ mais c'�tait int�ressant de voir l'alternative avec les generics en Java, puis Java 8 Spider avec les lambdas �videmment

    Java aurait-il connu le m�me succ�s sans la JVM ?
    Non, et pourtant aujourd'hui on cours derri�re des solutions telles que GraalVM pour avoir du cold start

    Quels usages �mergents voyez-vous pour Java dans les ann�es � venir (IoT, edge computing, quantique�) ?
    Triste � dire mais aucun en particulier � part du business dans l'IoT et edge computing (domaine bancaire, assurance, h�tellerie...)... ce qui est d�j� tr�s bien non ? Je pense que d'autres langages sont plus adapt�s pour l'ia ou la robotique m�me si on peut le faire en Java

    Selon vous, Java existera-t-il encore dans 20 ans ? Sous quelle forme ?
    Oui, sous la forme que les d�veloppeurs l'ont initi�s avec leurs frameworks Struts, Spring, GWT, GraalVM etc

    Si vous deviez recommander Java � un�e jeune d�veloppeur�se aujourd�hui, que diriez-vous ?
    Il est fort probable que ce�tte jeune d�veloppeur�se apprenne Python � l'�cole, parce que nous avons transit� de C++ vers Java et de Java vers Python. Concernant Java je lui dirais que c'est un langage tr�s correct en terme de performance, en avance sur son temps, qu'il en a inspir� bien d'autres, qu'il a domin� une �re, qu'il est tr�s r�pandu, poss�de une grande communaut�, de nombreuses librairies qu'il/elle ne trouverait pas ailleurs (essayez de communiquer avec une base Sybase en Node.js vous allez comprendre). Je lui dirais aussi de s'int�resser aux math�matiques, aux algorithmes, et de ne pas se focaliser sur un langage en particulier mais d'en apprendre d'autres comme le Rust
    N'h�sitez pas � consulter la FAQ Java, lire les cours et tutoriels Java, et � poser vos questions sur les forums d'entraide Java

    Ma page Developpez | Mon profil Linkedin | Vous souhaitez me contacter ? Contacter Gokan EKINCI

Discussions similaires

  1. R�ponses: 3
    Dernier message: 17/09/2020, 10h41
  2. Google Chrome f�te ses 10 ans ! Petit retour sur les promesses d'un nouveau venu
    Par St�phane le calme dans le forum Google Chrome
    R�ponses: 2
    Dernier message: 04/09/2018, 21h44
  3. R�ponses: 5
    Dernier message: 30/03/2013, 17h11
  4. R�ponses: 7
    Dernier message: 16/10/2011, 23h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo