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

Scala Java Discussion :

Scala dans le top 10 des technologies les plus prisées par les développeurs modernes


Sujet :

Scala Java

  1. #1
    Expert éminent sénior

    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2011
    Messages : 283
    Points : 18 071
    Points
    18 071
    Par défaut Scala dans le top 10 des technologies les plus prisées par les développeurs modernes
    Scala dans le top 10 des technologies les plus prisées par les développeurs modernes
    Selon l’étude, le langage serait la principale alternative à Java

    Typesafe, la société derrière le langage Scala, a de quoi être fier. En effet, son langage alternatif au langage Java a été sélectionné comme l’une des 10 technologies les plus prisées des développeurs modernes.

    Conduite par le laboratoire de recherche RebelLabs, l’étude a dévoilé un top 10 fait d’un savant mélange de langages, de technologies et d’outils où figurent dans l’ordre alphabétique: Confluence, Git, Gradle, Groovy, Intellij Idea, Jenkins, Jira, Mongodb, Scala et enfin le duo Tomcat + Tomee.

    L’étude avait pour objectif d’identifier les technologies aimées et adoptées par les geeks…et comprendre pourquoi elles ont été choisies.» Pour élaborer son classement, RebelLabs s’est basé sur plusieurs critères, telles que :
    • les statistiques émanant du marché : part en pourcentage, évolution, fragmentation de la technologie ;
    • le feedback des développeurs ;
    • le buzz entourant ces technologies : couverture médiatique, récurrence sur les réseaux sociaux, activité de la communauté ;
    • évidences anecdotiques.


    Le laboratoire de recherche mentionne entre autres que les technologies étudiées doivent atteindre une certaine maturité au sein de la communauté des développeurs, démontrer qu’elles répondent à certaines problématiques pas encore traitées ou encore offrir de meilleures performances que d’autres solutions avant d’être incorporées dans cette étude.

    Pour le créateur du langage, Martin Odersky : « Scala a beaucoup évolué depuis son éclosion en 2004 » et « sa base d'utilisateurs a atteint une taille inimaginable à l'époque. Il a été utilisé dans des secteurs allant des grandes entreprises et institutions financières aux startups. » ce qui explique l’émotion suscitée par cette annonce : « être reconnu par RebelLabs est un immense honneur et valide le travail que nous faisons pour créer un langage de programmation élégant et puissant. »

    Enfin, l’étude révèle que 47% des sondés placent Scala comme principale alternative à Java (devant le langage Groovy). Les points clés du succès de Scala résident dans l’outil sbt ainsi que dans le travail fourni par Typesafe pour la mise au point et le soutien de la communauté de l’écosystème Scala, y compris d’Akka et de Play.

    Source : Etude de RebelLabs

    Et vous ?

    Qu’en pensez-vous ?

  2. #2
    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
    Il faut bien dire que c'est un langage fantastique, réussissant une synthèse assez géniale entre programmation orientée objets et programmation fonctionnelle.

  3. #3
    Nouveau Candidat au Club

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    452
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Afghanistan

    Informations forums :
    Inscription : Juin 2003
    Messages : 452
    Points : 0
    Points
    0
    Billets dans le blog
    1
    Par défaut J'ai essayé .........
    Moi je suis pas convaincu , la syntaxe est pas intuitive on sais pas quand il faut mettre le type.
    en plus déclarer une variable par var i:Int je trouve ca lourd plus lourd qu'en java Integer i

  4. #4
    En attente de confirmation mail

    Profil pro
    Inscrit en
    Septembre 2013
    Messages
    639
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 639
    Points : 2 347
    Points
    2 347
    Par défaut
    Allons, super_navide, faire un petit effort pour comprendre scala, ça vaut le coup !

  5. #5
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Le top 10 est bidon, y'a des langages, des outils d'intégration continue, des systèmes de gestion de source, des outils de build. Un peu tout et n'importe quoi.

    Pour scala, j'ai pensé sérieusement à l'utiliser en production il y a 2-3 ans mais il y a quelques soucis qui m'en empêchent. Un des plus gros pour moi a été le temps de compilation que j'ai toujours vu comme un grand point fort chez java, pascal et autres, et qui là soudainement me rappelle du C++. On disait que ça allait s'améliorer, mais de l'aveu même de la core team, le compilateur Scala est très dur à modifier à un point où c'est limite gérable, donc ce sera probablement jamais rapide.
    L'autre gros problème, c'est la lisibilité. Oh pas forcément la lisibilité de votre code car si vous êtes bon et que vous restez raisonnable, vous pouvez vous retrouvez avec une lisibilité comparable à Java et un langage plus puissant. Le problème c'est que vous allez certainement bosser dans une équipe de niveau inégal et utiliser des librairies et du code faits par d'autres, et quand on voit ce que certains arrivent à inventer dans le genre ASCII art qui compile, ça fait peur.

    Peut être qu'un Scala 3 moins DSL friendly moins souple au niveau syntaxe sera le successeur de java que j'attends, mais scala 2.x non. Pour l'instant je suis plus intéressé par ceylon comme éventuel successeur à java à cause de l'emphase sur la lisibilité justement. Dans un projet de bonne taille, on passe dit-on 80% de notre temps de développeur à maintenir et lire du code fait par d'autres, donc pour moi c'est cette direction qui m'intéresse.

  6. #6
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 166
    Points
    4 166
    Par défaut
    Quels sont les avantages de Scala par rapport à Java 8 et l'arrivée des Lambdas ?

  7. #7
    Membre averti Avatar de M_Makia
    Homme Profil pro
    dev
    Inscrit en
    Février 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : dev
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 121
    Points : 338
    Points
    338
    Par défaut
    C'est bonne nouvelle , je pense également que scala est une très bonne alternative à Java.
    Je suis passé a Java depuis quelques mois et venant de l'environnement .Net C#, ça été une vrai souffrance de constaté que le langage Java était si pauvre par rapport C# , python ou Scala.
    Je me suis très rapidement intéressé à Scala offrant des fonctionnalités "modernes" du point de vue du langage.

    Scala est certainement mois facile à apprendre et peut paraitre moins lisible que le Java car il introduit des concepts et syntaxes auxquels les développeurs Java ne sont pas habitué.

    Si Java veut remonter le pente il doit faire vite ...

  8. #8
    Membre chevronné

    Homme Profil pro
    Mentaliste
    Inscrit en
    Mars 2008
    Messages
    872
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Mars 2008
    Messages : 872
    Points : 1 813
    Points
    1 813
    Par défaut
    Citation Envoyé par Arsene Newman Voir le message
    ... dans l’ordre alphabétique: Confluence, Git, Gradle, Groovy, Intellij Idea, Jenkins, Jira, Mongodb, Scala et enfin le duo Tomcat + Tomee...
    Quand j'ai lu Mongodb dans le top ten c'est forcément un sondage biaisé : Mongodb n'est utile et vraiment bien que dans certains cadres biens stricts, c'est loin d'être utile / utilisable partout. Donc sondage absolument pas objectif.
    .I..

  9. #9
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2013
    Messages
    1 053
    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 053
    Points : 2 557
    Points
    2 557
    Par défaut
    Perso je fais du Java depuis 2005.
    Avant je faisais du C++.
    Changer une nouvelle fois ne me fais pas peur.

    Surtout que je trouve la politique d'ORacle inquiétante.
    En plus j'ai le sentiment que les nouvelles version de Java comblent surtout le retard sur C#, et que ce dernier à l'initiative.
    Et je me renseigne au cas ou, mais le ciel ne va pas nous tomber sur la tête.
    Enfin pas tout de suite.
    Les entreprises ont trop d'applications écrites en Java.

    Je pense à notre urbaniste, qui nous prédit la fin du cobol, dans la boîte, depuis plusieurs années.
    Alors Java remplacé par Scala, je me marre un peu.
    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 !

  10. #10
    Membre régulier

    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations forums :
    Inscription : Juin 2011
    Messages : 81
    Points : 89
    Points
    89
    Billets dans le blog
    2
    Par défaut
    Justement, pourquoi chercher de nouveaux langages au détriments notamment du C# ?
    Question pour culture personnelle, non pour relancer un débat en sommeil.

  11. #11
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Je comprends pas trop ce que vient faire C# là dedans. Java et C# peuvent se ressembler mais ils ne sont absolument pas interchangeables, ils ont des écosystèmes tout à fait différents. On peut certainement argumenter que C# est un meilleur langage, après tout il a été conçu des années après et il a des cycles d'évolution plus courts. Ca n'en fait pas un remplaçant de java.

    A titre personnel, la question de fr1man m'intéresse beaucoup. Java 8 a apporté l'un ou l'autre des bénéfices les plus attendus du fonctionnel. Ok c'est pas pareil, les functional interfaces ne sont pas aussi poussées que les traits, on trouve sûrement plein de choses pas tout à fait à niveau. Cependant pour l'usage de tous les jours, les ajouts de java8 résolvent quand même certains des problèmes qui rendaient scala particulièrement séduisant.

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Au delà du fait qu'il y a tout et n'importe quoi mis au même niveau dans ce top 10, je n'ai rien contre le changement, mais comme d'autres, pourquoi Scala alors que Java 8 apporte bien assez de chose dans le domaine des fonctions.
    Pour ce qui est de la simplicité du langage scala, je m'excuse pour les adeptes, mais je trouve ça incompréhensible et lourd... certes, avec moins de caractères... mais je m'en fiche de ça.

    Ça ressemble plus à un phénomène de geek... si c'est pas nouveau et inconnu du grand public, c'est de la m....
    (et ne me faites pas dire que le langage Scala n'est pas bon, je ne vois juste pas ce que ça améliore par rapport à java)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Expert éminent
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2007
    Messages
    2 161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Août 2007
    Messages : 2 161
    Points : 7 952
    Points
    7 952
    Par défaut
    Comme souvent dit, on passe 80% de notre temps à lire et à maintenir/faire évoluer du code écrit par d'autres
    De ce fait, de mon point de vu, ce qui compte en premier lieu : c'est la clarté du code
    Et sur ce sujet, Scala n'est pas très lisible...

    Les perf sont presque secondaire (j'insiste sur le presque qui n'est pas à prendre au premier degrés)
    Les machines sont de plus en plus puissantes et il est souvent moins risqué et moins cher de changer la machine qu'optimiser le programme (avec les risques de régression et le coût du travail en France)

    Personnellement, je ne comprends pas cette "mode" du code non verbeux
    On n'est plus à limitation des 80 colonnes sur les écrans
    De même, économiser quelques Ko sur un programmes à l'économie de caractères à outrances me dépasse un peu
    Un équilibre est à trouver entre le trop verbeux inutile et l'abreviation à tout va illisible

    L'idée des langages de hauts niveaux est de se rapprocher le plus possible de la syntaxe du langage naturel
    Une bonne syntaxe doit permettre de lire un code en diagonal et d'en comprendre le fonctionnement

    Si un code est trop complexe à lire et à comprendre, c'est qu'il est mal codé

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2004
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Août 2004
    Messages : 45
    Points : 14
    Points
    14
    Par défaut
    Un collègue m'a envoyé un lien sur cette discussion, il était entrain de rigoler et ça m'a fait bien rire aussi.

    On utilise également scala sur un gros projet client-serveur.
    (La partie serveur est en scala, la partie client est en java).

    Il y a au sein de l'équipe un développeur assez moyen qui fait du scala, c'est une catastrophe, le code est illisible
    même pour un développeur expérimenté. (Je ne comprends pas cette volonté de raccourcir absolument le code
    alors qu'avec un ctrl+TAB on a la complétion automatique !)

    Le temps de compilation est également un problème important.

    Pour rigoler, j'ai présenté en réunion 5 lignes de code scala que j'ai trouvé sur le web... Les pros de scala
    ont mis 5 minutes à le comprendre en s'y mettant à plusieurs... Le même code en java est plus verbeux mais tout le monde l'a compris
    en 30s max.

    Perso, je ne mettrai pas scala sur mon CV.

  15. #15
    Membre du Club
    Inscrit en
    Août 2008
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 48
    Points : 64
    Points
    64
    Par défaut
    Je pense que vous vous trompez de raisonnement. C'est pas parce que scala permet d'écrire du code illisible qu'il faut le faire! En suivant quelques règles simples, on pond du code scala au moins aussi lisible que du java ou autre.
    En Java aussi on peut écrire du code illisible si on veut, comme n'importe quel langage, même pire que Scala. Sauf qu'en général on est assez intelligent pour ne pas le faire. En Scala c'est pareil, sauf pour certains fanboys Scala qui ne peuvent pas s'empêcher de se la péter en montrant du code Scala de moins de 10 caractères, qui certe fait le café, mais qui n'est compréhensible que par celui qui l'a écrite. A mon avis, ces gens là qui soient disant veulent promouvoir le Scala, font tout l'inverse. Il faut savoir rester humble en écrivant du code Scala, c'est comme ça qu'on pond un joli code.

  16. #16
    Expert éminent
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Points : 7 752
    Points
    7 752
    Par défaut
    Citation Envoyé par nonpoluant Voir le message
    Je pense que vous vous trompez de raisonnement. C'est pas parce que scala permet d'écrire du code illisible qu'il faut le faire! En suivant quelques règles simples, on pond du code scala au moins aussi lisible que du java ou autre.
    En Java aussi on peut écrire du code illisible si on veut, comme n'importe quel langage, même pire que Scala. Sauf qu'en général on est assez intelligent pour ne pas le faire. En Scala c'est pareil, sauf pour certains fanboys Scala qui ne peuvent pas s'empêcher de se la péter en montrant du code Scala de moins de 10 caractères, qui certe fait le café, mais qui n'est compréhensible que par celui qui l'a écrite. A mon avis, ces gens là qui soient disant veulent promouvoir le Scala, font tout l'inverse. Il faut savoir rester humble en écrivant du code Scala, c'est comme ça qu'on pond un joli code.
    Le fond de ton raisonnement est juste mais je suis pas d'accord avec la conclusion. Tu peux écrire du mauvais java, tu peux écrire du bon perl ou du bon C++, tu peux écrire du bon javascript, du bon scala, du scala pédant. Tout ceci est vrai.
    Le problème vient du fait que tu vas forcément utiliser du code écrit par d'autres qui partagent plus ou moins (et souvent moins que plus) ton expérience et ta philosophie. Je suis le premier à dire sans le moindre complexe que je préfère un code de 10 lignes bien lisible qu'un one-liner que je passe 30 secondes à décortiquer, c'est clair si ça tenait qu'à moi j'utiliserai Scala comme un java amélioré en réfléchissant bien à ce que j'introduis comme problématique si j'ai recours aux concepts plus puissants de ce langage.
    Le problème c'est difficile de n'avoir affaire qu'à son code, et si le langage permet trop à chacun de faire son petit DSL pour sa librairie parce qu'il a l'impression que c'est plus expressif, au bout d'un moment ça va devenir le bordel. Et les largeurs de la syntaxe du langage autorisent cela, sinon l'encouragent directement.

  17. #17
    Membre régulier

    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2012
    Messages : 21
    Points : 78
    Points
    78
    Par défaut
    Citation Envoyé par _skip Voir le message
    Le fond de ton raisonnement est juste mais je suis pas d'accord avec la conclusion. Tu peux écrire du mauvais java, tu peux écrire du bon perl ou du bon C++, tu peux écrire du bon javascript, du bon scala, du scala pédant. Tout ceci est vrai.
    Le problème vient du fait que tu vas forcément utiliser du code écrit par d'autres qui partagent plus ou moins (et souvent moins que plus) ton expérience et ta philosophie. Je suis le premier à dire sans le moindre complexe que je préfère un code de 10 lignes bien lisible qu'un one-liner que je passe 30 secondes à décortiquer, c'est clair si ça tenait qu'à moi j'utiliserai Scala comme un java amélioré en réfléchissant bien à ce que j'introduis comme problématique si j'ai recours aux concepts plus puissants de ce langage.
    Le problème c'est difficile de n'avoir affaire qu'à son code, et si le langage permet trop à chacun de faire son petit DSL pour sa librairie parce qu'il a l'impression que c'est plus expressif, au bout d'un moment ça va devenir le bordel. Et les largeurs de la syntaxe du langage autorisent cela, sinon l'encouragent directement.
    Exactement, on ne pourrait mieux dire.

    Ceci dit, perso, je ne m'exprimerai plus sur scala.
    Ce langage est clairement mort : 12 ans d'existence et pas cité par les développeurs parmi les 20 langages les plus populaires.

  18. #18
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 380
    Points : 856
    Points
    856
    Par défaut
    ça veut dire quoi une "technologie prisée par les développeurs ?"

    perso, je préfèrerais une technologie prisée par les recruteurs car je veux bien apprendre scala si à la clé j'ai un emploi.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/08/2014, 09h15
  2. [Dynamics NAV] Fonctionnalités les plus requises par les utilisateurs
    Par adrian07 dans le forum Microsoft Dynamics
    Réponses: 0
    Dernier message: 18/10/2012, 12h40
  3. Réponses: 17
    Dernier message: 12/05/2010, 14h05
  4. Réponses: 9
    Dernier message: 28/07/2009, 15h39
  5. Réponses: 7
    Dernier message: 20/05/2009, 14h40

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