Symfony, un standard de développement pour des projets complexes

Symphony est un puissant framework  PHP open source créé par un ingénieur français.
Il trouve sa pleine efficience et utilité dans la réalisation d’outils web sur-mesure. 

Un framework est un ensemble d’outils, de méthodologie, de normes et de composants qui constitue et garantit une base technique solide.

Même s’ils font gagner du temps, les framework de développement PHP demandent aussi un travail conséquent pour les faire évoluer. 

Après en avoir testé de nombreux, Symfony s’avère être la plateforme de développement qui nous correspond le mieux. Il évolue très vite, il est solide pour aborder des projets à géométrie variable en terme d’attente / complexité et dispose d’une grande communauté d’utilisateurs et de contributeurs.

réponseActions utilisateursRequêtesMise à jourde la vueChoix de la vueNotifications de changementsChangementrequête
</>

Des fonctionnalités très spécifiques

Symfony permet de  construire des sites, des applications en lignes ou des webservices trés spécifiques en allégeant la charge de développement des fonctionnalités communes grace à l’utilisation de briques fonctionnelles existantes. Symfony permet d’intégrer facilement des fonctionnalités de base à tout projet, exemple :
  • La création de la structure de base d’un projet : arborescence dossiers et fichiers, les fichiers de configuration.
  • Les accès aux bases de données.
  • Le routage permettant d’associer à l’url tapé dans la barre d’adresse le code qui sera exécuté côté serveur.
  • Un moteur de template permettant de créer des structures de codes html des pages
  • Le redimensionnement d’image et la conversion de format (jpg, png, …)
  • La transformation des fichiers de styles scss avec une syntaxe simplifiée et évoluée en css standard du web.
  • La simplification d’utilisation de framework type vue js, react js …
 

Les avantages de Symfony

Robustesse

Basé sur le populaire design pattern MVC.

Utilise un système de cache performant pour améliorer le temps de réponse et limité l’utilisation des ressources matérielles.

Fournit une interface de debugage en mode développement pour s’assurer d’obtenir une programmation de bonne qualité et plus fiable.

Offre des procédures d’authentification solides ainsi qu’un cryptage de mot de passe fort.

Dispose de protections contre les principales failles de sécurité : XSS, CSRF, injection SQL.

Stabilité

Existe et évolue depuis plus de 15 ans . 

Livré sous licence MIT (sans problème de droits). 

Introduit un cadre de normalisation facilitant la maintenance à long terme et la reprise de projet. 

Bénéficie d’une grande communauté de développeurs, testeur et utilisateurs.

Ses composant sont utilisés par de nombreux projets comme par exemple  Joomla, Prestshop ou OroCRM

Le support des différentes versions maintenues pendant 3 ans.

Modularité

Permet l’injection de dépendances

Riche en paquets additionnels installable via le gestionnaire Composer

Dispose de Back Office type CRUD
EasyAdmin et Sonata

Peut utiliser divers type de base de données comme MySQL/MariaDB, Sqlite, PostgeSQL

Grace à Webpack et Encore il permet d’utiliser les langages SCSS, LESS ou  typescript et les bibliothèques Vue et React.

 

 

Quels projets réaliser avec Symfony ?

Symfony n’est pas une solution clé en main au même titre qu’un CMS (Content Management System), comme peuvent l’être WordPress, Drupal ou encore Prestashop… Il propose un ensemble d’outils et de composants facilitant le développement et l’évolution de projets web complexes.

Un CMS permet, en général, de démarrer facilement un projet à partir d’une structure de site internet comme base de travail. Cette pratique contraint de conserver le programme de base intact et parfois des masses de codes inutilisés qui auront un impact sur les performances.

Avec Symfony les bases d’un projet sont différentes. Nous pouvons générer aussi bien une partie du code PHP en ligne de commande que des fichiers de migration pour exporter les modifications des bases de données. Cela fluidifie le travail en équipe, rend plus facile l’utilisation de logiciels de versioning comme Git ou Gitlab.

Des solutions intégrées réputées telles que Magento, Prestashop, Sylius, Joomla ou Drupal utilisent des composants Symfony.

Exoca utilise la plateforme de développement Symfony pour des projets web à forte valeur ajoutée, en particulier quand le besoin de personnalisation fonctionnelle est primordial.

Des sites internet avancés

Développement de sites web sur mesure où sortant du cadre des CMS standard, par exemple réutilisant des données préexistantes.

Des tunnels d'enregistrement

Création de formulaires d’inscription, de souscription ou de commande dynamique et multicritères pouvant nécessiter des workflows complexes.

Des portails web sécurisés

Conception de plateforme applicative de ressources ou des services avec accès identifiés type intranet, extranet ou espace clients.

Des interfaces d'administration

Réalisation de backoffice de management  de contenu de site ou d’applications métier en ligne avec une gestion des droits utilisateurs.

 

Symfony et l’e-commerce

Fort de sa popularité et de ces avantages, il existe même une version de Symfony développé pour l’e-commerce. 

Sylius est une plateforme basée sur le framework Symfony et dédiée au développement de sites marchands sur-mesure. Sylius offre des possibilités étendues pour les projets web plus évolués et requérant des besoins spécifiques.

Symfony ne se limite pas au PHP

Symfony fournit aussi des outils pour faciliter le développement avec d’autres langages web comme le css, scss, less, js et ts ainsi qu’avec des bibliothèques comme ReactJS et VueJs et les frameworks associés.

Chez Exoca, par exemple : Vue.js a  trouvé son intérêt notamment pour construire et exploiter de longs formulaires complexes incluant des conditions, et pour la création et l’adaptation de contenus.

 

Périmètre de nos interventions avec Symfony


Analyse et Audit

pre et post
développement


Conception d’un nouveau
projet web

de taille variable


Reprise ou finalisation
d’un projet commencé

par un autre prestataire


Ajout de fonctionnalités

sur un développement
existant

 


Intégration graphique,
réalisation d’un template

 


Montée de version
du moteur Symfony

 


Hébergement infogéré

de votre portail développé
avec Symfony


Migration

d’un projet existant
vers notre plateforme
d’hébergement

 

Success Story

Vous voulez concrétiser ou estimer la faisabilité de votre projet.
Envisageons un premier contact au 03 22 22 05 85 ou si vous préférez le formulaire…

Aller au contenu principal