Java sera-t-il toujours d'actualité dans 5 ans? [fermé]

41

Java aura-t-il la même importance que par le passé ou sera-t-il moins pertinent qu'aujourd'hui?

Anna Lear
la source
4
Java restera toujours pertinent dans l'industrie de la programmation. Comment suggérez-vous que nous écrivions quoi que ce soit sans cela?! ;)
deceze le
7
La langue ou la plate-forme?
MIA
@Jim: excellent point, découpler l'avenir du langage Java et de la JVM.
azheglov
2
@Chankey - Voir Meta: meta.programmers.stackexchange.com/questions/1/…
goodguys_activate
1
Nous ne faisons plus de "questions sur l'avenir et nous ne prévoyons pas ce qui va arriver".
Adam Lear

Réponses:

30

Java est pertinent et le restera pendant de nombreuses années dans le monde de l'informatique d'entreprise.

Que cela continue d'être pertinent dans d'autres domaines dépend beaucoup de ce que fait Oracle. S'ils injectent de la vie (et des ressources) dans ME, les applications de bureau et d'autres domaines, et s'ils persévèrent dans l'évolution du langage Java, Java se débrouillera bien.

Mais si Oracle réduit ses activités de R & D et / ou tente de piétiner d'autres acteurs de l'espace Java, il y a de fortes chances que quelqu'un / une entreprise développe un langage Java de meilleure qualité (et plus ouvert). Si Oracle gagne son procès contre Google, je prédis que la prochaine génération de la plate-forme Android aura un nouveau langage, comme ce fut le cas avec C #. Si Google obtient la bonne ouverture… alors, le jeu est lancé!

Stephen C
la source
1
Se mettre d'accord. Oracle lui-même a trop investi de sa pile d'applications d'entreprise dans Java pour lui permettre de décliner. Il est intéressant de noter que beaucoup d’autres réponses semblent se concentrer sur la plate-forme mobile.
Gary
10
IBM prend en charge Java sur toutes leurs principales plates-formes. Cela signifie que même si Java devait disparaître de la surface de la Terre, il continuerait à fonctionner sur les ordinateurs centraux (comme COBOL). Le principal avantage des programmeurs est leur capacité à se développer localement et à la rigueur de la JVM, qui signifie qu’elle fonctionnera de manière prévisible.
+1 spécialement pour I predict that the next generation of the Android platform will have a new language, just like happened with C#.N'oubliez pas que Gosling fonctionne maintenant pour Google; nighthacks.com/roller/jag/entry/next_step_on_the_road
Qwerky
@Qwerky Il travaille maintenant pour Liquid Robotics. nighthacks.com/roller/jag/entry/i_ve_moved_again
N'oublions pas ce que Borland a fait à Delphes. C'était tellement abandonné que la plupart des gens pensent aujourd'hui que Delphi est une solution en voie de disparition. Mais Embarcadero a sauvé le produit et il est maintenant ouvert pour java, mac, html5, android et d’autres domaines de programmation.
Please_Dont_Bully_Me_SO_Lords
47

Oui, Java restera certainement d'actualité et maintiendra probablement pendant longtemps sa position de n ° 1 de la plate-forme globale de développement logiciel.

Premièrement, les raisons pour lesquelles Java est et restera un choix fort:

  • Java est toujours la langue la plus populaire - ce qui signifie qu’elle compte le plus grand nombre de développeurs, le développement en cours, le plus grand nombre de bases installées, etc. Il n’ya aucun signe de net déclin - si vous regardez la tendance de TIOBE, par exemple, elle pourrait facilement continuer à l’être. N ° 1 pour les 10-15 prochaines années

  • Java, malgré ses défauts, reste un excellent langage pour développer des applications d’entreprise . Le fait qu’il soit détaillé et tend à promouvoir un style de développement POO assez standardisé est une bonne chose lorsque de nombreux développeurs différents doivent maintenir les applications sur plusieurs années de manière relativement standardisée. Les DSI intelligents s’en rendent compte, raison pour laquelle vous ne verrez pas Java disparaître dans l’entreprise de si tôt. BTW, et l’objectif explicite de Java lors de sa création, était qu’il soit «simple, orienté objet et familier».

  • Le succès des langues ne concerne pas seulement la langue elle-même, mais autour de l' écosystème des bibliothèques disponibles pour la langue. À cet égard, Java est incomparable, avec un grand nombre de bibliothèques open source et commerciales.

  • Performance - Le code compilé JIT sur les machines virtuelles modernes fonctionne très près du code natif optimisé en termes de rapidité. En pratique, cela signifie que Java est généralement l’une des combinaisons langage / implémentation les plus rapides disponibles (voir les benchmarks erronés si vous le souhaitez). Toute personne qui pense que Java est lente (ou, pour l'amour de Dieu, "interprétée") doit mettre à jour ses faits du siècle dernier.

  • Soutien majeur des entreprises - Java est une plate-forme stratégique prise en charge par les entreprises et organisations technologiques les plus importantes et les plus importantes au monde - nous parlons de Google, d'Oracle, d'IBM, de la Fédération du logiciel Apache, etc. Java bénéficie également d'un support important de la part des principaux utilisateurs de technologies. - banques, sociétés de médias, etc. Aucune autre langue / plate-forme ne bénéficie d'un tel soutien de la part de l'industrie (même si les joueurs ont parfois des difficultés :-))

  • Android - donne un coup de pouce majeur à Java dans l’espace mobile. Beaucoup de startups s'y intéressent, et il n'est pas déraisonnable de s'attendre à ce que les startups mobiles aient également de bonnes raisons de choisir Java sur le serveur.

  • Portabilité : Java est ce qui existe le plus proche d'un véritable environnement de programmation multiplateforme. Il est sur tout , des serveurs haut de gamme aux smartphones, et compilé pur code Java va fonctionner sans modification sur toutes ces plates - formes. Très peu de langues peuvent le dire avec le même degré de crédibilité. Également en tant que langage bytecode, Java présente un avantage inhérent dans l’espace bibliothèque, car les bibliothèques compilées sont intrinsèquement portables sur toutes les plates-formes.

  • Excellents outils - dont la plupart sont gratuits et / ou open source. Netbeans et Eclipse sont d’excellents exemples dans l’espace IDE. Les développeurs ont besoin de bons outils pour être pleinement productifs. Il s'agit donc d'un facteur important dans le choix de la langue / de la plate-forme.

  • Java est Open Source - ne va pas expliquer pourquoi c'est une bonne chose, mais disons simplement a) que l'implémentation Java de base dans OpenJDK et b) la plupart des bibliothèques et outils Java intéressants sont open source.

  • Java n'est pas simplement un langage, c'est une plate-forme : il existe de nombreux langages prometteurs sur la JVM, tels que Clojure et Scala, qui représentent l'avenir de la plate-forme sur le plan des langues. Ma prédiction serait que le langage Java continue de recevoir des améliorations mineures (JDK 7, 8, etc.) alors que ces nouveaux langages JVM sont l’innovation de pointe. Mais tout cela fait partie de la plate-forme Java.

Deuxièmement, comment Java sera-t-il remplacé? Regardons les prétendants alternatifs:

  • C / C ++ - continuera à jouer un rôle important en termes de programmation système et pour les exigences de code natif hautement optimisées telles que les jeux. Mais cela restera un créneau spécialisé et ne dépassera jamais Java, qui convient mieux au développement d’applications générales.
  • Microsoft.NET - C # est certes un langage intéressant (un clone amélioré / perfectionné de Java, en substance), mais la plate-forme .NET entière représente le verrouillage du fournisseur sur la pile logicielle Microsoft. Un grand nombre de personnes n'adopteront jamais une stratégie spécifique à un fournisseur après avoir été incendié par le passé. Mono, bien qu’il s’agisse d’un beau projet open source, ne sera jamais totalement compatible, de sorte que la plupart des entreprises ne parieront pas sur cette option. .NET / C # continuera d’être très important dans l’espace Windows, mais ne pourra pas déplacer Java en général.
  • Objective-C - continuera sans aucun doute à occuper une place importante dans le développement spécifique à Apple, mais n'aura probablement pas beaucoup de poids en dehors de cet espace. En outre, Java propose une contre-histoire très convaincante dans l’espace mobile grâce à Android
  • Python, Ruby - encore de belles langues, très productives dans leurs niches. Mais, loin d’être proche de la JVM, en termes de performances, d’acceptation par l’industrie ou de gamme de bibliothèques. Nous continuerons sûrement de réussir, mais ils ne sont pas en train de devenir des tueurs de Java.
  • JavaScript - continuera à jouer un rôle important dans le développement Web côté client. Mais en dehors de cet espace, aucune force réelle susceptible de menacer Java de sitôt.
  • Haskell, OCaml (et divers autres langages académiques / PF) - d'excellents langages, mais ne disposent d'aucun support de bibliothèque proche de celui de Java, donc pas particulièrement pratiques pour une utilisation dans le monde réel. En outre, n'offrent aucun avantage convaincant par rapport aux langages JVM tels que Clojure ou Scala (qui peuvent utiliser des bibliothèques Java sans douleur)
  • Clojure ou Scala - réellement très convaincant à moyen / long terme. Peut-être réellement remplacer Java dans 10-15 ans, mais les deux comptent vraiment dans la plate-forme Java, car ce sont des langages JVM. Les investissements en Java seront donc sécurisés.
  • Nouvelle langue inconnue mystérieuse? - Cela peut arriver, mais l’histoire a montré que peu importe la qualité d’une langue, il faut beaucoup de temps pour que la traction se développe, que les développeurs acquièrent de nouvelles compétences, que les entreprises investissent d’importants investissements, etc.

Enfin, quelques conclusions / prédictions:

  • La position relative globale (en termes de part de marché) des principales langues évoluera un peu au cours des prochaines années, mais ne changera pas beaucoup. Java restera n ° 1.

  • Vous ne vous tromperez pas en choisissant la plate-forme Java pour les 10-15 prochaines années. Ne vous inquiétez pas pour le départ imminent de Java.

  • À court terme, le langage Java est un pari sûr et fiable. À plus long terme, ou si vous ressentez le besoin d'être plus à la pointe de l'innovation / du design linguistique, je recommanderais Clojure ou Scala comme nouveaux langages JVM.

  • Les gens continueront à répandre la FUD sur Java. N'y faites pas attention.

Mikera
la source
2
Un excellent post, les personnes qui utilisent des langages comme Ruby et Python pensent que leur langage est la meilleure des choses, mais le fait est que pour les applications intensives à grande échelle, un langage dynamique ne va pas le couper
programmx10
4
Ce n'est pas la première réponse, mais c'est de loin la plus détaillée et la plus convaincante à la mi-2011, et mérite donc d'être la meilleure réponse. +1
limiste
@ programmx10: Y a-t-il plus de surcharge dans les langages dynamiques que dans les frameworks Java tels que Spring?
kevin cline
@ Kevin: Spring est généralement utilisé pour la configuration de l'application. Le coût n'est donc pas terrible. OTOH, s'il était également utilisé pour le calcul et la maintenance des entrées-sorties, il se situerait à peu près à la vitesse des langages dynamiques. La clé est que les applications Spring sont vraiment partiellement scriptées - ce qui en fait est un endroit formidable - mais nous ne disons pas aux patrons que, comme ils aiment croire, il faut absolument tout compiler.
Donal Fellows
1
Bon post. Où voyez-vous Go et peut-être Dart dans ce spectre?
Paul Tomblin
17

Même dans le pire des cas (le meilleur?), Je ne peux pas imaginer que Java devienne sans objet dans les 5 ans. Java a été suffisamment utilisé pour se retrouver à peu près dans la même situation que COBOL, Fortran, etc. - même si tout le monde avec le code existant décidait de réécrire tous les systèmes existants dans une autre langue aussi rapidement que raisonnable, il faudrait plus de 5 ans pour remplacez le tout (et dans 5 ans, il resterait encore suffisamment d’utilisateurs actifs pour qu’il reste encore assez d’entretien).

En réalité, cela ne se produira probablement pas. Même si les opinions sur Oracle sont divergentes, je ne peux pas les imaginer en train de faire quelque chose d'aussi horrible que tous les principaux acteurs qui investissent énormément dans Java le laisseraient tomber très rapidement. En toute honnêteté, il faudrait probablement près de 5 ans de mauvaises décisions manifestes pour qu'IBM (par exemple) envisage même de travailler pour utiliser quelque chose d'autre à la place de Java. Ils investissent suffisamment dans Java pour ne pas le laisser tomber tant qu’ils n’auront aucune alternative.

Jerry Coffin
la source
+1 pour la connexion à COBOL. Certains disent qu'en raison de l'action de Java en tant que COBOL moderne, il convient que Oracle l'utilise.
Macneil
17

Je dirais que c'est en déclin. Ce n'est pas parti, mais c'est passé son apogée.

Fishtoaster
la source
13
La source? (15 caractères)
TheLQ
13
@Kop - "ceci est un site web stackexchange pour des avis subjectifs" . C'est mal décrire le but de ce site. Les opinions subjectives sont acceptables, mais les faits objectifs sont clairement plus précieux. Et il est légitime de contester toute déclaration subjective pour obtenir d'éventuelles preuves objectives.
Stephen C
12
@ Lorenzo Au cours de la dernière décennie, Java a été à peu près le courant principal et est probablement le langage de programmation le plus utilisé dans l'industrie et le secteur de l'éducation. Je conviens avec Fishtoaster qu’il est en déclin, en grande partie à cause du manque d’orientation et de progrès sur Java 7 et du rejet par les programmeurs de solutions JavaEE lourdes en faveur de solutions plus légères dans d’autres langues.
Dan Dyer le
17
Je ne sais pas si je suis d'accord avec cette réponse laconique, mais les 15 votes positifs montrent simplement que je dois m'arrêter de traîner dans ce zoo. Cette réponse n'a aucun raisonnement et ne cite rien. Quel est ce que "source?" voulait probablement dire. Les opinions ne me dérangent pas, mais "Java mort!" ou "Java bien vivant!" sont tous les deux totalement invisibles pour moi +0.
Dan Rosenstark
5
-1: aucun fait ou argument dans cette réponse, que ce soit. subjectif! = assertions aléatoires non étayées
mikera
17

Deux réponses:

1) Android

2) mûre

Sérieusement, sur le bureau, il est peut-être en déclin, mais il propulse les deux concurrents sur iPhone.

En outre, l’année dernière, j’ai aidé un groupe de personnes ayant des devoirs à faire pour Java. Point d'être, Java est encore enseigné dans les collèges.

Modifier:

À partir d'octobre 2011, BlackBerry semble être en déclin. Android va toujours fort.

Moshe
la source
Un whatberry? Est-ce qu'ils y vont encore? Ils sont aux années 2000 ce que Palm était aux années 90 ... :)
adolf ail
@adolf garlic - Et alors, ils ne sont pas encore vendus à HP;) Voilà pourquoi il existe deux réponses. Android est aux années 2010 ce que l'iPhone est aux années 90. Android n'est pas encore au point.
Moshe
8
Cela n’a jamais été aussi pertinent sur le bureau. La majeure partie du développement Java se situe sur le marché final, le marché OLTP.
luis.espinal
@ Luis.espinal - Je groupais des serveurs, un poste de travail dans un groupe et un mobile dans l'autre.
Moshe
@ luis.espinal, +1
Gennady Vanin Геннадий Ванин
14

Il perdait de son importance sur le marché mobile, mais avec Android, il l'a retrouvé.

Casebash
la source
1
L'effet Android pourrait être de courte durée si sl4a est terminée. Le but ultime de sl4a est de permettre aux gens d'écrire des applications pour Android dans n'importe quel langage de programmation. En outre, les boîtes à outils multiplates-formes telles qu'Appcellerator rendent au moins partiellement inutile l'apprentissage de Java pour le développement Android.
Chinmay Kanchi
3
Sl4a mettra beaucoup de temps à se lancer dans le développement général en raison de problèmes de performances. Je ne suis toujours pas vendu sur les boîtes à outils multiplates-formes pour des applications de haute qualité. Pour quelque chose de rapide / des ressources limitées, bien sûr
Casebash
Quels sont les problèmes de performance? La version Python est CPython natif, toutes les API étant appelées via un pont Dalvik (IIRC). Il devrait donc être presque aussi performant que le code Dalvik "natif", en l’absence de JIT. Android 2.2 a un JIT, mais à ce stade, il n'y a aucune raison de ne plus utiliser Jython, car ce serait plus rapide que CPython et pas beaucoup plus lent que Java.
Chinmay Kanchi
+1 pour inspirer le commentaire de @Chinmay Kanchi. Je ne savais pas que sl4a est aussi intéressante.
Dan Rosenstark
13

Java sera pertinent dans un avenir prévisible, même si vous définissez comme pertinent d'inclure uniquement le nouveau code, pas le mode de maintenance hérité. Oui, le langage craint et traite ses programmeurs comme des enfants coquins au lieu d’être des adultes consentants et n’a pas eu un lifting depuis l’âge de pierre. D'autre part:

  1. Java a des bibliothèques géniales.

  2. La JVM est une plate-forme géniale.

  3. Vous n'avez pas besoin de programmer en Java pour utiliser ces bibliothèques, maintenant que les langages JVM prolifèrent.

IMHO la façon dont les choses évolueront est que Java dans le monde de la JVM deviendra ce que C est dans le monde nativement compilé. Les gens vont utiliser Scala, Jython, Groovy, etc. dans le codage quotidien, mais continueront à appeler le vieux code cruel Java à partir de ces langages pour l'éternité. Certains codes critiques en termes de performances peuvent toujours être écrits en Java, car il s'agit probablement du langage JVM de plus bas niveau et le plus efficace. Les anciennes bibliothèques auront besoin de nouvelles fonctionnalités. Par conséquent, Java restera très pertinent même s'il n'est pas utilisé quotidiennement par le programmeur moyen.

Dsimcha
la source
me fait sentir vieux, quand vous dites que java deviendra une langue maternelle. soupir
Dheeraj Bhaskar
7

Je le pense. Je prévois que sa popularité augmentera au cours des deux prochaines années, avec les améliorations récentes apportées au plug-in et aux améliorations syntaxiques à venir dans Java 7. Et il présente l'avantage de la vaste gamme de bonnes bibliothèques à code source ouvert (par rapport à .NET) qui pourrait facilement le garder en vie pendant encore 10 ans.

finnw
la source
4
Java 7 a rejeté bon nombre des meilleures idées
Casebash
1
@ Casbash: Qui étaient-ils?
Chris
5

Actuellement, Qt tue Java dans les applications de bureau. Il y a beaucoup de réécriture de Java vers Qt. Actuellement, je travaille sur l’un d’eux. Depuis le jour où j'ai commencé ma carrière de programmeur, il y a toujours une rumeur selon laquelle Quelque chose tuerait C ++. Pour ex. Visual Basic, Java, C #, mais en réalité, le C ++ est toujours actif. Il y a beaucoup d'inconvénients mais ça continue. Tous les autres concurrents ont eu une mort triste .........

Tamilselvan R
la source
4

Je ne pense pas que ça va perdre de sa pertinence. Java 7 vient de sortir avec de nombreuses fonctionnalités intéressantes qui aideront les développeurs à créer plus facilement d'excellents logiciels.

De plus, Java est utilisé pour créer des applications Blackberry. l'un des principaux téléphones mobiles d'entreprise. Il est prudent de dire que cela ne va aller nulle part.

Sergio
la source
Et alimente Android, un téléphone portable gagne du
terrain
Je suis allé à Java One cette année. Certaines des choses intéressantes à venir: la prise en charge de l'utilisation automatique de plusieurs cœurs, le déchargement automatique sur le GPU et le déchargement automatique sur l'unité vectorielle du processeur vont faire de Java une plate-forme très efficace. Et tous les programmeurs Java écrivant le "nouveau" java idiomatique l'obtiendront gratuitement. Il y a des gars très intelligents à qui Oracle a donné de l'argent pour améliorer Java. Le projet Lambda va fournir des fermetures et le faire d'une manière qui fonctionne ET est totalement compatible avec les versions antérieures sans aucune douleur. Conversion SAM rochers. Les bonnes choses arrivent.
Tim Williscroft
4

Je suis un développeur .NET principal, même si je travaille avec d'autres langages (y compris Java) selon les besoins pour que la tâche soit à portée de main. En tant que tel, basé sur ma propre expérience de travail avec la langue, je ne pense pas que ça s'en va de si tôt, voici pourquoi:

  1. Base d'installation actuelle - Il existe suffisamment de programmes nécessitant une assistance à long terme pour que les nouveaux développeurs aient une raison d'apprendre la langue.
  2. Utilisation en milieu universitaire - La plupart des collèges et universités utilisent l’une des langues d’introduction pour enseigner la POO et d’autres concepts fondamentaux. Cela signifie que de nouveaux développeurs continueront d’être diplômés et entreront sur le marché du travail lorsqu'ils connaîtront la langue. Commencer.
  3. C'est la nature multiplate-forme - une évidence, mais le fait qu'il s'agisse d'une multiplate-forme est un gros problème, d'autant plus que les téléphones intelligents prennent en charge Java sur les nouveaux appareils. La perspective de ne devoir gérer qu'un seul code, mais de pouvoir déployer (c.-à-d. Vendre) des applications pour plusieurs plates-formes va être un peu difficile. Pouvez-vous imaginer si iOS et Droid supportaient tous les deux des applications écrites en Java?
  4. Pas de concurrent puissant - Pour le moment, je ne peux pas nommer un langage que je considère comme un concurrent puissant de Java. Bien sûr, C # commence à apparaître sur davantage de plates-formes grâce à Mono, mais ce n'est pas tout à fait la même chose que d'avoir la même multiplateforme que Java. Certes, un certain nombre de langages font ce que fait Java (et certains cas sont meilleurs), ils ont tendance à être adaptés à ce qu’ils font. Pour certains projets de grande envergure, il n’a pas de sens de maintenir une tonne de langages à maintenir si vous le souhaitez. peut accepter n'importe quel coup de performance que Java pourrait avoir.
rjzii
la source
4

Java la langue peut être en déclin lent, mais Java la plate - forme (machine virtuelle Java JDK +) a certainement été en plein essor au cours des deux dernières années (Scala, Clojure et beaucoup d' autres langues, le cadre Android). C'est sans conteste la meilleure (uniquement viable?) Plate-forme multi-architectures, multi-systèmes, multi-langages, allant des appareils mobiles intégrés à l'entreprise mainframe, et il n'y a actuellement aucun rival comparable à ce que je sache. Je pense donc que la plate-forme Java sera pertinente dans 5 ans et même dans 15 ans. Cela fait également de Java le langage pertinent à long terme, même si sa popularité a dépassé son apogée.

Joonas Pulakka
la source
4

TIOBE évalue le nombre d’utilisations linguistiques ... http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Basé sur leurs statistiques, Java ouvre la voie et le fera probablement encore longtemps - n ° 1 depuis 2005. J'ai utilisé Java au cours de ma carrière et j'ai toujours travaillé avec des applications / développeurs Java - même dans des pays qui se considéraient comme tels. Microsoft Dev Shops. Java est un langage si facile à comprendre lorsque vous devez développer des solutions sur un serveur Mac ou Linux.

De plus, les bons vieux C / C ++ tiennent toujours les positions n ° 2 et n ° 3, alors que C # - le langage que tout le monde pense être le plus populaire (le marketing MS à son meilleur) - n’est même pas proche! J'utilise maintenant C #, mais il faudra des années pour égaler la quantité de code que j'ai écrit en Java et en Delphi.

N'ayez donc pas peur d'apprendre ou d'utiliser Java - il y a toujours des offres d'emploi qui leur sont réservées. Donc, oui, Java sera très utile pendant longtemps.

MDV2000
la source
Tiobe note ... le nombre de personnes sur Internet qui parlent d’une langue de la manière recherchée par tiobe. blog.timbunce.org/2008/04/12/…
Sean McMillan
3

C'est l'un des plus grands noms de la programmation d'entreprise (J2EE). Je suis à peu près sûr que nous ne le verrons pas baisser dans les prochaines années.

Terence Ponce
la source
3

Pas sûr de JAVA. Mais la JVM restera sûrement pertinente pour de nombreuses autres langues.

Gulshan
la source
3

Cela dépend de l'évolution de la langue.

Dans l'état actuel, Java n'est pas très actif en tant que langage. Il est né pour soutenir un (et un seul) paradigme: la POO. Il se situe à mi-chemin entre les langages autorisant les abstractions de niveau supérieur (comme C ++ et ses fonctionnalités de métaprogrammation) et les langages de script dotés de fonctions de réflexion (comme les commandes "exec" et "dir" de Python), mais il ne parvient pas à trouver sa place réelle. Il devient fondamentalement obsolète en tant que "langage". Si ce n’était pas le cas, c’est une norme de facto sur les appareils mobiles, je pense que ce serait mort maintenant.

En ce qui concerne le fait que c’est un bon langage d’enseignement pour OOP, j’ai des doutes sur ce que je peux voir: tous les programmeurs nés en Java génèrent des modèles de visiteur et d’observateur partout, mais ce n’est pas que j’ai une grande expérience des programmeurs Java.

Il existe toujours beaucoup de code hérité et, sur les appareils mobiles, il s'agit d'une norme. Cela dit, je ne choisirais jamais Java pour un ordinateur de bureau ou une application Web. Il n'y a aucune raison, sauf pour les entreprises (la plupart des responsables acquiescent si vous dites "Java" et c'est, je suppose, la raison pour laquelle c'est une norme sur les appareils mobiles).

Emiliano
la source
Est-ce que quelqu'un se souvient quand quelqu'un du SUN a dit que "Java n'a pas besoin" d'énums? C # / VB.NET a des énumérations, et où plus tard ajouté à Java
umlcat
1
il est largement utilisé pour les applications à grande échelle, bien que les "codeurs", les "scripteurs" et les "ninjas ROR" ne l'aiment pas, mais que c'est un vrai langage de programmation et qu'il est utilisé pour créer des applications qui font bien plus que CRUD Si les applications sont intensives sur le côté serveur d'une application, Java est généralement le choix le plus attrayant avant de devoir utiliser C ++ ou un autre langage de niveau inférieur
programmx10
3

IMHO, Java va rester très pertinent et grandir, même si sa construction et ses pouvoirs n’évoluent pas vraiment.

Voici mon raisonnement: - Il y a beaucoup de code, et la maintenance nécessite plus de personnes que l'écriture d'un nouveau code.

  • Le camp "Les langues de la VM sont trop lentes" est en train de perdre lentement (d'autant plus que Java l'a transformé avec succès en algo trading)

  • Les grandes entreprises l'utilisent toujours dans tous les secteurs, y compris Oracle.

  • La plate-forme Android grandit plus vite que iOS, sans autre concurrent, ce qui amène plus de gens à la langue.

  • Il est plus simple à utiliser que les langages fonctionnels. Il est facile pour les puristes et les universitaires en matière linguistique d’apprécier les langages fonctionnels et leurs capacités, mais la plupart des débutants sans diplômes de CS n’apprécient pas pleinement la puissance du Lambda. Donc, je ne pense pas que ces langues décolleraient.

  • Il est entièrement gratuit (contrairement à .NET qui est toujours plus proche de l’écosystème Windows malgré les alternatives).

Uri
la source
2

Java ne perdra pas complètement sa pertinence pendant encore de nombreuses années, mais il est certainement en déclin. Si des développements récents l’affectent ou si Oracle peut changer, cela reste à voir. Mais je pense qu’un jour, je serais peut-être comme COBOL, pas de nouveaux projets, mais je ne mourrai jamais tout à fait non plus.

indyK1ng
la source
2

COBOL, Fortran et C sont toujours pertinents. Quelle est la probabilité que Java disparaisse dans cinq ans? On peut penser qu'il n'y aura pas beaucoup de nouveaux développements Java dans cinq ans, mais je parierais aussi, car beaucoup de personnes utilisent Java et les magasins tardent plutôt à changer de langue.

David Thornley
la source
1

Je suppose que toutes les langues passent finalement par une phase où les experts diront "[Language] est le COBOL de la [insérer la décennie]]".

Java est devenu un outil standard, exclusivement ou l’un des principaux outils, dans de nombreux domaines du développement logiciel. Sa VM est populaire en tant que plate-forme sur laquelle construire de nouveaux langages. Cela va durer bien trop longtemps, juste à cause de son inertie massive, alors même que de nouvelles et meilleures langues deviennent populaires.

DarenW
la source
Mais, Java est devenu le COBOL, le mainframe, le serveur parlant
Umlcat
1

Certaines tendances dans le monde Java - en particulier l'adoption absolument brillante de JRuby and Rails ou de Groovy and Grails - indiquent que Java a encore beaucoup de vie. Ensuite, il y a la situation Android, qui est également en faveur de Java. Récemment, comme Snow Leopard sur Mac, certaines modifications - prenant en charge Midi sans pilotes externes - font que de plus en plus de possibilités se présentent sur le bureau. Et les applications Swing ont finalement l'air natives à 99% (ou du moins, il y en a beaucoup qui ne le croient pas: il y a 10 ans, il n'y en avait pas).

Dans les années 90, Java a vécu un moment extraordinaire, où il semblait que ce soit la solution à tout. Maintenant, il est clair que rien n’est la solution à tout. .Net donne des coups de pied au cul, et Ruby, et Python, et PHP (avec des solutions de SG stupides et des cadres entiers auxquels les gens se marient pour la vie!), Et Java (avec Groovy JRuby JPython, etc.), et bien plus encore. La réponse est:

S'attendre à un univers pluraliste

Java continuera-t-il à jouer un rôle majeur dans cet univers? Si vous parlez de "langages exécutés sur la machine virtuelle", la réponse est très claire. Si la réponse est uniquement Java (langage, machine virtuelle, etc.), la réponse est "peut-être pas si important". Mais allez, même Cobol est toujours là.

Dan Rosenstark
la source
1

Je pense que les universitaires ont toujours besoin de la valeur de l'open source dans JAVA. Il existe de nombreuses bibliothèques puissantes (axées sur des objectifs académiques) développées sur JAVA.

Je conviens que JAVA restera pertinent, mais pour un segment plus petit.

VinkyH
la source
1

Google écrit beaucoup en Java et Google est la plus grande entreprise du Web. Je pense que le Web est l'avenir - les applications Web, l'informatique en nuage - et je pense donc que Java est toujours d'actualité.

Et il y a Android, qui est l'avenir des téléphones intelligents à mon avis. Et certaines personnes disent que les téléphones intelligents représentent l'avenir de l'ordinateur - ce que je ne pense pas :) - mais que Java aurait également un grand avenir. Alors vas-y Java: D

SCBoy
la source
J'ajouterai que deuxièmement, Google pousse une grande partie de ses outils et bibliothèques internes (GWT, Guava, etc.) vers la communauté. Son impact externe dépasse donc le nombre d'ingénieurs qui l'utilisent.
Uri
0

Si cela est lié à un secteur (banque, plates-formes mobiles, etc.), cela revient à demander "Internet Explorer sera-t-il toujours d'actualité dans 5 ans ..." il y a 5 ans? Aujourd'hui, de nombreuses entreprises ont des sites Web internes spécifiques à IE qui ne peuvent être réécrites à partir de zéro. Donc, ce n'est pas "pertinent" mais "inévitable".

Pour en venir à votre question - non, ce n'est pas pertinent en tant que moteur de l'innovation; mais oui, c'est pertinent, car de nombreux secteurs exigent que les applications Java soient maintenues pendant de nombreuses années.

lorenzog
la source
0

Voici un article de ReadWriteEnterprise sur le déclin de Java:

http://www.readwriteweb.com/enterprise/2011/02/javas-not-dying-its-mutating.php

Ce dont nous sommes témoins n’est pas la mort de Java, mais sa transformation. De plate-forme à usage général qui dominait l’entreprise, c’est le courage de nombreuses technologies disparates pour diverses applications spéciales.

Il explique également comment des outils spécifiques offrent des alternatives à la technologie Java, sans toutefois les remplacer:

Bien que les bases de données NoSQL offrent une alternative aux bases de données relationnelles, cela ne signifie pas qu'elles disparaîtront. De même, Node.js fournit une alternative spécialisée à Apache, mais ne tue pas Apache.

Britt Wescott
la source
Un article du même site sur les tendances de l'emploi montre que Java contient toujours plus d'offres d'emploi que n'importe quel autre langage: readwriteweb.com/enterprise/2011/05/…
Britt Wescott