The Codest
  • A propos de nous
  • Services
    • Développement de logiciels
      • Développement frontal
      • Développement backend
    • Staff Augmentation
      • Développeurs frontaux
      • Développeurs backend
      • Ingénieurs des données
      • Ingénieurs en informatique dématérialisée
      • Ingénieurs AQ
      • Autres
    • Conseil consultatif
      • Audit et conseil
  • Industries
    • Fintech et banque
    • E-commerce
    • Adtech
    • Santé (Healthtech)
    • Fabrication
    • Logistique
    • Automobile
    • IOT
  • Valeur pour
    • CEO
    • CTO
    • Gestionnaire des livraisons
  • Notre équipe
  • Études de cas
  • Savoir comment
    • Blog
    • Rencontres
    • Webinaires
    • Ressources
Carrières Prendre contact
  • A propos de nous
  • Services
    • Développement de logiciels
      • Développement frontal
      • Développement backend
    • Staff Augmentation
      • Développeurs frontaux
      • Développeurs backend
      • Ingénieurs des données
      • Ingénieurs en informatique dématérialisée
      • Ingénieurs AQ
      • Autres
    • Conseil consultatif
      • Audit et conseil
  • Valeur pour
    • CEO
    • CTO
    • Gestionnaire des livraisons
  • Notre équipe
  • Études de cas
  • Savoir comment
    • Blog
    • Rencontres
    • Webinaires
    • Ressources
Carrières Prendre contact
Flèche arrière RETOUR
2022-05-19
Développement de logiciels

Pourquoi avons-nous besoin de Symfony Polyfill (... et pourquoi nous ne devrions pas)

The Codest

Sebastian Luczak

PHP Chef d'unité

Dans l'article suivant, nous expliquons comment fonctionne la Polyfill Symfony et comment elle est liée aux projets Symfony. Nous allons également approfondir l'idée que cette bibliothèque tente de résoudre.

Dans la plupart des PHP projetsvous remarquerez une forte dépendance à l'égard de l'outil Polyfill Symfony bibliothèque. Dans cet article, nous expliquerons non seulement comment elle fonctionne et comment elle est liée à la Projets Symfonymais nous approfondirons également l'idée du problème qu'il tente de résoudre.

Un peu d'histoire

PHP était en mauvaise posture depuis un certain temps. C'est en 2005 qu'Andrei Zmievski a lancé une campagne d'information et de sensibilisation. projet pour apporter le support natif de l'Unicode pour les PHP en raison de critiques mitigées et de nombreuses inquiétudes quant à l'avenir de l'Union européenne. PHP n'est pas dans la bonne direction. Le développement des PHP 6.x a commencé. Mais il n'a jamais été terminé - et c'est une histoire pour un autre jour. 10 ans plus tard, quelque part entre 2014 et 2015, Dmitry Stogov, Xinchen Hui, et Nikita Popov ont lancé le projet phpng - qui a optimisé et remanié le moteur interne Zend Engine utilisé par PHP.

>_ Le PHP 7 est né

Et pour les années passées, PHP se développe plus rapidement que jamais, et en est actuellement à la version stable 8.1.

image

En raison du développement rapide de nouvelles fonctionnalités dans le langage, non seulement les développeurs ont dû s'adapter à ces changements, mais aussi les fournisseurs d'infrastructures et de services d'hébergement.

Pour que nous, développeurs, puissions utiliser les fonctionnalités les plus récentes et les meilleures de notre langage de programmation bien-aimé Polyfill Symfony est né.

Symfony Polyfill et ses fonctions

Ce projet rétroporte des fonctionnalités trouvées dans la dernière version de l'outil de gestion de l'information de la Commission européenne. Versions PHP et fournit des couches de compatibilité pour certaines extensions et fonctions. Il est destiné à être utilisé lorsque la portabilité à travers l Versions PHP et des extensions est souhaitée.

Il s'agit d'une description pure et simple de Polyfill Symfony mais qu'est-ce que cela signifie ?

En raison de l'évolution rapide des Langue PHP et la personnalisation des logiciels par les fournisseurs d'accès à Internet, la plupart des développeurs ont été confrontés à un choix simple :

  • En tant que développeur, je crée des applications dans une ancienne version de PHP et ne peut pas utiliser les dernières fonctionnalités de la langue, ou
  • En tant que développeur, je crée une application moderne en utilisant la dernière version de PHP.

Mais ils devaient rester compatibles avec d'autres outils et services déjà utilisés à la fois sur le site de l'Union européenne et sur celui de la Commission européenne. code et du côté de l'infrastructure - en utilisant presque toujours des versions plus anciennes de PHPDois-je mentionner, cher lecteur, le "facteur plaisir" de ces deux solutions ?

Pour faciliter la tâche des développeurs, la communauté Open Source a élaboré en 2015 la première version stable de Polyfill numérotée 1.0. La vie des développeurs est devenue plus facile et on peut dire que Symfony Polyfill a résolu une multitude de problèmes tels que la portabilité du code entre différentes plateformes, Version PHP et a facilité le remaniement des applications et la réduction de la dette technologique.

Malheureusement, tous les problèmes ne peuvent pas être résolus par un seul outil.

Problèmes liés au maintien de plusieurs versions de l'environnement

Pour les cas complexes Projets informatiquesLa maintenance de différentes versions d'environnements pour différents clients/branches/départements est une procédure courante. Il en résulte la nécessité de développer simultanément de nombreuses branches différentes d'applications, souvent avec des exigences fonctionnelles différentes et avec leur propre traction. J'ai été confronté à de nombreuses reprises au problème de la maintenance de la même application pour différents clients sur différents environnements PHP5 / PHP7 et la multitude de problèmes liés à l'incompatibilité des bibliothèques ou de leurs dépendances pour les différentes versions est tout simplement insoluble en utilisant uniquement le logiciel Polyfill Symfony.

L'écart de compétences entre les membres de l'équipe de développement

En raison de la croissance rapide des fonctionnalités intégrées dans les PHPEn effet, de nombreux développeurs n'ont pas suivi le rythme du changement. De nombreuses fonctionnalités offertes dans les versions supérieures de PHP sont faciles à réaliser avec des bibliothèques externes, ou les développeurs n'avaient tout simplement pas besoin des nouvelles fonctionnalités, telles que le Fibres PHP. Lorsque l'on sélectionne équipe il est bon de s'assurer que les compétences sont adaptées ou que le processus de livraison du code est rendu plus cohérent grâce à des outils d'analyse statique et à la détection précoce des erreurs de régression de version.

Réticence au changement

image

L'adoption de nouvelles fonctionnalités linguistiques est encore assez faible et PHP 5 de plus de 24% montre clairement que un quart des projets PHP utilisent des versions inférieures à 7.xdont le support de sécurité prendra fin le 6 décembre 2022. Cela signifie qu'au moment de la rédaction de ce billet, plus de 25% de projets Web basés sur PHP seront potentiellement vulnérables à toutes les nouvelles failles de sécurité d'ici la fin de l'année. "Si ça marche, pourquoi s'en préoccuper ?

Conclusion

Nous devrions nous adapter aux changements linguistiques aussi rapidement que possible et utiliser les solutions les plus récentes dès que possible. Lors d'une éventuelle migration d'un projet patrimonial, il convient d'inclure Polyfill Symfony en tant qu'aide et en utilisant des techniques telles que le modèle Strangler et la méthodologie BDD actuellement en vogue, qui est fabuleusement facile à appliquer à l'environnement Cadre Symfony. Sommes-nous donc vraiment obligés d'utiliser Polyfill Symfony?

PHP développement consultation gratuite

En savoir plus :

Développement du PHP : 5 choses à savoir

7 startups et scaleups qui vont bouleverser le marché en 2022

Développement PHP. Symfony Console Component - Trucs et astuces

Articles connexes

Développement de logiciels

PHP 8.2 : Quoi de neuf ?

La nouvelle version de PHP arrive à grands pas. Quelles sont les nouvelles implémentations que vous devez connaître ? Consultez cet article pour le savoir !

The Codest
Sebastian Luczak PHP Chef d'unité
Développement de logiciels

Développement PHP. Symfony Console Component - Trucs et astuces

Cet article a été créé dans le but de vous présenter les trucs et astuces les plus utiles et les plus récupérables concernant le développement de la console Symfony.

The Codest
Sebastian Luczak PHP Chef d'unité
Développement de logiciels

Embaucher des développeurs internes ou externes

Recruter en interne ou en externe ? C'est le dilemme ultime ! Découvrez les avantages de outsourcing ou de la constitution d'une équipe interne dans l'article suivant.

The Codest
Grzegorz Rozmus Chef d'unité Java

Abonnez-vous à notre base de connaissances et restez au courant de l'expertise du secteur des technologies de l'information.

    A propos de nous

    The Codest - Entreprise internationale de développement de logiciels avec des centres technologiques en Pologne.

    Royaume-Uni - Siège

    • Bureau 303B, 182-184 High Street North E6 2JA
      Londres, Angleterre

    Pologne - Les pôles technologiques locaux

    • Parc de bureaux Fabryczna, Aleja
      Pokoju 18, 31-564 Kraków
    • Brain Embassy, Konstruktorska
      11, 02-673 Varsovie, Pologne

      The Codest

    • Accueil
    • A propos de nous
    • Services
    • Études de cas
    • Savoir comment
    • Carrières
    • Dictionnaire

      Services

    • Conseil consultatif
    • Développement de logiciels
    • Développement backend
    • Développement frontal
    • Staff Augmentation
    • Développeurs backend
    • Ingénieurs en informatique dématérialisée
    • Ingénieurs des données
    • Autres
    • Ingénieurs AQ

      Ressources

    • Faits et mythes concernant la coopération avec un partenaire externe de développement de logiciels
    • Des États-Unis à l'Europe : Pourquoi les startups américaines décident-elles de se délocaliser en Europe ?
    • Comparaison des pôles de développement Tech Offshore : Tech Offshore Europe (Pologne), ASEAN (Philippines), Eurasie (Turquie)
    • Quels sont les principaux défis des CTO et des DSI ?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Conditions d'utilisation du site web

    Copyright © 2025 par The Codest. Tous droits réservés.

    fr_FRFrench
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek fr_FRFrench