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

Débats sur le développement - Le Best Of Discussion :

Java est-il un langage de programmation mourant ?


Sujet :

Débats sur le développement - Le Best Of

  1. #21
    Membre actif Avatar de austin P.
    Inscrit en
    Juin 2004
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Juin 2004
    Messages : 182
    Points : 239
    Points
    239
    Par défaut
    J'ai conscience du classement TIOBE, java est toujours en bonne possession, mais je trouve JAVA réellement trop lourd ( je ne suis pas développeur ), mais dans toutes les boites ou j'ai travailler quelle application faut redémarrer sans cesse ( TOMCAT ), de plus java est pas mal critiqué au niveau sécurité,
    Si le tomcat doit être redémarré toutes les 5 minutes c'est que l'appli est codé avec les pieds (ça dépend pas du langage mais du développeur). Mes appli tournent depuis plusieurs années et le tomcat on le redémarre que lorsqu'on déploie (1 à 2 fois par an pas plus).
    En essayant continuellement on finit par réussir. Donc : plus ça rate, plus on a de chance que ça marche. (Jacques Rouxel : "Les shadoks")

  2. #22
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 066
    Points : 2 569
    Points
    2 569
    Par défaut
    Pour l'instant trop de monde utilise Java, pour qu'il disparaisse.
    Mais c'est vrai, que Java c'est lourd.
    On peut lui préférer autre chose.

    Dans le cas du dernier projet auquel j'ai participé, on devait faire du J2E et au final on a fait du PHP Symfony.

    Le plus gros danger pour Java, c'est Oracle.
    Je m'attends toujours à une annonce fracassante, qui va modifier la licence
    Consultez mes articles sur l'accessibilité numérique :

    Comment rendre son application SWING accessible aux non voyants
    Créer des applications web accessibles à tous

    YES WE CAN BLANCHE !!!

    Rappelez-vous que Google est le plus grand aveugle d'Internet...
    Plus c'est accessible pour nous, plus c'est accessible pour lui,
    et meilleur sera votre score de référencement !

  3. #23
    Membre éprouvé Avatar de Grom61736
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 169
    Points : 1 144
    Points
    1 144
    Par défaut
    Citation Envoyé par Spleeen Voir le message
    Pour le même algorithme général, C est quasi 10 fois plus rapide. 7 fois pour C++
    Je ne l'ai étrangement jamais contaté.
    Ensuite, la majorité des pertes de perf sont dues à des gens qui ne savent pas concevoir un algorithme. Après, c'est facile de critique le langage...

  4. #24
    Futur Membre du Club
    Inscrit en
    Juin 2008
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 145
    Points : 6
    Points
    6
    Par défaut
    Pardonner mon ignorance mais la signification de troll dans les forums ça veux dire quoi exactement ?

    Merci

  5. #25
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Je pense que Java a encore de beaux jours devant lui. Ce n'est pas mon langage de prédilection, mais il a de grandes qualités et est conçu sur des fondations saines. Je ne vois aucune indication de déclin pour l'instant en tous cas...


    Pour moi son principal défaut est qu'il évolue très lentement... le processus de mise au point des évolutions (JCP) est beaucoup trop lourd, ce qui fait que Java est à la traine sur certains points. Par exemple, C# s'est beaucoup inspiré de Java au départ, mais a maintenant des années d'avance en termes de fonctionnalités : les méthodes anonymes en C# existent depuis 2005, Linq depuis 2008 (les Streams, qui sont grosso modo l'équivalent Java de Linq, arrivent seulement dans Java 8), les blocs itérateurs ou les méthodes asynchrones ne sont même pas encore envisagés pour Java... Pourquoi ? Parce que les évolutions du langage C# sont pilotées entièrement par Microsoft, et c'est beaucoup plus facile de prendre des décisions quand il n'y a pas des milliers de personnes à mettre d'accord...

    Bref, Java aurait sûrement beaucoup à gagner à être pilotée par une entreprise plutôt que par la communauté. Je ne dis pas que la communauté n'a rien à apporter bien sûr, au contraire, mais pour prendre des décisions ce n'est vraiment pas très efficace... Bon, cela dit, vu la gestion désastreuse des produits Sun par Oracle, ce ne serait peut-être pas une si bonne idée dans ce cas précis

  6. #26
    Expert éminent sénior
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2012
    Messages
    3 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 3 020
    Points : 16 092
    Points
    16 092
    Par défaut
    Le titre de l'article dit une chose, le corps de l'article une autre. Bon passons sur ce détail.

    Chaque développeur à tendance à défendre sa propre paroisse. La mienne c'est java, je l'avoue sans détour.

    Et franchement, autant je peux me poser des questions sur l'avenir, autant je suis confiant que je pourrais encore vivre en faisant du java dans 10 ans et probablement dans 20 ans.

    Comme bien résumé par Kearz précédemment, ce qui fait selon moi la force de java, c'est le nombre impressionnant d'api de base dans java. Sans rien avoir à importer en plus de ce qui est nativement fourni, on a déjà un nombre assez conséquent -et confortable- d'outils à disposition.

    En important d'autre api/frameworks facilement trouvables et documentés, on peut carrément presque tout faire en java.

    Bref, je trouve beaucoup d'avantages à java que je ne trouve pas aux autres langages.

    C# c'est sympa, mais justement, le var nom = "rastapopulos"; c'est le genre de ligne de code qui m'agace. Parce que plus loin, quand je vais manipuler nom, je vais pas savoir de quel type de variable il s'agit.

    Or je pense qu'il faut un certain degré de formalisme pour que la majorité puisse écrire un code correct.

    C++ ou C# sont certainement très bien, pour peu que l'on ait l'esprit fait d'une certaine façon.

    Maintenant, à mon sens, Java est le langage qui offre à la fois le plus de liberté d'écriture tout en gardant une certaine rigueur dans le typage.

    Avec un minimum de règles, on a vite un code java très lisible.

    Je ne peux pas en dire autant avec C++ ou C#. Dans le premier cas, je trouve que la lecture du code est beaucoup trop pollué par des questions annexes comme la gestion de la mémoire et des références. Dans le deuxième cas, c'est le contraire, je ne sais pas dire quel est le type de telle variable à priori, ce qui est parfois pratique, mais tout le temps trompeur.

  7. #27
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par austin P. Voir le message

    Si le tomcat doit être redémarré toutes les 5 minutes c'est que l'appli est codé avec les pieds (ça dépend pas du langage mais du développeur).
    où que le Tomcat n'est pas bien réglé. En plus, il existe d'autres outils, Jboss, Glassfish.

    Pourquoi s'entêter à utiliser un serveur qui soit disant ne marche pas bien. Je ne comprends pas bien.

    La question est alors: comment un serveur aussi 'pourri" peut-être utilisé par autant de monde sans problème.

  8. #28
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    Citation Envoyé par CoderInTheDark Voir le message

    Dans le cas du dernier projet auquel j'ai participé, on devait faire du J2E et au final on a fait du PHP Symfony.
    Mon php commence a dater, mais j'ai pas souvenir que l'on puisse faire des applications distribuées en php.

  9. #29
    Membre actif Avatar de austin P.
    Inscrit en
    Juin 2004
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Juin 2004
    Messages : 182
    Points : 239
    Points
    239
    Par défaut
    Citation Envoyé par CoderInTheDark Voir le message
    Dans le cas du dernier projet auquel j'ai participé, on devait faire du J2E et au final on a fait du PHP Symfony.
    Prend pas mal ce que je vais dire mais là on prend des ingés sans réelle expérience. Expert JEE ou expert PHP c'est pas la même chose on est soit l'un soit l'autre. C'est symptomatique de notre profession (et des SSII) de croire qu'un ingé en remplace un autre sans réelle différence de qualité.

    Combien de projets j'ai audité où le code était clairement écrit par des non javaïstes, où on récrit une DAO sql alors que des ORM existent, où la couche métier est perdu dans des controllers ou des JSP, etc, etc... ?

    A mettre des roues carrés à une voiture faut pas s'étonner que ça avance pas/
    En essayant continuellement on finit par réussir. Donc : plus ça rate, plus on a de chance que ça marche. (Jacques Rouxel : "Les shadoks")

  10. #30
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    Citation Envoyé par hunyka Voir le message
    Pour répondre à la deuxième question :

    JAVA est encre très utilisée et le sera encore uniquement, car d'énormes applications ont étaient développer avec ce langage et les grandes entreprises et les SSII n'ont pas pour priorité de tout recommencer avec un autre langage alors que le progiciel est opérationnel. Le java c'est imposé énormément dans les entreprises et des sommes considérales a été investi, je pense donc qu'il est question d'argent ( économies ) qui fait que les entreprises de souhaite ne pas changer de langage.
    Les nouvelles idées, comme Hadoop, se développent toujours et encore en Java.

  11. #31
    Membre régulier
    Profil pro
    Spleen
    Inscrit en
    Mai 2013
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Spleen

    Informations forums :
    Inscription : Mai 2013
    Messages : 78
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par Grom61736 Voir le message
    Je ne l'ai étrangement jamais contaté.
    Ensuite, la majorité des pertes de perf sont dues à des gens qui ne savent pas concevoir un algorithme. Après, c'est facile de critique le langage...
    C'est bien ce que je disais, les développeurs Java (pour les étudiants n'ayant jamais fait d'assembleur ni de C, ce qui est pour moi inconcevable à titre personnel) se foutent complètement des perfs. Le tout c'est qu'ils soient pas hypocrite, qu'ils se l'avouent.

    Enfin, un test simple, fait une multiplication de deux matrices. Avec un bête algo. Prends le meilleur pour chaque langage, en gardant la même complexité Oméga.
    Tu n'as jamais lancé de profiler ? Fait un clock() pour voir ? Je sais pas c'est la base normalement...
    Et non critiquer n'est pas simple quand c'est argumenté.

  12. #32
    Membre expert

    Développeur NTIC
    Inscrit en
    Janvier 2011
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Développeur NTIC
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 670
    Points : 3 942
    Points
    3 942
    Par défaut
    Citation Envoyé par Kearz Voir le message
    Si Apple refuse java sur App Store c'est au nom de son système fermé. Afin d'avoir des applications rien que pour eux. C'est une question économique et non une question de langage.

    Remplacer JAVA par Python? J'y crois pas.

    Edit:
    Ah et remplacer JAVA par JS, j'en parle même pas. C'est comme remplacer une fourchette par des baguettes, ok pour le riz ou les sushi mais pour les lasagnes ça va être plus dur.
    On peut aussi utiliser un bazooka pour tuer une mouche. Bon ça fout un peu le bordel comme la permissivité du js par contre.
    L'homme est un fou pour l'homme. Toi qui viens de me mettre un aie au moins le courage d'expliquer pourquoi tu n'es pas d'accord.

  13. #33
    Membre éprouvé
    Profil pro
    Développeur .NET
    Inscrit en
    Février 2005
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 363
    Points : 1 036
    Points
    1 036
    Par défaut
    Citation Envoyé par Carhiboux Voir le message
    ...

    C# c'est sympa, mais justement, le var nom = "rastapopulos"; c'est le genre de ligne de code qui m'agace. Parce que plus loin, quand je vais manipuler nom, je vais pas savoir de quel type de variable il s'agit.
    ...
    Pourrais-tu s'il te plait, nous montrer un mauvais exemple de code Java comme tu le fait ici pour c# ?

    Oui, je suis dev c# et je n'utilise jamais var dans des déclaratif (même si resharper le veux)

    C'est pareil que le java, typage fort. Quoi que depuis la 4.0 on a le déclaratif Dynamic (http://msdn.microsoft.com/fr-fr/magazine/ee336309.aspx)

    Mais soit, Java a la lourdeur d'un mammouth. Quant aux api externes en veux-tu en voila, je pense que ça tue le langage. (me souvient lorsque j'ai commencé à me documenter, le nombre de liens sur des api externe à java core retournés par google)

    En 2009, j'ai dit à ma femme que je voulais apprendre le java puisqu'elle est dev java. Elle m'a dirigé vers le c# car plus facile. Elle même c'est mis au c# debut 2010 et depuis n'a que louange vers ce langage.

    Enfin, perso oui, java vas continuer à exister, mais comme dit plus haut, si on veux un java à la pointe, il faut lui adosser des api externes puisque le"core" n'évolue pas vite"

    C'est à mon sens ce qui tuera java. Pourtant, il existe de très bon produit comme pour ne citer qu'eux, jira, confluance, stash, youtrack, alfresco, ect....

    Et il a l'avantage de fonctionne sur toute les plateforme pour ce qui est des webapp. Ce que n'a pas le c#.

  14. #34
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2005
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ain (Rhône Alpes)

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 215
    Points : 471
    Points
    471
    Par défaut
    Citation Envoyé par GPPro Voir le message
    On commence les posts à troll dès le lundi maintenant ???
    Oh zut... Je me croyais déjà vendredi
    Citation Envoyé par hunyka Voir le message
    Pardonner mon ignorance mais la signification de troll dans les forums ça veux dire quoi exactement ?

    Merci
    http://lmgtfy.com/?q=troll

    Pour répondre au sujet initial, j'ai du mal à voir en quoi Java est mourant. Comme CoderInTheDark, ce que je crains, c'est Oracle qui prenne l'idée de changer la licence (ou une autre lubie du genre...)
    « Pourquoi faire simple quand on peut faire compliqué ? » (Deuxième principe fondamental de la logique Shadok)

  15. #35
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 380
    Points : 314
    Points
    314
    Par défaut
    Bonjour,

    Java de manière globale n'est pas spécialement lent si on code correctement.

    Tomcat n'est pas un bon serveur d'appli effectivement, il est lent à démarrer, il est parfois instable (ça dépend évidemment des applis qui sont développées dessus !).
    Testez jboss eap 6.0 ou 6.1 par exemple. Vous aurez un vrai serveur d'appli professionnel. Il y a glassfish également.

    Si on parle de programmes tournant en standalone n'utilisez pas java, ce n'est pas vraiment fait pour ça. Swing en particulier est obsolète. Java c'est fait pour faire de l'appli web côté serveur, éclatez vous avec des jsf2, avec du JPA bien ficelé (attention si c'est pas optimisé, ça peut être extrêmement lent)... le tout est de bien travailler son code, ses requêtes...

    La verbosité, parlons en. En effet je préfère des mots assez explicite que des sigles qui ne veulent rien dire, et ça je n'y toucherait pas.
    Par contre tout ces getters/setters sont bien lourds par exemple, et il y a de nombreuses choses qui pourraient être empruntées à python, scala, ... qui permettraient d'améliorer le langage.

    Certaines choses s'améliorent au fil du temps et de nombreux efforts sont faits, le langage se modernise, je ne pense pas qu'il soit au déclin, par contre peut-être danns le creux de la vague.


    Va-t-il être supplanté ? Pas par python ni javascript qui n'ont pas du tout les mêmes ambitions, qui sont de bons langages mais qui n'ont pas les mêmes domaines d'application (même si il y a django ou d'autres tentatives plus ou moins réussies).

    Scala est à mon avis un langage beaucoup trop complexe à utiliser à fond pour devenir un grand standard _ même si je trouve ce langage génial.

    C++ et C ne sont pas non plus sur les mêmes créneaux.

    Mais surveillons ce malicieux C#, qui sait s'adapter plus vite aux évolutions du temps (il est aussi plus jeune). Je pense qu'ils se valent (sauf pour la portabilité) mais que Java a encore son mot à dire.

  16. #36
    Membre éprouvé Avatar de Grom61736
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 169
    Points : 1 144
    Points
    1 144
    Par défaut
    Citation Envoyé par Spleeen Voir le message
    Enfin, un test simple, fait une multiplication de deux matrices. Avec un bête algo. Prends le meilleur pour chaque langage, en gardant la même complexité Oméga.
    Tu n'as jamais lancé de profiler ? Fait un clock() pour voir ? Je sais pas c'est la base normalement...
    Et non critiquer n'est pas simple quand c'est argumenté.

    Okay, tu as gagné, le C/C++ est plus rapide. Well done.
    Sauf que ... c'est un test simple, même pas besoin de pointeur... Et c'est moi qui suis hypocrite ?

    Prends une bonne grosse application programmée par des dizaines de personnes voir plus. Bizarrement, l'avantage de la gestion de la mémoire se transforme en désavantage avec une gestion de la mémoire catastrophique car faite à l'arrache.

    Alors oui, on a le "ah mais non, moi monsieur je programme bien"... Toujours est-il que ce n'est pas le cas de tout le monde.

    Il est clair que si tu veux faire une application où tu vas aller dans les moindre recoin pour grapiller des ms et de la mémoire, vaut mieux pas être dans un langage haut niveau maintenant, pour l'application en entreprise (ce qui permet à un langage de vivre) avec plein de gens pas aussi doué que toi, oui, le GC est plus doué que la moyenne...

  17. #37
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    Citation Envoyé par Spleeen Voir le message
    Jamais, dans aucun de mes programmes C/ASM/Python/PHP/ADA/etc je n'ai eu des lignes aussi longues qu'en Java xD
    Alors si c'est pénalisant des noms trop long, même si ce n'est pas LA chose à corriger au plus vite. (cf. les exemples sur http://cl.ly/RvaL)
    Bizarre. Moi, mes lignes, elles font maximum 120 caractères, ce qui est la bonne pratique généralement reconnue.
    Citation Envoyé par Spleeen Voir le message
    Si tu pars sur un postulat idiot, oui tu trouve un résultat idiot. Trouvaille ?
    J'ai étudié et travaille depuis des années en Java. C'est une horreur, disons le d'emblée. Beaucoup (trop de failles de sécu), une JVM très très très gourmande en RAM.
    N'importe quoi. Tu ne libères pas bien tes ressources.
    Citation Envoyé par Spleeen Voir le message
    À titre perso, j'utilise de plus en plus C#, pourtant on peut vraiment pas m'accuser d'être pro-Microsoft, n'utilisant quasiment aucun de leurs outils.
    Mais C# réussi quasiment partout ou Java pêche.
    Quelques trucs comme ça :
    - Avouons-le, l'API Java a été fait par des théoriciens des cordes qui se touchent devant leurs hiérarchies (des profs aussi parfois) mais n'ont pas compris qu'il était PARFOIS utile de créer, pour Swing notamment, des classes concrètes. Pour gérer des trucs dépassés (second degré) comme l'affichage d'une image, la lecture d'une musique ou des graphiques...
    À coté Qt, c'est 3 lignes pour une classe de 100 lignes en Java avec un héritage aux interfaces Java
    Qt ? Le jour où tu feras une application serveur avec, tu me le dis...
    Citation Envoyé par Spleeen Voir le message
    C# lui a déjà tout dans le ventre, comme Qt.
    - Java est naze niveau perf. Clairement tu dév avec, tu te fous des perfs.
    Pour le même algorithme général, C est quasi 10 fois plus rapide. 7 fois pour C++. C# peut générer un vrai binaire, en perdant le multiplateforme. Mais Java n'est pas multiplateforme dans la pratique, donc bon. Qui n'a jamais modifier son code pour l'adapter à Linux, Windows ou Mac ? Tiens centre une fenêtre à l'écran alors !
    Présent ! Après 12 ans de Java, je n'ai pas eu une seule fois besoin de changer mon code pour l'adapter au système sous-jacent.
    Citation Envoyé par Spleeen Voir le message
    - Des types primitifs peuvent servir, désolé.
    Et donc ?
    Citation Envoyé par Spleeen Voir le message
    - Des pointeurs j'en veux quand même, na !
    Tu manipules des pointeurs en .Net ? Explique un peu, pour voir...
    Citation Envoyé par Spleeen Voir le message
    - Pas de surcharges d'opérateurs... non mais allô quoi !
    La surcharge d'opérateur est un gadget, au mieux du sucre syntaxique, au pire une source de bugs compliqués à comprendre
    Citation Envoyé par Spleeen Voir le message
    - Pas de raccourcis pour les TRÈS laborieux getters/setters ! Ni dans les param du constructeurs. Pas de destructeurs ! (faisons confiance au GC, hein )
    Et ça marche ! Quand on sait s'en servir...
    Citation Envoyé par Spleeen Voir le message
    T'en de choses en tête... vous pourrez trouver aussi une comparaison ici (http://cl.ly/RvaL). Peu de choses finalement que Java fait et que C# ne fait pas. Puis Java, ok sur Android... mais sous iOS et WP...

    Par contre, Java permet de créer un code rapidos, le traitement des chaines est un régal, ET... C# n'est encore pas beaucoup appris (mais ça vient dans les écoles . Le jour où, Java ne fera pas pleurer dans les chaumières...

  18. #38
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par Carhiboux Voir le message
    C# c'est sympa, mais justement, le var nom = "rastapopulos"; c'est le genre de ligne de code qui m'agace. Parce que plus loin, quand je vais manipuler nom, je vais pas savoir de quel type de variable il s'agit.
    Bah je vois pas où est le problème... Pour voir quel est le type de la variable, tu as 2 possibilités :
    - regarder sa déclaration : je pense qu'il est assez clair pour n'importe qui que le type est String, d'après la valeur d'initialisation
    - utiliser les fonctions de l'IDE (par exemple regarder le tooltip sur la variable, qui indique son type)
    Je ne vois pas en quoi le fait de préciser le type explicitement aurait rendu les choses plus claires...

    Exemple encore plus flagrant : trouves-tu vraiment que ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var x = new ClasseAvecUnNomSuperLongQuiEstChiantALireEtAEcrire ();
    est moins clair que celui là ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ClasseAvecUnNomSuperLongQuiEstChiantALireEtAEcrire x = new ClasseAvecUnNomSuperLongQuiEstChiantALireEtAEcrire ();
    Pour moi le choix est vite fait, d'autant plus que j'ai horreur de me répéter...

    De toutes façons, personne ne t'oblige à utiliser le typage implicite ; tu peux très bien indiquer le type explicitement si tu préfères, donc ce n'est pas vraiment un argument valable pour ou contre le langage...

    Citation Envoyé par xarkam Voir le message
    Oui, je suis dev c# et je n'utilise jamais var dans des déclaratif (même si resharper le veux)
    Resharper ne "veut" rien... par défaut il te suggère de mettre var là où c'est possible, mais si ça ne te plait pas tu peux très bien désactiver cette suggestion. Resharper est un outil très puissant, mais il faut le configurer pour qu'il soit adapté à ton coding style, sinon il va tout le temps te mettre des warnings qui serviront à rien parce que tu vas les ignorer...

  19. #39
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    Citation Envoyé par Spleeen Voir le message
    C'est bien ce que je disais, les développeurs Java (pour les étudiants n'ayant jamais fait d'assembleur ni de C, ce qui est pour moi inconcevable à titre personnel) se foutent complètement des perfs. Le tout c'est qu'ils soient pas hypocrite, qu'ils se l'avouent.

    Enfin, un test simple, fait une multiplication de deux matrices. Avec un bête algo. Prends le meilleur pour chaque langage, en gardant la même complexité Oméga.
    Tu n'as jamais lancé de profiler ? Fait un clock() pour voir ? Je sais pas c'est la base normalement...
    Et non critiquer n'est pas simple quand c'est argumenté.
    Il y a des benchmarks bien plus complets. Et ils placent généralement Java dans les langages les plus rapides. Exemple :

    http://attractivechaos.github.io/plb/

  20. #40
    Membre du Club
    Inscrit en
    Novembre 2012
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2012
    Messages : 23
    Points : 43
    Points
    43
    Par défaut
    @Hunyka :
    L'argent c'est facile comme explication : ça implique tout et tout implique l'argent, ou presque.

    Apple aurait interdit Java pour les apps, il y a une raison très simple : l'enfermement dans l'écosystème Apple et la concurrence. Si tu peux développer une app iOS en Java, sachant que c'est déjà le langage natif d'Android, tu vas pas t'embêter avec l'Objective-C.

    "Java c'est lourd" => la plupart du temps c'est simplement mal codé.

    Quant à dire que Java est déjà mourant, je voudrais bien des preuves. Avec Java je peux tout faire ou presque, même une appli iOS en bidouillant.

Discussions similaires

  1. Réponses: 20
    Dernier message: 17/11/2014, 19h33
  2. Java est-il un langage de programmation mourant ?
    Par Cedric Chevalier dans le forum Actualités
    Réponses: 168
    Dernier message: 18/10/2013, 13h08
  3. Créer appli web:Java est-il le langage idéal pour cette appli?
    Par Terminator dans le forum Général Java
    Réponses: 14
    Dernier message: 10/06/2011, 15h10
  4. [Archive] Quel est votre langage de programmation préféré ? (2004..2008)
    Par Idelways dans le forum Débats sur le développement - Le Best Of
    Réponses: 403
    Dernier message: 04/02/2009, 00h56
  5. Réponses: 2
    Dernier message: 15/07/2007, 21h03

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