Piste :
Différences ¶
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
presentation [2008/06/08 20:52] – édition externe 127.0.0.1 | fr:presentation [2019/09/10 08:39] – laurent | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ~~LANG: | ||
+ | |||
====== Présentation de Jelix ====== | ====== Présentation de Jelix ====== | ||
Ligne 5: | Ligne 7: | ||
- | Jelix est un framework pour PHP5 qui aide les développeurs à la réalisation d' | + | Jelix est un framework pour PHP 7 qui aide les développeurs à la réalisation d' |
Il propose : | Il propose : | ||
Ligne 15: | Ligne 17: | ||
Ces caractéristiques permettent une meilleure réutilisation du code, une capitalisation du savoir-faire, | Ces caractéristiques permettent une meilleure réutilisation du code, une capitalisation du savoir-faire, | ||
- | Jelix utilise au maximum les spécificités de PHP 5.2, afin d' | + | Jelix utilise au maximum les spécificités de PHP 5.6, afin d' |
+ | |||
+ | ====== Philosophie ====== | ||
+ | |||
+ | Nous développons Jelix en gardant ces mots en tête : | ||
+ | |||
+ | * **Performance**: | ||
+ | * **Simplicité**: | ||
+ | * **Flexibilité**: | ||
+ | * **Robustesse**: | ||
+ | * **Pragmatisme**: | ||
===== Fonctionnalités proposées ===== | ===== Fonctionnalités proposées ===== | ||
Ligne 26: | Ligne 39: | ||
* **jDAO, mapping objet-relationnel** reposant sur le design pattern DAO (Data Access Object), se basant sur des fichiers déclaratifs en XML et prenant en charge la génération automatique des requêtes SQL, des problématiques de sécurité (SQL injection etc...). jDao génère des classes PHP avec les requêtes SQL "en dur", permettant alors des performances accrues par rapport à d' | * **jDAO, mapping objet-relationnel** reposant sur le design pattern DAO (Data Access Object), se basant sur des fichiers déclaratifs en XML et prenant en charge la génération automatique des requêtes SQL, des problématiques de sécurité (SQL injection etc...). jDao génère des classes PHP avec les requêtes SQL "en dur", permettant alors des performances accrues par rapport à d' | ||
* **jForms, générateur de formulaire** : à partir d'un simple fichier XML, jForms génère un formulaire en HTML avec la validation javascript adéquate, vérifie les données saisie coté serveur, effectue le chargement ou la sauvegarde des données etc.. Il peut gérer plusieurs instances d'un formulaire en même temps. | * **jForms, générateur de formulaire** : à partir d'un simple fichier XML, jForms génère un formulaire en HTML avec la validation javascript adéquate, vérifie les données saisie coté serveur, effectue le chargement ou la sauvegarde des données etc.. Il peut gérer plusieurs instances d'un formulaire en même temps. | ||
- | |||
* **Moteur de template très léger, performant et évolutif** (jTpl), avec pour les templates une syntaxe à mi-chemin entre Smarty et PHP. Un système de plugin "à la Smarty" | * **Moteur de template très léger, performant et évolutif** (jTpl), avec pour les templates une syntaxe à mi-chemin entre Smarty et PHP. Un système de plugin "à la Smarty" | ||
* **Système événementiel**, | * **Système événementiel**, | ||
Ligne 33: | Ligne 45: | ||
* **Désignation des fichiers et ressources par des sélecteurs**, | * **Désignation des fichiers et ressources par des sélecteurs**, | ||
- | ==== Fonctions et caractéristiques | + | ==== Fonctions et caractéristiques |
- | + | ||
- | Fonctions que l'on retrouve dans les frameworks récents. | + | |
- | * **Services Web** : Jelix prend en charge l' | + | * **Services Web** : Jelix prend en charge l' |
* **Prise en charge de RESTfull** : par simple implémentation d'une interface, on peut définir facilement les traitements suites aux requetes HTTP GET/ | * **Prise en charge de RESTfull** : par simple implémentation d'une interface, on peut définir facilement les traitements suites aux requetes HTTP GET/ | ||
* **Système de thèmes** : il est possible de définir plusieurs thèmes, chacun redéfinissant les templates des modules. | * **Système de thèmes** : il est possible de définir plusieurs thèmes, chacun redéfinissant les templates des modules. | ||
- | * **Système de génération automatique et de mapping d' | + | * **Système de génération automatique et de mapping d' |
* **CRUD générique** : Jelix propose un contrôleur générique permettant de faire une interface d' | * **CRUD générique** : Jelix propose un contrôleur générique permettant de faire une interface d' | ||
* **Des scripts PHP de génération de code** à exécuter en ligne de commande, permettant la création rapide des divers fichiers d'un projet (module, dao, template, controlleur etc) | * **Des scripts PHP de génération de code** à exécuter en ligne de commande, permettant la création rapide des divers fichiers d'un projet (module, dao, template, controlleur etc) | ||
Ligne 46: | Ligne 56: | ||
* **Compatible UTF-8**. C'est d' | * **Compatible UTF-8**. C'est d' | ||
* **Module dédié aux tests unitaires** : les tests unitaires sont essentiels pour créer une application qui soit fiable. Jelix propose donc un module qui fourni une interface pour lancer les tests unitaires et un moyen simple de créer des tests unitaires (reposant sur SimpleTest) | * **Module dédié aux tests unitaires** : les tests unitaires sont essentiels pour créer une application qui soit fiable. Jelix propose donc un module qui fourni une interface pour lancer les tests unitaires et un moyen simple de créer des tests unitaires (reposant sur SimpleTest) | ||
- | |||
- | |||
- | ==== Fonctions et caractéristiques classiques ==== | ||
- | |||
- | Fonctions que l'on retrouve dans beaucoup de frameworks | ||
- | |||
* **L' | * **L' | ||
* Jelix propose **différents générateurs de format** (les objets jResponse) : XHTML, CSS, ATOM, RSS, XML, RDF, XUL, overlay XUL, ZIP, PDF (à partir de fichiers en Latex ou via TCPDF). D' | * Jelix propose **différents générateurs de format** (les objets jResponse) : XHTML, CSS, ATOM, RSS, XML, RDF, XUL, overlay XUL, ZIP, PDF (à partir de fichiers en Latex ou via TCPDF). D' | ||
Ligne 71: | Ligne 75: | ||
===== Une première application ===== | ===== Une première application ===== | ||
- | Lire [[tutoriels: | + | Lire [[fr:tutoriels: |