Navigation

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

  1. #21
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2015
    Messages : 29
    Points : 62
    Points
    62

    Par défaut

    Citation Envoyé par Spartacusply Voir le message
    Salut,

    https://w3techs.com/technologies/ove...g_language/all

    A+

    Moralité : on peut faire dire aux chiffres n'importe quoi, c'est pas demain la veille que Python va remplacer PHP, j'espère que tu peux au moins reconnaître ça sans trop avoir l'impression de t'écarteler...
    Euh... non, là, tu donne les chiffres du nombre de serveurs web actuels, pas des devs en cours. Avec le passif, et surtout wordpress (et Joomla, et Drupal), rien que ce dernier représente déjà 75% des sites de la planète. Mais une page PHP de blog qui a 10 ans n'est pas très représentatif de la tendance...

    Google et Youtube ont été codés en Python; l'IA TensorFlow, c'est du python. Et on ne fait pas de blockchain avec du PHP, ni d'IA, et je n'ai jamais entendu parler d'OS en PHP, de PHPscript pour le navigateur, pour les IoT, PHP ne tourne ni sur iOS ni sur Android ni sur le futur FuschiaOS, et j'en passe...

    Bref, de meilleurs indicateurs sur l'usage ACTUEL des langages: https://www.tiobe.com/tiobe-index/ (Python 4e, PHP 9e et en très grosse chute!), même JS est passé devant (merci Node, 10x plus rapide): https://en.wikipedia.org/wiki/Progra...pular_websites , même Facebook utilise Python dans son backend mais ni Google ni Youtube n'utilisent PHP... etc.

    A part des bricolos qui ne sont pas des vrais hackers niveau ingénieurs, y'a plus personne de sérieux qui fasse du PHP... En France c'est Java, aux USA c'était Ruby, JS/ES/TS maintenant, et on passe aux langages fonctionnels svp, merci...!

    ps: tiens donc, Python a donné Ruby qui a donné Rails qui a inspiré Symfony... : https://upload.wikimedia.org/wikiped...nttimeline.png

    ps2: deux amis normaliens, un CEO et un CTO de startup web, embauchent des compétences Clojure: "pourquoi" ai je bêtement demandé... "parce que ça filtre les mauvais (PHP, Ruby, JS...) et ceux qui viennent nous voir, par plaisir d'enfin utiliser des vrais langages, sont mêmes prêts à baisser leur salaire. Moins cher et bien meilleurs. Malins.

    ps3: j'ai eu en horreur le C++ (j'avais même demandé à faire plutôt du Le Lisp, Ada, Eiffel, Pascal... aaaah Pascal...!), c'est la même chose avec PHP vs Python. Mais Pharo (le smalltalk 2017)...:
    https://medium.com/smalltalk-talk/ph...t-1eff6240c60b :
    The Killer Advantage
    According to Namcook Analytics (Table 16), Smalltalk is one of the most productive programming languages in the world (measured by “economic productivity” in terms of number of work hours to deliver 1,000 function points):
    C — 26,273
    Fortran — 22,394
    JavaScript — 15,929
    Forth — 14,636
    Haxe — 14,636
    Lisp — 14,636
    C++ — 12,697
    Go — 12,697
    Java — 12,697
    PHP — 12,697
    Python — 12,697
    C# — 12,309
    Dart — 11,620
    F# — 11,312
    Ruby — 11,312
    Erlang — 10,758
    Elixir — 9,845
    Haskell — 9,845
    Julia — 9,465
    Perl — 9,465
    Delphi — 8,289
    Objective-C — 7,848
    Visual Basic — 7,848
    Eiffel — 7,156
    Smalltalk — 6,879

    Et Kotlin?

  2. #22
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    mai 2011
    Messages
    1 712
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : mai 2011
    Messages : 1 712
    Points : 3 241
    Points
    3 241

    Par défaut

    J'ai tellement l'impression de parler à une mentalité de Mac Addict que je sais que quoi que je dise, tu n'y croiras jamais.
    J'ai même écrit un très gros framework sur lequel j'ai fait mon mémoire d'ingénieur, et sur lequel plusieurs entreprises on travaillé pendant plusieurs années, largement fait avant Symfony, puis ré-écrit au fil des ans complètement 3 fois.
    J'imagine que pour JavaScript, je suis sûr que tu sais ce que j'ai fait sur TM en scripting...
    Ah non absolument pas,je suis au contraire très ouvert à l'ensemble des technologies, aussi bien anciennes que nouvelles sinon je serai jamais passé à Angular/NodeJS et serait resté bien au chaud avec mon Symfony/Jquery. Et si j'avais le temps et la disponibilité, je me jetterai aussi bien volontiers dans l'univers Python qui m'a tout à fait l'air d'être également un univers palpitant (rien d'ironique là dedans !).

    C'est probablement ton côté hautain, sûr de toi, de "j'ai tout vu, tout fait" assez insupportable qui au lieu de m'attirer vers Python me fait totalement l'effet inverse et me donne au contraire l'envie de m'en éloigner autant que possible (dans l'hypothèse que je n'écoute que toi, ce qui fort heureusement n'est pas le cas)

    Bref, maintenant que tu as le fond, essaye de bosser la forme ça devrait apporter davantage de résultats.
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  3. #23
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2015
    Messages : 29
    Points : 62
    Points
    62

    Par défaut

    • Symfony est d'origine française, pas Django. "NIH"? (syndrome Not Invented Here?)
    • Et personne n'a parlé de chercher du travail avec Django. Entre un poste de CEO et un job de plombier, y'a aussi plus d'offres d'emploi pour plombier...
    • 1er résultat de ma recherche "Symfony vs Django": boum, enfoncé Symfony...


    Rapidité? ah ben flûte: http://blog.websitesframeworks.com/w...03/davis11.png
    Ah ben vraiment flûte même: perdre 3% de clients et être lent à ce point...: http://static.alrond.com/siege.gif

    La messe est dite: quand on fait sa pub sur PHP, on sait à qui on a affaire... (pas un ingénieur... un vrai)

  4. #24
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2015
    Messages : 29
    Points : 62
    Points
    62

    Par défaut

    Citation Envoyé par dukoid Voir le message
    toujours est il que :


    CONCLUSION :
    pour trouver un taf il vaut mieux apprendre PHP que python !
    Con-clusion:
    pour trouver un BON taf, faut savoir faire de l'IA et du Big Data: j'attend toujours les outils en PHP pour ça... PHP, pour faire des plugins wordpress ou combler des trous de sites pourris qui ont 15 ans, bof... mais merci d'être là pour y répondre on a besoin de tout le monde... Y'a juste une différence entre garagiste pour réparer des vielles bécanes et ingénieur pour fabriquer les nouvelles...

  5. #25
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2015
    Messages : 29
    Points : 62
    Points
    62

    Par défaut

    Salut SurferIX et merci pour ton appréciation... je ne suis plus codeur mais me passionne néanmoins pour les belles choses, simples et efficaces, les architectures, et déçu par le "reinvent the wheel" pour la 100000 fois pour faire un bouton ou un bout de chat dans une app, cherche constamment "quel est le plus productif des outils de dev.. désespérant, quand même... on revient à ... Smalltalk. Tout ça pour ça.

    Tout est là: https://medium.com/@richardeng , le mossieur est encore plus désillusionné que moi mais encore plus compétent néanmoins. Pharo, bébé d'un directeur de recherche de l'INRIA de Lille, est le futur, le SmallTalk du 21e siècle. Quelques trucs top dedans: tout est dans un seul fichier, même l'état, rechargeable après un reboot donc on retrouve l'endroit ou on était (une app iOS ou Android me fait pleurer: en pause hop elle dégage et en rallumant son phone... faut tout recharger... ). Syntaxe hyper claire, une autre façon de travailler. Etc.

    Mais Pharo ne fait pas Android et iOS, Dart/Flutter si et est le futur de Android: FuschiaOS:
    et surtout https://hackernoon.com/why-native-ap...r-e97361a1c073
    Dart>TS>ES>JS... J'ai pas encore trouvé mieux, je vais sans doute m'y mettre... Comme Pharo, le fait qu'on se passe parfaitement d'outil à la Gulp Grunt et autres acronymes vulgaires veut tout simplement dire que c'est propre, dès le départ. Le bazar JS React etc. c'est du bricolage, de génie mais du bricolage. "AMHA"...

    (Ah, Elm, aussi, mais non pas OO mais fonctionnel, est à essayer absolument aussi; idem, pas besoin de pléthore d'outils compliqués, expérience de dev géniale. Clojure aussi avec son IDE interactif "REPL" que les amateurs louent aux nues... Go est un C++ facile aussi. Tout est là, je compile mes lectures ici: https://docs.google.com/document/d/1...h.te2c3nnwu1w7
    à toi d'y participer!

  6. #26
    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 : 35
    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 412
    Points
    7 412

    Par défaut

    Euh, ça parle plus beaucoup de Kotlin là

    Citation Envoyé par nhugodot Voir le message
    A part des bricolos qui ne sont pas des vrais hackers niveau ingénieurs, y'a plus personne de sérieux qui fasse du PHP... En France c'est Java, aux USA c'était Ruby, JS/ES/TS maintenant, et on passe aux langages fonctionnels svp, merci...!
    C'est bien trop réducteur...

    Je voulais pas trop intervenir dans le débat mais tu oublies que PHP est très présent dans le eCommerce, et c'est un secteur en très grande expansion où il a de l'argent et beaucoup à faire. En 10 ans que je suis dans une PME qui édite justement des solutions de pilotage de merchandising, on a vu défiler énormément de PHP, et sinon du .Net et du Java (ces 2 derniers sont souvent pour les gros comptes) mais par exemple dans ce secteur : quasi jamais de Python.

    Et je dirai que les développeurs PHP de qualité, ça ne court pas les rues, peut être parce que c'est une techno très accessible, donc il y a largement la place pour sortir du lot, faire du travail sérieux et bien gagner sa vie. Pour les indices TIOBE et tout ça, tout a déjà été dit sur les topics dédiés à ces classements, on peut quasiment rien en tirer. Pour ça je suis d'accord avec dukoid que les offres d'emplois c'est "presque" un meilleur indicateur, resterait bien sûr à savoir maintenant si c'est des emplois d'esclaves sous payés qui doivent modifier un plugin wordpress ou des vrais postes où il y a de la valeur, mais c'est indéniablement un plus grand nombre d'opportunités.

    Pour finir, si SurferIX juge qu'il est plus productif avec django qu'avec symfony parce que les templates se débuggent plus facilement, ben il a raison d'utiliser ça. Ca veut dire moins de travail pour lui et plus de satisfaction client, et c'est juste la seule chose qui compte. Je dirai la même chose d'un type qui pense l'inverse. A côté de ça, les graphiques de performance, le fait que ça fasse ou pas du mobile, du big data, ou du shell scripting, c'est complètement hors sujet.

    Avant que quelqu'un se la ramène pour me dire que je défends PHP alors que c'est un langage de merde (et là dessus il y a beaucoup à redire), sachez que je n'ai jamais eu le loisir de choisir un langage selon mes propres critères d'appréciation, ça a toujours été selon l'écosystème, les libs/API disponibles ou les cibles de déploiement. Si vous pouvez vous permettre de vous limiter à un langage que vous adorez par dessus tout en fonction de vos seules opinions, je vous envie.

  7. #27
    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 764
    Points
    1 764

    Par défaut

    Citation Envoyé par dukoid Voir le message
    ce n'est pas parceque surferIX pense cela que c'est une vérité !
    Mais arrête de tout mal interpréter, relis bien ce qu'il a dit bordel, t'as un problème d'ego toi !
    Il a dit : "si SurferIX juge qu'il est plus productif avec django qu'avec symfony parce que les templates se débuggent plus facilement, ben il a raison d'utiliser ça."
    C'est tout ! Il a dit : si son idée le rend plus productif, alors qu'il suive son idée, t'as un vrai souci d'interprétation !
    Je t'ai même dit que j'ai énormément fait de Php et que j'ai apprécié ça pendant longtemps !
    Arrête de tout déformer !
    Ici le sujet c'est Kotlin, ça a dérivé sur d'autre choses constructives, d'autre langages, d'autres frameworks, merci @nhugodot, et une excellente analyse de @_skip pour ce qui est monde professionnel. T'es le seul à tout mal interpréter et limite insulter, relis bien les messages et essaie de mieux les comprendre avant de répondre !
    La réalité c'est qu'il y a plein de demande Php pour du boulot, la réalité c'est que plein de gens se tournent vers Python parce que ça rend plus productif, y'a rien de compliqué à ça, et ça contredit pas ce que tu dis !
    Relis bien ce que j'ai dit avant de répondre je suis pas le seul à te l'avoir expliqué ici !
    .I..

  8. #28
    Membre chevronné
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2012
    Messages
    1 589
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2012
    Messages : 1 589
    Points : 2 140
    Points
    2 140

    Par défaut

    la réalité c'est que plein de gens se tournent vers Python parce que ça rend plus productif,
    1)
    Voilà, tu fais encore une AFFIRMATION ! tu déclares une VÉRITÉ !

    non....non et non. ça n'engage que toi. Dans ce cas moi j'affirme que "Symfony rend plus productif !"

    2) pleins de gens ?
    à partir de 2, c'est vrai on peut mettre les choses aux pluriels !

    donc dans ce cas je dis : "il y a pleins de gens qui se tournent vers Symfony"

    3)
    Tu as une façon de tourner les mots, les phrases toujours dans l'affirmation que je déteste.

    Faut que t'arrêtes de vouloir comparer. Autant Django par certains points à des points positifs autant Symfony en a aussi. après, savoir objectivement quels points positifis est plus importants qu'un autre ça non .... c'est pas possible !


    Pour moi autant Django, Symfony, cakePHP, laravel... ils ont tous des avantages et inconvénients et on ne peut pas les classer parceque chaque personne va trouver mieux sur tel ou tel points ou à chier tel ou tel autres points.
    Tout comme pour le javascript : react ? angular ? vue.js ? non, aucun n'est largement meilleur qu'un autre.. ils sont tous bons dans leurs domaines et chacun va trouver son bonheur là ou il veut.

  9. #29
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2015
    Messages : 29
    Points : 62
    Points
    62

    Par défaut

    Citation Envoyé par dukoid Voir le message
    1)
    "Tu as une façon de tourner les mots, les phrases toujours dans l'affirmation que je déteste.".
    Il est fatigant le mossieur, mais avec sa tête, m'étonne pas qu'il saute sur tout ce qui bouge...DD

    Bon, bref, on peut donc pas parler sans mettre les précautions d'usage "je PENSE que, AMHA, je crois savoir que peut-être il y aurait une idée possible qu'un avis se dégagerait..." ... lourd... Bienvenue en France et les bisounours insoumis... Voilà pourquoi je passe ma vie à l'étranger, sur des sites ricains, et Quora eng plutôt que fr, c'est quand même d'un autre niveau, et technique et social...

    Bon, KOTLIN, donc...

    J'essaie de trouver les bons outils (langage, libs, frameworks -non, react n'est pas un framework...-) pour demander à un "plus que junior, moins que senior" de faire mes dev en Android, iOS, et après en web responsive. React, c'est puissant, mais trop riche, bordélique (15 libs pour chaque truc, rien d'officiel, laquelle va rester, est bonne, etc.?), la bazaar vs la cathédrale (Angular), le PC vs le Mac.
    En shortlist: Ionic 3/Angular, Dart/Flutter (puissant! le meilleur je pense), Angular/NativeScript, Vue -facile ET puissant- mais le natif se fait attendre, Weex est trop chinois (ça cause pas anglais, dur la doc et la communauté d'aide) et NativeScript arrive mais pas prêt.

    Et Kotlin? Quel est son framework? Ses libs? Quid de iOS? Fait pour Android, mais pour le web? Je n'en sais rien... qui a une réponse?

    Comme tout le monde, je cherche l'outil pro-duc-tif à la fois sur les 3 cibles, pas sur seulement deux... Kotlin ne me semble répondre qu'à moitié au problème, cad... ne pas être une réponse. On restera pour la plupart sur ReactJS/React Native...Dommage.

    Et même pour Android, Kotlin marche sur machines virtuelles (java et JS, pardon, ES...), alors que Dart/Flutter est bien plus rapide, n'a pas besoin de bridge iOS ou Android: 60fps!

  10. #30
    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 : 35
    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 412
    Points
    7 412

    Par défaut

    Citation Envoyé par nhugodot Voir le message
    Et Kotlin? Quel est son framework? Ses libs? Quid de iOS? Fait pour Android, mais pour le web? Je n'en sais rien... qui a une réponse?
    Avec kotlin, dans les grandes lignes, tu fais ce que fais java, avec les mêmes cibles + la compilation vers JS qui débarque.

    Comme tout le monde, je cherche l'outil pro-duc-tif à la fois sur les 3 cibles, pas sur seulement deux...
    Non, pas comme tout le monde... Perso ça me dérange pas d'utiliser plusieurs langages selon chaque cible.
    Faire du Xamarin pour IOS/Android et du Kotlin + js pour le web, ça me dérange pas.

    Surtout que l'apprentissage du langage c'est souvent peu de choses par rapport à la maîtrise de la stack, des outils de build et des frameworks. Donc déjà rien que le langage qui peut viser toutes les plateformes MAIS au travers de frameworks différents c'est une qualité fortement à relativiser.

    Et même pour Android, Kotlin marche sur machines virtuelles (java et JS, pardon, ES...), alors que Dart/Flutter est bien plus rapide, n'a pas besoin de bridge iOS ou Android: 60fps!
    Flutter est en alpha aussi faut le rappeler.
    Et Dart malgré ses qualités reste amha assez balbutiant. Côté client c'est là (et encore sans mettre personne sur le cul ) mais côté serveur c'est très marginal. Alors que dans le monde de la JVM y'a largement de quoi faire côté serveur.

    J'ai réfléchi à investir dans Dart avec Angular-Dart il y a quelques années parce que je suis pas grand fan de JS, j'ai déchanté très vite. Pas à cause du langage mais l'écosystème était juste pas là.

  11. #31
    Membre du Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2015
    Messages : 29
    Points : 62
    Points
    62

    Par défaut

    Merci Skip

    Oui, le langage est une chose, l'écosystème une autre: apprendre un langage ça va mais le reste... d'où le choix de rester sur un seul bien maitrisé plutôt que se disperser dans 2 ou 3 moins bien maitrisés pour les 3 cibles (web android ios)...

    Bon, toujours pas pigé l'intérêt de Kotlin, versus pour les corporations qui sont java et bien sûr JS sur navigateur, elles au moins peuvent passer au "one fit all" sur PC de leurs employés/fournisseurs/clients B2B... Déjà ça. Un concurrent de plus pour TypeScript, donc?

  12. #32
    Membre chevronné
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2012
    Messages
    1 589
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2012
    Messages : 1 589
    Points : 2 140
    Points
    2 140

    Par défaut

    @nhugodot.

    ah oui l'est fatiguant le monsieur. à vouloir la ramener à chaque news pour essayer de nous vendre son django.
    c'est vraiment fatiguant !

  13. #33
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Consultant
    Inscrit en
    juillet 2013
    Messages
    2 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juillet 2013
    Messages : 2 069
    Points : 66 550
    Points
    66 550
    Billets dans le blog
    2

    Par défaut Kotlin 1.3 est disponible

    Kotlin 1.3 est disponible :
    coroutines désormais stables, Kotlin/Native Beta, bibliothèques multiplateformes et bien plus encore

    Kotlin est un langage de programmation orienté objet et fonctionnel, avec un typage statique qui permet de compiler pour la machine virtuelle Java (JVM) et JavaScript. C'est également un langage de choix pour le développement Android, surtout depuis qu'il bénéficie d'un support natif sur Android Studio.

    Près d'un an après la sortie de Kotlin 1.2, une nouvelle version du langage vient d'être publiée : la version 1.3 qui, comme l'indique l'équipe JetBrains derrière le langage, vient avec de nombreuses fonctionnalités et améliorations, mais un point d'honneur est mis sur les coroutines, Kotlin/Native et les projets multiplateformes.

    Principales nouveautés : coroutines, Kotlin/Native Beta, projets multiplateformes

    Dans Kotlin 1.3, les coroutines sont désormais stables. Pour information, les coroutines constituent un moyen innovant d’écrire du code asynchrone non bloquant, facile à comprendre et à faire évoluer. Il s’agit d’un outil puissant, que ce soit pour permettre le transfert d’une tâche à des collaborateurs ou l’implémentation de protocoles réseau compliqués. La bibliothèque kotlinx.coroutines, disponible en version 1.0, offre une base solide pour la gestion des tâches asynchrones de toutes tailles, telles que la composition, l’annulation et la gestion des exceptions et les cas d’utilisation propres à l’interface utilisateur.

    Cette version de Kotlin inclut également Kotlin/Native Beta qui compile le code Kotlin directement en binaires natifs. Kotlin/Native utilise LLVM pour compiler les sources Kotlin en données binaires autonomes (aucune machine virtuelle n’est nécessaire) pour différents systèmes d’exploitation et architectures CPU, y compris iOS, Linux, Windows, Mac, et même WebAssembly et les systèmes embarqués tels que STM32. Notons, entre autres, qu'il inclut la gestion totalement automatique de la mémoire et peut interagir avec C, Objective-C et Swift... En plus d'exposer les API de plateformes telles que Core Foundation, POSIX, et toute autre bibliothèque native de votre choix.


    L'un des domaines d'améliorations de cette version concerne les projets multiplateformes. Un projet multiplateforme vous permet de construire plusieurs couches de votre application (backend, frontend, etc.)  depuis la même base de code. Ce type de projet contient à la fois des modules communs, qui contiennent du code indépendant de la plateforme, et des modules plateforme, qui contiennent le code spécifique à une plateforme (JVM ou JS) et qui peuvent utiliser des bibliothèques de cette plateforme. Avec Kotlin, l'équipe JetBrains s'est en effet fixé l'objectif ambitieux de permettre le partage de code entre les plateformes. Kotlin 1.3 arrive donc avec un ensemble de bibliothèques multiplateformes qui couvrent les tâches quotidiennes telles que HTTP, la sérialisation et la gestion des coroutines. La solution la plus simple pour écrire du code multiplateforme avec Kotlin consiste à exploiter ces bibliothèques, d'après l'équipe JetBrains.

    Kotlin 1.3 propose des outils prenant en charge des projets Kotlin/Native et multiplateformes qui sont disponibles dans IntelliJ IDEA Community, IntelliJ IDEA Ultimate Edition et Android Studio. Toutes les fonctionnalités d'édition de code, telles que le surlignage des erreurs, la saisie semi-automatique du code, la navigation et la refactorisation sont disponibles dans les trois IDE. JetBrains travaille aussi sur des fonctionnalités et des intégrations plus avancées avec des outils standards.

    Autres améliorations

    Kotlin 1.3 vient également avec de nombreuses autres fonctionnalités et améliorations, notamment :
    • la prise en charge expérimentale des classes en ligne (inline class) pour les performances et la sécurité du typage ;
    • la prise en charge expérimentale des entiers non signés pour faciliter la manipulation des octets et autres codes de bas niveau ;
    • les Contrats pour améliorer l’analyse statique des appels de bibliothèque ;
    • un débogueur de séquence pour visualiser les évaluations retardées ;
    • des améliorations des fichiers temporaires, de REPL et de la création de scripts pour travailler de façon fluide avec des scripts et des extraits de code ;
    • la bibliothèque standard a été étendue au code Kotlin/Native, on note aussi prise en charge améliorée pour Kotlin/JS, la disponibilité de Random sur toutes les plateformes et autres d'améliorations et corrections de bogues ;
    • la compilation incrémentale et expérimentale pour Kotlin/JS ;
    • etc.

    Vous pouvez essayer Kotlin 1.3 en ligne à l'adresse http://play.kotl.in/ ou directement dans vos IDE :
    • sous Maven, Gradle et npm : utilisez 1.3.0 comme numéro de version pour le compilateur et la bibliothèque standard ;
    • sous IntelliJ IDEA : utilisez la version 2018.3 qui contient Kotlin 1.3. Pour les versions précédentes, installez ou mettez à jour le plugin Kotlin à la version 1.3 ;
    • sous Android Studio : installez ou mettez à jour le plugin depuis Plugin Manager ;
    • sous Eclipse : installez le plugin en utilisant le Marketplace.

    Il faut noter également que le compilateur en ligne de commande peut être téléchargé depuis la page de publication GitHub.

    Source: Blog JetBrains

    Et vous ?

    Utilisez-vous Kotlin ? Si oui, avec quel IDE ?
    Que pensez-vous des nouveautés de Kotlin 1.3 ?
    Qu’attendez-vous encore du langage ?

    Voir aussi :

    Google lance Android KTX, un ensemble d'extensions pour le développement Android avec Kotlin, disponible en préversion
    Kotlin 1.2 est disponible : cette nouvelle version permet de partager le code entre la JVM et JavaScript et améliore de 25 % les temps de compilation
    Android Studio 3.0 est disponible avec le support de Kotlin, plus de fonctionnalités Java 8 et bien plus
    Développement Android : Kotlin gagnerait du terrain au détriment de Java, et Realm prédit qu'il sera le plus utilisé fin 2018
    Classement Tiobe : Kotlin, le langage pour JVM entre dans le top 50, et pourrait connaître la même ascension rapide que Swift, selon certains
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

Discussions similaires

  1. La phase de beta-test du SDK ATI Stream v2.0 d'AMD est maintenant disponible
    Par raptor70 dans le forum Développement 2D, 3D et Jeux
    Réponses: 0
    Dernier message: 25/09/2009, 00h34
  2. Réponses: 0
    Dernier message: 25/09/2009, 00h34
  3. Réponses: 34
    Dernier message: 21/09/2009, 23h49
  4. Réponses: 0
    Dernier message: 07/02/2009, 16h05
  5. Réponses: 0
    Dernier message: 23/05/2008, 12h26

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