Tutoriel : Créer votre premier projet

Dans ce tutoriel vous découvrirez comment créer votre premier projet, personnaliser votre site et ajouter vos premières pages spécifiques

Architecture du projet

Avant d'aller plus loin dans la découverte de puzzleApp, penchons nous sur son architecture, comment sont rangés les fichiers et à quoi il servent.

1. Repertoires et fichiers 

  • Dossier Apps 

Ce dossier contient les fichiers de toutes les applications y compris celle que vous allez créer

  • Dossier Cache

Ce dossier contient tous les fichiers cache générés pour accelerer votre site. Il peut être utile de le vider si vous souhaitez voir vos modifications tout de suite.

  • Dossier Core

Ce dossier contient le framework de base permettant de faire tourner votre site. IL EST INTERDIT D'ALLER METTRE LE MAINS DEDANS .  Non mais si vous le modifier penser bien que le jour ou il y a une montée de version toutes modifications seront écrasée

  • Dossier Library

Ce dossier vous permet de stocker vos library externe

  • Dossier Log 

Contient les log de l'application

  • Dossier View

On la vue dans le tutoriel précedent, c'est dans ce dossier que vous pouvez surcharger les view des autres applications et aussi enregistrer tous vos template utiles, comme les template d'email par exemple

  •  Dossier Web

Ce dossier contient tout le contenu utile comme le images, les fiches css, les fichiers javascript ...

Il contient aussi un dossier Data qui est le répertoire de sauvegarde des applications. Par exempel l'application Blog va y mettre ces images.

C'est aussi le point d'entre du site, il contient donc les fichiers d'amorcage comme

  • index.php.
  •  Ajax.php :  pour les appels Ajax
  •  script.php :  pour obtenir les javascript compréssé
  • style.css : pour obtenir les css  

 

Enfin à la racine se trouve les fichiers de configuration, vous pouvez en définir plusieurs comme Dev, Preprod, Prod ... 

 

2.Architecture d'une application 

Toutes les applications on la même architecture. Vous devez à minima garder aussi cette arborescence pour les applications que vous créer afin d'être sur que le framework. En utilisant L'ide celui-ci créera automatiquement les bons fichiers aux bons endroits. 

 

 

  • Dossier Db

Ce dossier contient les scripts de création de chaque table, mais aussi un script d'installation et de suppression. Ainsi lorsque vous ajouté ou supprimé une application sur votre site vous êtes sur de garder une base de données propre.

  • Dossier Entity

Les entity sont les objets métier qui font le liens entre votre application et la base de données. Elles sont apellé par un EntityManager qui gérer au mieux votre base de données en mettant certains élements en cache.

  • Dossier Helper

Ce dossier contient des classes statiques pour gérer, controler vos fonctionnalitées.

  • Dossier Images

Certains applications peuvent avoir besoin d'image elles sotn donc stockées dans ce repertoire.

  • Dossier Modele

PuzzleApp utilise une architecture MVC. Les modéles sotn donc des class qui gérent vos données

  • Dossier Module 

Chaques fonctionnalité importante de l'application est gérer par un module. C'est un controller.  

Les deux controller principaux par applications sont :

  • Le module Front avec le FrontController c'est lui qui s'occuperas d'afficher les informations importante sur le front office
  • Le module Home avec le HomeController , c'est lui qui s'occuperas d'afficher et gérer les informations coté back offiche  

Enfin chaque application posséde ces propres fichiers :

  • xxx.css :  le style de l'application
  • xxx.js : tout les javascript de l'application. /! Celui-ci est compressé avant son utilisation, vosu devez alors être régoureux dans vos développements.
  • xxx.php : qui est le point d'entrée de l'application et qui gére les appels important.
  • xxx.xml : qui est le fichier d'interface de votre application coté back.