{"id":15728,"date":"2017-05-17T10:42:46","date_gmt":"2017-05-17T10:42:46","guid":{"rendered":"http:\/\/blog.kaliop.com\/?p=15728"},"modified":"2020-01-07T12:56:59","modified_gmt":"2020-01-07T12:56:59","slug":"symfony-4-faciliter-vie-developpeurs","status":"publish","type":"post","link":"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/","title":{"rendered":"Symfony 4, faciliter la vie des d\u00e9veloppeurs"},"content":{"rendered":"<p>Nous avons particip\u00e9 \u00e0 la Keynote de <strong>Fabien Potencier<\/strong>, au <strong>Symfony Live 2017<\/strong> \u00e0 <strong>Paris<\/strong>. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re <strong>Symfony 4<\/strong> avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.<\/p>\n<p>D&rsquo;autres annonces ont \u00e9t\u00e9 faites durant cette pr\u00e9sentation :<\/p>\n<ul>\n<li>La nouveau mode de versioning de Symfony,<\/li>\n<li>Une volont\u00e9 de simplifier l&rsquo;installation de bundles externes,<\/li>\n<li>Une date de sortie pour SF4.<\/li>\n<\/ul>\n<blockquote class=\"twitter-tweet\" data-lang=\"fr\">\n<p dir=\"ltr\" lang=\"fr\">Keynote de <a href=\"https:\/\/twitter.com\/fabpot\">@fabpot<\/a> sur <a href=\"https:\/\/twitter.com\/hashtag\/Symfony?src=hash\">#Symfony<\/a> 4 au <a href=\"https:\/\/twitter.com\/hashtag\/Symfony_Live?src=hash\">#Symfony_Live<\/a> Paris ! La salle est pleine !! <a href=\"https:\/\/t.co\/o9TC8ClDJ0\">pic.twitter.com\/o9TC8ClDJ0<\/a><\/p>\n<p>\u2014 Symfony Live (@symfony_live) <a href=\"https:\/\/twitter.com\/symfony_live\/status\/847353109688991744\">30 mars 2017<\/a><\/p><\/blockquote>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<h2>Des changements dans la ligne de conduite de Symfony<\/h2>\n<p>Parmi les annonces faites pendant cette keynote, SensioLabs annonce une nouvelle politique de versionning de Symfony :<\/p>\n<blockquote><p>Une version majeure tous les 2 ans, une version mineure tous les 6 mois<\/p><\/blockquote>\n<p>La nouvelle version ne d\u00e9roge donc pas \u00e0 la r\u00e8gle et sera la premi\u00e8re version majeure<br \/>\nqui respectera cette r\u00e8gle. Cette version va sortir dans le courant avril\/mai 2017 en b\u00eata dans une optique d&rsquo;annoncer la release officielle en novembre 2017.<\/p>\n<p>En premier lieu, SensioLabs effectue un changement important dans la fa\u00e7on d&rsquo;installer le framework. Dans les anciennes versions de Symfony, il \u00e9tait possible de r\u00e9cup\u00e9rer plusieurs distributions pr\u00e9-conditionn\u00e9es avec un ensemble de bundles: l&rsquo;\u00e9dition standard (Symfony CMF edition) et distribution API-Rest (Symfony Rest edition). Dans la version 4, il n&rsquo;y a plus qu&rsquo;une seule distribution disponible.<\/p>\n<p><strong>Dans cette nouvelle fa\u00e7on d&rsquo;installer Symfony, nous allons juste r\u00e9cup\u00e9rer un composer.json disponible sur le repository github <a href=\"https:\/\/github.com\/symfony\/skeleton\">symfony\/skeleton<\/a>.<\/strong><\/p>\n<p>Il sert de <strong>cookbook<\/strong> indiquant les <strong>bundles essentiels<\/strong> au bon fonctionnement du core de Symfony. Rien de plus ne sera install\u00e9 et c&rsquo;est \u00e0 la charge du d\u00e9veloppeur de g\u00e9rer les d\u00e9pendances dont il va avoir besoin durant la phase de d\u00e9veloppement de l&rsquo;application.<\/p>\n<p>On se retrouve donc avec une instance l\u00e9g\u00e8re en d\u00e9pendance, en d\u00e9but de projet. Petite anecdote, l&rsquo;installation de Symfony 4 n&#8217;embarque pas le bin\/console !<\/p>\n<h2>SensioLabs aide les d\u00e9veloppeurs au jour le jour<\/h2>\n<p>Un gros travail sur l&rsquo;installation des vendors a \u00e9t\u00e9 effectu\u00e9 afin de faciliter l\u2019installation.<br \/>\nLa version 3.4 (ou 4) impl\u00e9mente un nouveau syst\u00e8me de recettes (Recipe) qui permet de g\u00e9rer directement les d\u00e9pendances du bundle en cours d&rsquo;installation.<\/p>\n<p>Plus besoin de lire le <strong>README.md<\/strong> du bundle ou de devoir effectuer les X \u00e9tapes n\u00e9cessaires \u00e0 l&rsquo;installation du bundle. Chaque bundle poss\u00e8de son propre manifest de configuration. La nouvelle cli de Symfony permet d&rsquo;interpr\u00e9ter ces recipes et d&rsquo;installer directement le bundle, sans avoir \u00e0 effectuer de configuration \u00e0 la main. Fini les config.yml qui poss\u00e8dent la configuration des diff\u00e9rents bundle de l&rsquo;application. Chaque bundle poss\u00e8de ses propres fichiers de configuration. N&rsquo;ayez pas peur, il reste toujours possible d&rsquo;installer les bundles de l&rsquo;ancienne fa\u00e7on.<\/p>\n<p>On se retrouve donc avec une architecture de dossiers qui ressemble sensiblement \u00e0 celle des versions pr\u00e9c\u00e9dentes et un dossier \/etc qui remplace le app\/config.<\/p>\n<blockquote><p>Les fichiers de configuration sont de la configuration propre \u00e0 l&rsquo;application et qui ne ressemblent plus \u00e0 un agglom\u00e9rat de configuration de diff\u00e9rents bundles<\/p><\/blockquote>\n<h2>En conclusion<\/h2>\n<p><a href=\"https:\/\/sensiolabs.com\/fr\">SensioLabs<\/a>, avec la version 4 de <a href=\"https:\/\/symfony.com\/\">Symfony<\/a>, essaie de faciliter au maximum le travail du d\u00e9veloppeur :<\/p>\n<ul>\n<li>R\u00e9gulariser la sortie des nouvelles versions (roadmap plus pr\u00e9cise)<\/li>\n<li>Faciliter l&rsquo;installation des d\u00e9pendances d&rsquo;un projet en accompagnant le d\u00e9veloppeur au jour le jour.<\/li>\n<\/ul>\n<p>L\u2019\u00e9v\u00e9nement Symfony Live 2017 \u00e0 Paris \u00e9tait tr\u00e8s enrichissant avec des conf\u00e9rences tr\u00e8s int\u00e9ressantes ax\u00e9es sur les API et sur des approches diff\u00e9rentes de les concevoir. Vous pouvez retrouver les slides (et certaines vid\u00e9os) des conf\u00e9rences sur <a href=\"https:\/\/github.com\/SymfonyLive\/paris-2017-talks\/\">le github\u00a0suivant<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article. D&rsquo;autres annonces ont \u00e9t\u00e9 faites durant cette pr\u00e9sentation : La nouveau mode de versioning de Symfony, Une volont\u00e9 de simplifier l&rsquo;installation de bundles [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":17606,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","inline_featured_image":false},"categories":[1],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Symfony 4, faciliter la vie des d\u00e9veloppeurs - Blog<\/title>\n<meta name=\"description\" content=\"Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Symfony 4, faciliter la vie des d\u00e9veloppeurs - Blog\" \/>\n<meta property=\"og:description\" content=\"Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/\" \/>\n<meta property=\"article:published_time\" content=\"2017-05-17T10:42:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-01-07T12:56:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.tech-recette.infrawan.net\/app\/uploads\/2017\/05\/symfony2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"400\" \/>\n\t<meta property=\"og:image:height\" content=\"267\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Sophie Imbach\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sophie Imbach\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/\",\"url\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/\",\"name\":\"Symfony 4, faciliter la vie des d\u00e9veloppeurs - Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/#website\"},\"datePublished\":\"2017-05-17T10:42:46+00:00\",\"dateModified\":\"2020-01-07T12:56:59+00:00\",\"author\":{\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/#\/schema\/person\/1ec8b3b79ce537630721fe7030662d8c\"},\"description\":\"Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Symfony 4, faciliter la vie des d\u00e9veloppeurs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/#website\",\"url\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/\",\"name\":\"\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/#\/schema\/person\/1ec8b3b79ce537630721fe7030662d8c\",\"name\":\"Sophie Imbach\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.tech-recette.infrawan.net\/fr\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6129cc44cd543a1435f905b6e635b650?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6129cc44cd543a1435f905b6e635b650?s=96&d=mm&r=g\",\"caption\":\"Sophie Imbach\"},\"description\":\"[fr]Curieuse inassouvie et (sur)veilleuse du web depuis 1997, elle d\u00e9veloppe l\u2019image de Kaliop depuis sa cr\u00e9ation en 2002. Partenaire de la transformation digitale des organisations, Sophie a d\u00e9but\u00e9 comme chef de projets pour s\u2019orienter naturellement vers la communication.[\/fr] [en]Sophie has been developing Kaliop's image since its creation in 2002. As a partner in organizations' digital transformation, Sophie started as a project manager and naturally turned to communication.[\/en]\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Symfony 4, faciliter la vie des d\u00e9veloppeurs - Blog","description":"Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"fr_FR","og_type":"article","og_title":"Symfony 4, faciliter la vie des d\u00e9veloppeurs - Blog","og_description":"Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.","og_url":"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/","article_published_time":"2017-05-17T10:42:46+00:00","article_modified_time":"2020-01-07T12:56:59+00:00","og_image":[{"width":400,"height":267,"url":"https:\/\/www.tech-recette.infrawan.net\/app\/uploads\/2017\/05\/symfony2.png","type":"image\/png"}],"author":"Sophie Imbach","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Sophie Imbach","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/","url":"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/","name":"Symfony 4, faciliter la vie des d\u00e9veloppeurs - Blog","isPartOf":{"@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/#website"},"datePublished":"2017-05-17T10:42:46+00:00","dateModified":"2020-01-07T12:56:59+00:00","author":{"@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/#\/schema\/person\/1ec8b3b79ce537630721fe7030662d8c"},"description":"Nous avons particip\u00e9 \u00e0 la Keynote de Fabien Potencier, au Symfony Live 2017 \u00e0 Paris. Il a pr\u00e9sent\u00e9 en avant-premi\u00e8re Symfony 4 avec plusieurs changements fondamentaux qui seront d\u00e9taill\u00e9s dans cet article.","breadcrumb":{"@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/symfony-4-faciliter-vie-developpeurs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.tech-recette.infrawan.net\/fr\/"},{"@type":"ListItem","position":2,"name":"Symfony 4, faciliter la vie des d\u00e9veloppeurs"}]},{"@type":"WebSite","@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/#website","url":"https:\/\/www.tech-recette.infrawan.net\/fr\/","name":"","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.tech-recette.infrawan.net\/fr\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/#\/schema\/person\/1ec8b3b79ce537630721fe7030662d8c","name":"Sophie Imbach","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.tech-recette.infrawan.net\/fr\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6129cc44cd543a1435f905b6e635b650?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6129cc44cd543a1435f905b6e635b650?s=96&d=mm&r=g","caption":"Sophie Imbach"},"description":"[fr]Curieuse inassouvie et (sur)veilleuse du web depuis 1997, elle d\u00e9veloppe l\u2019image de Kaliop depuis sa cr\u00e9ation en 2002. Partenaire de la transformation digitale des organisations, Sophie a d\u00e9but\u00e9 comme chef de projets pour s\u2019orienter naturellement vers la communication.[\/fr] [en]Sophie has been developing Kaliop's image since its creation in 2002. As a partner in organizations' digital transformation, Sophie started as a project manager and naturally turned to communication.[\/en]"}]}},"_links":{"self":[{"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/posts\/15728"}],"collection":[{"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/comments?post=15728"}],"version-history":[{"count":7,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/posts\/15728\/revisions"}],"predecessor-version":[{"id":19795,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/posts\/15728\/revisions\/19795"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/media\/17606"}],"wp:attachment":[{"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/media?parent=15728"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/categories?post=15728"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tech-recette.infrawan.net\/fr\/wp-json\/wp\/v2\/tags?post=15728"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}