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

Affichage des résultats du sondage: Pour quelles raisons principales le langage Java reste-t-il un parti intéressant pour le futur ?

Votants
88. Vous ne pouvez pas participer à ce sondage.
  • Il peut tout faire dans l'univers de l'informatique

    36 40,91%
  • Il est facile à étudier

    23 26,14%
  • Il jouit d'une grosse adoption en entreprise

    57 64,77%
  • Il dispose d'une grosse comunauté

    60 68,18%
  • Le langage est gratuit

    37 42,05%
  • C'est le cobol du 21e siècle

    23 26,14%
  • La JVM lui confère le statut de plateforme d'exécution

    25 28,41%
  • Il n'envie rien à C et C++ pour ce qui est de la rapidité

    22 25,00%
  • Il évolue rapidement

    15 17,05%
  • Il dispose d'une API standard riche

    53 60,23%
  • Autres (à préciser)

    5 5,68%
Sondage à choix multiple
Langages de programmation Discussion :

Vaudra-t-il encore la peine de consacrer du temps à l’étude du langage Java en 2020 ?


Sujet :

Langages de programmation

  1. #21
    Membre régulier
    Profil pro
    Retraité
    Inscrit en
    mars 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : mars 2010
    Messages : 31
    Points : 105
    Points
    105
    Par défaut Java, Cobol du XXIème siècle?
    Pour avoir bossé en centre informatique d'une l'administration centrale française, je peux vous dire que le COBOL est très bien adapté à ce qu'on lui fait faire: de la gestion en batch sur gros volume. Pour les formulaires, il vaut mieux passer par des langages plus modernes, mais il le fait aussi. Pas de possibilité de gestion de réseau ou autre chose de ce genre. Programmation impérative seulement, mais il est le plus efficace dans son domaine (il est compilé comme le C/C++ et n'a pas de limite de taille pour les nombres).

    Quand on est passé au java, ça nous a piqué les yeux. Le changement de tous les programmes se fit sur une décennie. Le gain fût en polyvalence et en maintenabilité: La définition d'une bibliothèque d'objets réutilisables permettait de gros gains en développement, une javadoc commune permettait de ne pas devoir lire des dizaines de gros fichiers COBOL commentés pour comprendre ce que fesaient les programmes. Quelque chose d'approchant existait déjà en COBOL, mais cela relevait du bidouillage et de la gestion de projet, pas de la structure et des outils du langage.
    D'un autre côté, on a perdu en maîtrise parce qu'on a dû incorporer des logiciels tiers dont certains ont révélé avoir des bugs ou des faiblesses à l'usage, mais on est passé du minitel à internet. Et côté gestion de projet, c'est devenu l'enfer avec des fichiers de configuration à n'en plus finir, à modifier à chaque changement d'une bibliothèque tierce, et les outils comme Struts, ant ou maven sont devenus affaires de spécialistes.

    Puis est venue la mode du PHP, et certains ont voulu développer l'emploi de ce langage. Pour des petits projets et de petites équipes, ça marche; mais les gros projets sont restés en java. Et cela va rester longtemps comme cela:
    1) parce que les administrations ont un volume très importants de programmes à maintenir, leurs évolutions se faisant au rythme des évolutions législatives et réglementaires (lois, normes internationales, etc)
    2) parce qu'il n'y a aucun langage qui permette de faire de tout plutôt bien comme le fait java et qui soit aussi largement utilisé, et parce que ça n'apporterait qu'un gain marginal compensé par le coût d'apprentissage ou de maintenance (nouveau langage et nouvel environnement = chaîne de développement et de maintenance différente)
    3) parce qu'il est libre de droit, bien documenté, gratuit et largement répandu.

  2. #22
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : novembre 2006
    Messages : 596
    Points : 3 200
    Points
    3 200
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par emilie77 Voir le message
    Avec QT, JavaFX est le seul a pouvoir faire des applis desktop cross-platform
    Ce n'est pas exact : il y en a d'autres. J'utilise par exemple Delphi qui permet de faire du cross plateforme natif desktop et mobile simplement et efficacement.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  3. #23
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2019
    Messages : 12
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par defZero Voir le message
    @wallas00 +1.

    Juste la partie :


    Pour le coup, si la programmation de microcontrôleur / IoT ce n'est pas bas niveau, qu'est ce qu'il vous faut ?
    Personnellement sur ce segments, j'utiliserais plutôt le C, C++, Pascal, voir du Rust si la cible est disponible.
    ---


    La plateforme Flutter est très bien pour faire de l'UI multi-plateformes, mais tous ce qui sera basé sur Dart ne pourra pas approcher les perf du C, C++, Rust, Go, ..etc.
    Le langage et de beaucoup plus haut niveau que Java, donc ça vous donne une idée.
    Par contre depuis que Google a inclut une FFI à la dartvm, effectivement, ça risque de faire mal à JNI/Python CFFI/Node N-API et autres qui sont qu'en même bien plus complexe (luajit ffi mène toujours la danse cependant).
    Alors, "mon cerveau" fait la distinction entre les prérequis en terme de programmation pour l'IoT et tout ce qui est système/bas niveau.
    Durant les projets IoT auxquels j'ai participé, nous ne programmions pas exactement le firmware du matériel, mais plutôt l'application qui gère ses interactions avec le système dans lequel il va s'intégrer. Cela est faisable avec du C/C++ | JAVA | Python | JS.
    Cependant, je comprends que dans certains projets, les activités de programmation systèmes sont intriquées avec la création de l'application qui gère les user cases.


    Pour les amoureux de la performance, je me permet de rappeler que les applications sous Electron ne bénéficient pas encore des optimisations qu'apporteront l'utilisation du wasm.
    Walmart a passé tout son back sous NodeJS.
    Profiter des API de GGS/Firestore avec JS/TS est simplement cheaté en terme de time to market.
    Pareil avec .NET et AZURE.
    Le SDK AWS JAVA doit probablement être très bien, mais celui pour python est juste trop confortable à utiliser(on va pas ce le cacher).

    L'industrie poursuivra les migrations de ses applications Java 7 -> 8 -> 11 -> 13 (+ migration des serveurs applicatifs.); cependant je ne vois pas pourquoi les nouveaux projets partiront sur ces technos quand tu as les écosystème de Go, JS/TS, .NET.

    J'ai regardé
    , mais je ne suis toujours pas convaincu que cela suffira.

    L'écosystème JAVA est selon moi sur une courbe qui le fera prendre un statut similaire(cousin) à celui de l'écosystème PHP actuellement, c'est-à-dire: solide communauté, produit ayant fait ses preuves quoique les détracteurs disent, une grande partie des apps business tournent dessus, mais de plus en plus niché.

  4. #24
    Membre expérimenté
    Homme Profil pro
    Ingénieur en génie logiciel
    Inscrit en
    juin 2012
    Messages
    580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur en génie logiciel
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : juin 2012
    Messages : 580
    Points : 1 457
    Points
    1 457
    Par défaut
    Citation Envoyé par wallas00 Voir le message
    Alors, "mon cerveau" fait la distinction entre les prérequis en terme de programmation pour l'IoT et tout ce qui est système/bas niveau.
    Durant les projets IoT auxquels j'ai participé, nous ne programmions pas exactement le firmware du matériel, mais plutôt l'application qui gère ses interactions avec le système dans lequel il va s'intégrer. Cela est faisable avec du C/C++ | JAVA | Python | JS.
    Cependant, je comprends que dans certains projets, les activités de programmation systèmes sont intriquées avec la création de l'application qui gère les user cases.


    Pour les amoureux de la performance, je me permet de rappeler que les applications sous Electron ne bénéficient pas encore des optimisations qu'apporteront l'utilisation du wasm.
    Walmart a passé tout son back sous NodeJS.

    il semble qu'il y est encore du java

    Citation Envoyé par wallas00 Voir le message
    Profiter des API de GGS/Firestore avec JS/TS est simplement cheaté en terme de time to market.
    Pareil avec .NET et AZURE.
    Le SDK AWS JAVA doit probablement être très bien, mais celui pour python est juste trop confortable à utiliser(on va pas ce le cacher).

    L'industrie poursuivra les migrations de ses applications Java 7 -> 8 -> 11 -> 13 (+ migration des serveurs applicatifs.); cependant je ne vois pas pourquoi les nouveaux projets partiront sur ces technos quand tu as les écosystème de Go, JS/TS, .NET.
    Go, une blague j'espère?

    les entreprises partent en autre sur du java étant l'ampleur de son écosystème encore inégalé sur les autres plateforme, quantité de ressource disponible, formation et documentation aisément accessible

    Citation Envoyé par wallas00 Voir le message
    J'ai regardé
    , mais je ne suis toujours pas convaincu que cela suffira.
    une présentation de Java EE 8... ça date...
    le marché a bougé sur spring depuis un moment, il reste encore des banques et assurance qui aiment bien ce qui est lourd


    Citation Envoyé par wallas00 Voir le message
    L'écosystème JAVA est selon moi sur une courbe qui le fera prendre un statut similaire(cousin) à celui de l'écosystème PHP actuellement, c'est-à-dire: solide communauté, produit ayant fait ses preuves quoique les détracteurs disent, une grande partie des apps business tournent dessus, mais de plus en plus niché.
    l'écosystème est plus que différent entre ces deux système, pas vraiment le même type d'application qui sont développé

  5. #25
    Membre expérimenté
    Homme Profil pro
    Ingénieur
    Inscrit en
    septembre 2002
    Messages
    2 119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : septembre 2002
    Messages : 2 119
    Points : 1 620
    Points
    1 620
    Par défaut
    Malheureusement JAVA est loin d'être à la hauteur pour le développement d'interfaces graphiques. Par exemple, il est loin derrière Angular ou autres langages.

    Du coup, on est obligé de connaitre plusieurs langages de programmation pour pouvoir réaliser une application complète.

    A+
    La connaissance ne sert que si elle est partagée.
    http://ms2i.net

  6. #26
    Membre à l'essai Avatar de vivid
    Profil pro
    Inscrit en
    février 2006
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 118
    Points : 18
    Points
    18
    Par défaut
    D'un point de vue intellectuel => Zéro pointé

    je cite "Il n'envie rien à C et C++ pour ce qui est de la rapidité" mais bien sur...

  7. #27
    Membre averti
    Profil pro
    Inscrit en
    février 2008
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : février 2008
    Messages : 146
    Points : 355
    Points
    355
    Par défaut
    Citation Envoyé par Patrick Ruiz Voir le message
    1. Java peut tout faire
    Il y a tout dans le coffre de la R16 : des housses de cathédrale, des peignes à girafe, des machines à casser les œufs, et des perceuses à trous carré.

    Mise à par les OS et autres pilotes matériels, quelle langage ne sait pas tout faire ?

    Peut être SQL et XML. Sinon je ne vois pas.

    Citation Envoyé par Patrick Ruiz Voir le message
    2. Java est facile à étudier
    Oui en théorie. Parce que pour une personne qui n'a jamais fait d'objet .

    Pour le reste, c'est comme le c#, c'est un ersatz du C++.

    Citation Envoyé par Patrick Ruiz Voir le message
    3. Java est largement utilisé dans les entreprises
    Vrai. Avec le triptyque : Oracle / Java, SQL Server / VB.net & MySQL / PHP

    Beaucoup d'entreprises sont passés à java dans les années 2000/2010.

    Maintenant ce serait plutôt le .net, qui est jugé mature par les décideurs.

    Citation Envoyé par Patrick Ruiz Voir le message
    4. Java a une communauté forte
    C'est assez vrai.

    Citation Envoyé par Patrick Ruiz Voir le message
    5. Java est gratuit
    C'est peut être l'un de ses rare avantages. En attendant qu'Oracle n'y mette le holà

    Parce qu'il faut qu'en même que Larry change la cuvette des chiottes de son bateau de course

    Citation Envoyé par Patrick Ruiz Voir le message
    6. Java est le cobol du 21e siècle
    Cobol, c'est le langage qui a le plus de lignes de codes encore actives au monde. ça vous crache des factures pour des millions de clients sans tousser.

    C'est vieux (année 60), mais c'est simple, robuste et efficace. Je doute que Java soit dans ce cas.

    Citation Envoyé par Patrick Ruiz Voir le message
    7. Java est également une plateforme d’exécution avec la JVM
    Tout pareil que Miguel. Et le C est cool, car il utilise les instructions du processeur, un peu comme l'assembleur .

    Si d'autres langages utilisent le JVM pour s'exécuter, et bien tant mieux. Mais quand je vois du code Kotlin, je ne vois pas beaucoup de Java.

    Citation Envoyé par Patrick Ruiz Voir le message
    8. Java est très rapide
    ah, le fameux temps de chauffe des applications web. tout un poème. Le temps de prendre un café


    Citation Envoyé par Patrick Ruiz Voir le message
    9. Java évolue rapidement
    Je ne suis pas sure que pour un langage, les évolutions soient indispensables, quand on a atteint une certaine maturité.

    Et je prend pour exemple le C# et le C++.

    Citation Envoyé par Patrick Ruiz Voir le message
    10. Java dispose d'une API standard riche
    Et c'est un sacré bordel. On passe plus de temps à choisir les composants qu'a développer

  8. #28
    Membre régulier
    Femme Profil pro
    Autre
    Inscrit en
    janvier 2018
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Estonie

    Informations professionnelles :
    Activité : Autre
    Secteur : Communication - Médias

    Informations forums :
    Inscription : janvier 2018
    Messages : 18
    Points : 112
    Points
    112
    Par défaut
    Citation Envoyé par jpouly Voir le message
    Pour le reste, c'est comme le c#, c'est un ersatz du C++.
    Je n'ai jamais compris pourquoi tout le monde reprend ce prétendu lien entre C/C++ et C#... parce que ça commence par "C" ? Les accolades comme 90% des langages ?

    Pour ceux qui ont fait du Delphi, C# en est philosophiquement plus proche que du C++... peut-être parce que Anders Hejlsberg a été débauché de chez Borland par Microsoft pour mettre au point C# ?

  9. #29
    Expert éminent
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    juillet 2013
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : juillet 2013
    Messages : 4 074
    Points : 9 140
    Points
    9 140
    Par défaut
    Citation Envoyé par FrostWilson Voir le message
    Je n'ai jamais compris pourquoi tout le monde reprend ce prétendu lien entre C/C++ et C#... parce que ça commence par "C" ? Les accolades comme 90% des langages ?
    Parce que le C# permet de coder en C++ ... cela s'appelle du C++ managé ("managed" en anglais) parce que la mémoire passe par la CLI et tu n'as plus vraiment de notion de pointeur (avec une syntaxe ^)
    Ensuite je ne sais pas quelle norme du C++ est prise en compte C++03 ? C++11 ? C++14 ? ou plus récente ... et tous les autres chausse-trapes autre que la gestion de la mémoire.

    C'est comme l'Objective C (Objective C++) qui permet de mixer avec du code C (C++)
    Avec ton Delphi ce n'est pas possible ... tu es obligé de passer par du code compilé (fichier .dcu) pour faire le lien C/ C++ <-> Delphi

  10. #30
    Membre averti
    Profil pro
    DIRLO
    Inscrit en
    juillet 2009
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DIRLO

    Informations forums :
    Inscription : juillet 2009
    Messages : 179
    Points : 442
    Points
    442
    Par défaut
    c'est curieux ...

    j'ai l'impression qu'en remplaçant le mot JAVA par n'importe quel autre langage ( ou presque) le texte reste cohérent !


    je me trompe ?

  11. #31
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Inscrit en
    avril 2002
    Messages
    4 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations forums :
    Inscription : avril 2002
    Messages : 4 295
    Points : 12 912
    Points
    12 912
    Par défaut
    Citation Envoyé par jpouly Voir le message
    Oui en théorie. Parce que pour une personne qui n'a jamais fait d'objet .
    Pour le reste, c'est comme le c#, c'est un ersatz du C++.
    Ça a clairement des similitudes avec le C++ au niveau de la syntaxe de surface, mais le terme d'ersatz ne me parait absolument pas adapté. Java a fait des choix qui simplifient considérablement le langage.

    Citation Envoyé par jpouly Voir le message
    Je ne suis pas sure que pour un langage, les évolutions soient indispensables, quand on a atteint une certaine maturité.
    Et je prend pour exemple le C# et le C++.
    Très mauvais exemples : le C# et le C++ sont des langages qui évoluent beaucoup, au moins autant que Java. Si tu veux des exemples de langages qui évoluent peu, tu peux citer le C ou le Cobol.


    Citation Envoyé par jpouly Voir le message
    Et c'est un sacré bordel. On passe plus de temps à choisir les composants qu'a développer
    Au contraire, l'avantage d'une bibliothèque fournie, c'est qu'on passe globalement moins de temps a chercher ses composants. L'inconvénient c'est que les composants de la bibliothèque standard ne sont pas forcément les plus adaptés à toutes les situations.

    Citation Envoyé par foetus Voir le message
    Parce que le C# permet de coder en C++ ... cela s'appelle du C++ managé ("managed" en anglais) parce que la mémoire passe par la CLI et tu n'as plus vraiment de notion de pointeur (avec une syntaxe ^)
    Ensuite je ne sais pas quelle norme du C++ est prise en compte C++03 ? C++11 ? C++14 ? ou plus récente ... et tous les autres chausse-trapes autre que la gestion de la mémoire.
    Tu mélanges C# et .net. Le premier est un langage, donc par définition il ne permet pas de coder en C++. le .net est un framework basé sur un environnement d’exécution managé qui peux gérer plusieurs langages dont C++ et C#.

  12. #32
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    juillet 2002
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : juillet 2002
    Messages : 46
    Points : 58
    Points
    58
    Par défaut Java peut faire beaucoup dans tous les domaines
    Il est clair que Java ressemble beaucoup à C, C++ et c#
    Certes, sa position au sens des applications web diminue au profit de PHP. Côté interfaces graphiques (par exemple Swing) il est vrai que cela est intéressant mais un peu "lourd" à réaliser. Quoique des applications telles que ProrealTime (logiciel de bourse en Java) soient rapides et performants.

    Il n'en demeure pas moins que Java utilisé côté serveur dispose de forts avantages étant donné la richesse des fonctions dont il dispose.
    Cf le message de jpouly ci-dessus dans cette discussion.

    Me concernant, le plus intéressant me semble être la possibilité de traiter les données et de faire des interfaces "légères" avec d'autres langages côté client.
    Java peut faire des choses bien plus complexes que des procédures stockées etc. Les mêmes résultats de Java sont utilisables dans divers langages client, que ce soit Delphi, C++ ou Flex (dit maintenant Flashbuilder). Cela offre une très grande liberté pour ce qui est de changer le langage de l'interface "client léger" tout en gardant le même fonctionnement côté serveur avec la vitesse des liaisons permettant de ne pas avoir à mettre en place des systèmes de réplication dans des bases de données distribuées sur les clients.

    Voilà donc la raison pour laquelle j'apprécie de plus en plus Java appris sur le tard, j'en conviens..

    Vadim

  13. #33
    Nouveau membre du Club
    Profil pro
    Inscrit en
    janvier 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : janvier 2008
    Messages : 15
    Points : 26
    Points
    26
    Par défaut Flutter me semble avoir de bons atouts
    Je pratique Java depuis plus de 15 ans
    Je l'utilise encore pour le backend
    Mais flutter avec dart me semble être une bonne solution pour l'avenir.
    Je suis en train de créer plusieurs applications pour en tester les + et les moins après avoir testé Typescript et Angular.
    Je suis d'une vielle génération de développeur (j'ai commencé à développer en hexadécimal et en basic)
    L'assembleur a été un vrai soulagement
    Mais toujours intéressé par ce qui peut apporter de nouvelles solutions c'est comme celà que je suis arrivé au java après avoir fait du pascal et du Delphi.

  14. #34
    Nouveau membre du Club
    Profil pro
    Inscrit en
    janvier 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : janvier 2008
    Messages : 15
    Points : 26
    Points
    26
    Par défaut
    Citation Envoyé par banitz Voir le message
    Je pratique Java depuis plus de 15 ans
    Je l'utilise encore pour le backend
    Mais flutter avec dart me semble être une bonne solution pour l'avenir.
    Je suis en train de créer plusieurs applications pour en tester les + et les moins après avoir testé Typescript et Angular.
    Je suis d'une vielle génération de développeur (j'ai commencé à développer en hexadécimal et en basic)
    L'assembleur a été un vrai soulagement
    Mais toujours intéressé par ce qui peut apporter de nouvelles solutions c'est comme celà que je suis arrivé au java après avoir fait du pascal et du Delphi.
    Et pour le c/c++ essayez donc de faire une caméra web + reconnaissance faciale + serveur web + access point wifi pour 8 € caméra incluse avec autre chose. Comme ici par exemple https://robotzero.one/esp32-camera-module/

  15. #35
    Membre actif
    Homme Profil pro
    Consultant
    Inscrit en
    novembre 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : novembre 2013
    Messages : 22
    Points : 227
    Points
    227
    Par défaut
    Globalement d'accord avec l'article. Juste deux choses :

    - API du JDK intuitive ? Heu, faut pas déconner là, un des défauts majeurs de Java est qu'il est très académique et assez bas niveau finalement. Quand on fait du java, on utilise généralement quelques tonnes de librairies/frameworks tiers pour en faciliter l'utilisation et permettre une bonne productivité des développements (apache commons and co). Perso, je suis un vieux de la vieille, je connais bien les API de base, et je ne fais que peu de développement, donc ça ne me gêne pas outre mesure, mais allez justifier aux jeunots qu'il faut instancier 3 classes, implémenter deux interfaces, et faire de la composition pour réaliser une simple opération qui se fait en un appel de méthode (statique tant qu'à faire) dans la plupart des langages.

    - paradigme objet facile ? Heu... comment dire. Le paradigme de base est certes enfantin, mais une bonne appréhension de l'objet afin de produire des applications qui ne soient pas des usines à gaz sur-conçues, qui soient évolutives, performantes et maintenable, demande des années d'expérience. La POO requiert beaucoup d'expérience pour être mise en oeuvre efficacement dans des contextes réels (tiens au hasard, quand on utilise une base de données relationnelle, et arrêtez de penser que les ORM sont une solution magique...)

  16. #36
    Membre averti
    Profil pro
    Inscrit en
    février 2008
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : février 2008
    Messages : 146
    Points : 355
    Points
    355
    Par défaut
    Citation Envoyé par Uther Voir le message
    Très mauvais exemples : le C# et le C++ sont des langages qui évoluent beaucoup, au moins autant que Java. Si tu veux des exemples de langages qui évoluent peu, tu peux citer le C ou le Cobol.
    C'était plutôt des contres-exemples .

    Les dernières évolutions du c# ou du C++, de mon point de vue, dénature ces langages (ex : reference tyoe non nullable pour le C#, la gestion "automatique" de la mémoire en C++).

  17. #37
    Expert éminent
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    juillet 2013
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : juillet 2013
    Messages : 4 074
    Points : 9 140
    Points
    9 140
    Par défaut
    Citation Envoyé par jpouly Voir le message
    Les dernières évolutions [...] C++ [...] dénature ces langages [...] la gestion "automatique" de la mémoire en C++
    C'est le commentaire de celui qui ne connait pas les arcanes du C++ "le C++ se Javaifie et le Java se C++ifie"

    Mais en réalité quasiment tous les ajouts du C++ moderne sont là pour lever toutes les impossibilités de la méta-programmation (avec les templates) et de la simplifier.
    Lorsque tu vois des exemples en C++14 avec des lignes de 15 kilomètres (des templates dans des templates) réduit à presque rien en C++17 cela interpelle.
    Et toutes les autres ajouts sont :
    • soit là pour désambiguïser la norme C++03 et cela en devient lourd - par exemple maintenant on doit savoir si notre variable est copiable ou pas, déplaçable ou pas, ...
    • soit des échecs - la gestion de la fermeture dans les lambdas, la bibliothèque threads, list initialization, ...


    Mais on attend toujours "les vrais trucs" : les modules, les concepts, un vrai remplaçant aux macros, la reflection, ...
    Et je dois être stupide mais leur Unicode ne me semble pas terrible : encore de nouveaux types qui ne font rien et une palanqué de fonctions de conversions.

  18. #38
    Membre averti

    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    avril 2010
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2010
    Messages : 68
    Points : 388
    Points
    388
    Par défaut Je n'ai jamais vu l'indice TIOBE utilisé en entreprise
    l'indice TIOBE est fréquemment utilisé comme référence
    C'est n'importe quoi. Le seul endroit où l'on parle de cet indice, c'est sur developpez.com. Je n'ai personnellement jamais vu qu'il soit utilisé en entreprise (ou public).

  19. #39
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    juillet 2013
    Messages
    266
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juillet 2013
    Messages : 266
    Points : 430
    Points
    430
    Par défaut
    Citation Envoyé par Mister Nono Voir le message
    Malheureusement JAVA est loin d'être à la hauteur pour le développement d'interfaces graphiques. Par exemple, il est loin derrière Angular ou autres langages.

    Du coup, on est obligé de connaitre plusieurs langages de programmation pour pouvoir réaliser une application complète.

    A+
    Si par IHM tu entends web app, au final en front tu feras toujours plus ou moins du HTML/CSS, peu importe le langage back
    Et c'est une bonne chose (backend, frontend, services, et...)

  20. #40
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    juillet 2013
    Messages
    266
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juillet 2013
    Messages : 266
    Points : 430
    Points
    430
    Par défaut
    Citation Envoyé par Fleur en plastique Voir le message
    Non mais allô quoi, ils donnent eux-même les arguments pour se faire battre.
    Tout sauf tout ce pour qui les performances ou l'utilisation des ressources est critique. Des broutilles comme par exemple des noyaux d'OS, des bibliothèques systèmes, des jeux vidéos, des systèmes embarqués.
    Ça fait donc déjà BEAUCOUP, merci de le confirmer (même si ce n'était pas le but manifestement )


    Citation Envoyé par Fleur en plastique Voir le message
    Il y a plus facile et plus moderne aujourd'hui.
    Tu auras toujours toujours un langage "plus" quelque chose que n'importe lequel. Java est facile, il ne dit pas autre chose.

    Citation Envoyé par Fleur en plastique Voir le message
    Et la plupart s'en mordent les doigts.
    Si j'affirme "Et la plupart en sont très content", c'est aussi crédible que ton affirmation sans fondement.

    Citation Envoyé par Fleur en plastique Voir le message
    Et qui s'étiole chaque année.
    Comme tous "vieux" langage (et je ne suis même pas sûr que ce soit vrai concernant Java, tu as peut être des).

    Citation Envoyé par Fleur en plastique Voir le message
    Ah bon. Oracle et ses audits, Google et son procès contre Oracle, les versions payantes disponibles, tout ça c'est vrai que c'est gratuit. Au contraire je n'ai jamais eu autant l'impression que c'était payant. Il y a beaucoup de langages qui sont bien plus gratuits que Java, comme C, C++, Python, Perl, Lisp, Ocaml, PHP, JavaScript, Pascal et j'en passe, et des meilleurs.
    J'ai fais des dizaines de projets Java, certains en production depuis plusieurs années, je n'ai jamais déboursé 1 centime pour Java en lui même.

    Citation Envoyé par Fleur en plastique Voir le message
    C'est donc un langage instable, toute fonction est ajoutée à la hâte sur un pataquès de fonctions existantes, tout ce qui existe aujourd'hui pourra être supprimé demain. Sacré avantage en effet, bravo Java.
    C'est ta définition d'un langage qui évolue ?
    Connais tu réellement Java ?

    Citation Envoyé par Fleur en plastique Voir le message
    C'est vrai mais ce n'est pas le seul. PHP dispose également d'une bibliothèque riche, par exemple.
    Personne ne dit que c'est le seul...

    L'article ne dit pas que Java est le seule à savoir faire certaines choses, mais qu'il cumule un ensemble de qualités et qui en fait donc un langage de qualité d'avenir malgré tout.
    Tes propos trahissent une méconnaissance de Java, j'avoue ne pas trop comprendre l’intérêt de donner son avis sur un sujet qu'on ne maîtrise pas... Peut être un problème de génération, je dois être trop vieux

Discussions similaires

  1. Firefox OS: Mozilla n'est pas encore au bout de ses peines
    Par Siguillaume dans le forum Actualités
    Réponses: 10
    Dernier message: 29/05/2015, 13h32
  2. Réponses: 0
    Dernier message: 11/05/2010, 16h34
  3. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 14h43
  4. TEdit (encore)
    Par dj.motte dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/12/2002, 19h02
  5. TPalette (encore)
    Par Flipper dans le forum Langage
    Réponses: 3
    Dernier message: 28/11/2002, 23h45

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