{"id":3163,"date":"2017-03-31T08:22:12","date_gmt":"2017-03-31T07:22:12","guid":{"rendered":"http:\/\/www.alpesjug.fr\/?p=3163"},"modified":"2017-05-02T18:16:41","modified_gmt":"2017-05-02T17:16:41","slug":"language-server-protocol-votre-grammaire-dans-le-cloud-jeudi-20-avril-2017","status":"publish","type":"post","link":"https:\/\/www.alpesjug.fr\/?p=3163","title":{"rendered":"Language Server Protocol: enfin une interface universelle entre langages et IDEs  Jeudi 20 Avril 2017"},"content":{"rendered":"<p><strong>Le Jeudi 20 Avril 2017 on parlera Microsoft au JUG !!!<\/strong><\/p>\n<h3>Language Server Protocol<\/h3>\n<p>Le Language Server Protocol est une sp\u00e9cification de communication entre un IDE et un \u00ab\u00a0serveur de langage\u00a0\u00bb qui fournit la logique pour les op\u00e9rations classiques de d\u00e9veloppement (compl\u00e9tion, documentation, diagnostics, r\u00e9f\u00e9rences&#8230;). Elle a \u00e9t\u00e9 d\u00e9velopp\u00e9e par l\u2019\u00e9quipe de VSCode, dont beaucoup ont aussi \u00e9t\u00e9 initiateurs d&rsquo;Eclipse IDE, et a \u00e9t\u00e9 rapidement adopt\u00e9e par beaucoup d&rsquo;IDE et de langages.<\/p>\n<p>Cette pr\u00e9sentation vous en dira bien plus \u00e0 travers plusieurs d\u00e9mos et discussions :<\/p>\n<p>\u2022\u00a0 Pourquoi un nouveau protocole : comment passer de M*N int\u00e9grations compliqu\u00e9es \u00e0 M+N int\u00e9grations simplifi\u00e9es.<\/p>\n<p>\u2022\u00a0D\u00e9monstration du support de C# dans Eclipse IDE gr\u00e2ce au \u00a0Language Server Protocol.<\/p>\n<p>\u2022\u00a0D\u00e9monstration du support de ce m\u00eame C# dans Eclipse Che.<\/p>\n<p>\u2022\u00a0D\u00e9monstration du support de Java dans VSCode gr\u00e2ce au Language Server bas\u00e9 sur Eclipse JDT.<\/p>\n<p>\u2022\u00a0Pr\u00e9sentation de comment faire un language server en Java avec la lib LSP4J.<\/p>\n<p>\u2022\u00a0 D\u00e9monstration de ce language server de d\u00e9mo dans Eclipse IDE, Eclipse Che, VSCode, avec une it\u00e9ration de modification pour montrer que les changements du Language Server se propagent gratuitement a tous les IDE.<\/p>\n<p>\u2022\u00a0Possibles architectures de d\u00e9ploiement.<\/p>\n<p>\u2022\u00a0Quelles sont les limitations du protocole, comment d\u00e9bugger le protocole, &#8230;<\/p>\n<h3>Les Conf\u00e9renciers<b><br \/>\n<\/b><\/h3>\n<p><b><img loading=\"lazy\" decoding=\"async\" class=\" alignright\" src=\"http:\/\/www.gravatar.com\/avatar\/a00dceceaf614a4087c11fca309dacd4\" width=\"169\" height=\"169\" \/>Florent Benoit <\/b>travaille pour <a href=\"https:\/\/codenvy.com\/\">Codenvy<\/a>. Il participe au d\u00e9veloppement de Eclipse Che et de la solution h\u00e9berg\u00e9e <a href=\"https:\/\/codenvy.com\/\">Codenvy<\/a>. Il d\u00e9veloppe la console d&rsquo;administration de <a href=\"http:\/\/www.eclipse.org\/che\/\">Eclipse Che<\/a> et Codenvy avec du TypeScript, participe au d\u00e9veloppement de plugins EclipseChe\/Codenvy en Java, sans oublier le CLI en bash avec docker. Florent est \u00e9galement un membre des sp\u00e9cifications Java EE 8 et un committer <a href=\"http:\/\/www.eclipse.org\/che\/\">Eclipse Che<\/a><\/p>\n<p><b><img loading=\"lazy\" decoding=\"async\" class=\"alignright \" src=\"http:\/\/alain-bernard.developpez.com\/interviews\/mickael-istria-ecf2015\/images\/mistria_full.jpg\" width=\"313\" height=\"208\" \/>Mickael<\/b> <strong>Istria<\/strong> est d\u00e9veloppeur Eclipse &amp; RCP depuis bient\u00f4t 10 ans. Il travaille depuis 5 ans pour <a href=\"http:\/\/www.redhat.com\">Red Hat<\/a>, depuis 1 an \u00e0 temps plein sur Eclipse IDE, et contribue ainsi a de multiples composants du c\u00e9l\u00e8bre outil (Platform, EGit, LSP4E, TM4E, SWTBot, m2e&#8230;) et a l&rsquo;ecosysteme Eclipse en g\u00e9n\u00e9ral (comite directeur de la Fondation Eclipse, comite d&rsquo;architecture, s\u00e9lection des pr\u00e9sentations \u00e0 l&rsquo;EclipseCon France&#8230;). Au del\u00e0 des aspects techniques d&rsquo;Eclipse IDE et des outils de d\u00e9veloppement, il s\u2019int\u00e9resse beaucoup a l&rsquo;open-source et aux bonnes pratiques de d\u00e9veloppement logiciel, et partisan de l&rsquo;asservissement complet des automates et des logiciels par les humains (et non l&rsquo;inverse!) et de la recherche d&rsquo;une productivit\u00e9 maximale pour \u00ab\u00a0travailler mieux pour travailler moins\u00a0\u00bb.<\/p>\n<h3>Inscriptions<\/h3>\n<p><a href=\"https:\/\/www.meetup.com\/fr-FR\/AlpesJUG\/events\/238766199\/\">https:\/\/www.meetup.com\/fr-FR\/AlpesJUG\/events\/238766199\/<\/a><\/p>\n<p><strong>Cette soir\u00e9e se d\u00e9roulera sur le campus au Laboratoire LIG \u2013 B\u00e2timent IMAG, 700 avenue Centrale, Saint-Martin-d\u2019H\u00e8res, \u00e0 partir de 19h. <\/strong><\/p>\n<p><strong>Attention, l\u2019entr\u00e9e se fera par la gauche du b\u00e2timent (par rapport \u00e0 l\u2019entr\u00e9e principale), \u00e0 cot\u00e9 du parking \u00e0 v\u00e9lo.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le Jeudi 20 Avril 2017 on parlera Microsoft au JUG !!! Language Server Protocol Le Language Server Protocol est une sp\u00e9cification de communication entre un IDE et un \u00ab\u00a0serveur de langage\u00a0\u00bb qui fournit la&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14],"tags":[],"class_list":["post-3163","post","type-post","status-publish","format-standard","hentry","category-annonce"],"_links":{"self":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/3163","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3163"}],"version-history":[{"count":3,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/3163\/revisions"}],"predecessor-version":[{"id":3166,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/3163\/revisions\/3166"}],"wp:attachment":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3163"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3163"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3163"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}