Microframework de symfony 2

symfony_logo

Cela a peut-être échappé à certaines personnes, la version 2.8 offre la possibilité d’utiliser Symfony 2 en tant que microframework.

La version standard contient tout un lot de bundles déjà enregistrés dans le fichier AppKernel,  ainsi que toute une configuration à faire.

Si je vous disais qu’une application peut être fonctionnelle avec un seul fichier, seuls les bundles utiles seront installés et nous plus installés à l’avance.

Ajouter un nouveau type de produit dans Magento 2

magento2

Magento dispose de nombreux types de produit qui permettent de générer des catalogues complets et adaptés aux besoins des vendeurs. Il en est de même pour la version 2 de la solution E-Commerce.

Si chaque type définit un comportement et des attributs qui lui sont propres, il est parfois nécessaire de créer un nouveau type afin de répondre à de nouveaux besoins.

Cet article décrit comment déclarer un nouveau type de produit et comment lui associer un comportement qui lui est propre. Le code est basé sur la version 2.1.2 de Magento.

Le Full Page Cache (FPC) de Magento 2

 magento2

Le Full Page Cache (FPC) est un élément important à prendre en compte lors du développement d’un site quel qu’il soit afin d’en améliorer nettement les performances. L’arrivée de Magento 2 apporte une gestion native du FPC dans la version Community Edition (CE) lorsque Magento 1 ne le proposait que dans la version Enterprise Edition (EE). Il est possible d’utiliser le Full Page Cache avec un des mécanismes suivants :

  • le système de fichier,
  • la base de données,
  • Redis,
  • Varnish.

Architecture d’un projet avec symfony 3

symfony bundle

Développer avec Symfony 3 demande de respecter une certaine architecture bien différente de Symfony 2 afin que notre application respecte le principe  de maintenabilité et réutilisabilité.

De ce fait aujourd’hui tout s’articule autour d’un bundle unique  « src\AppBundle » qui représente le bundle principal de notre application  car  un bundle doit être capable de fonctionner tout seul mais cela n’étant pas le cas toujours.  Finis donc la logique en Symfony 2 qui voulait qu’on divise notre architecture en différents bundles.

Néanmoins nous pouvons créer de nouveau  bundles personnels dans notre application  soit :

  • Bundle qui sera interne à notre application
  • Bundle qui pourra être utilisé dans toutes nos applications et distribuable.

Dans cet article nous allons aborder le rôle des principaux dossiers dans l’architecture  d’un projet Symfony 3 standard, libre à vous selon votre expérience et celle de vos équipes de structurer personnellement certaines parties.

Nouveau Composant Workflow avec Symfony 3.2

symfony_logo

La gestion de l’évolution des statuts ou des états  dans un projet est souvent source de manipulation très complexe.

Aujourd’hui avec le composant Workflow  qui a été ajouté à Symfony 3.2, le développement  d’un tel système est plus souple, plus rapide et plus besoin d’ajouter un bundle tiers.

Nous vous présenterons une vue d’ensemble  de ce nouveau composant afin que vous puissiez avoir une idée de son  fonctionnement  avant la sortie officielle de Symfony 3.2 qui est actuellement en version Beta.

Magento 2 et les Virtual Types

magento_logo

Un « type virtuel » est un mécanisme de l’injection de dépendances de Magento 2. Il permet de changer les arguments d’un constructeur d’un objet spécifique, donc de gérer ses dépendances, sans affecter les autres classes qui ont elles-même une dépendance à cet objet. Dans les faits un virtual type n’est rien d’autre qu’une classe étendant une autre classe.

Il ne faut cependant pas interpréter un virtual type comme étant un moyen de surcharger une classe en modifiant l’une ou l’autre fonction de la classe étendue. Le virtual type n’est pas voué à changer le comportement d’un objet, mais seulement ses dépendances.