Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Je viens vers vous pour vous présenter un embryon de plateforme de développement basée sur ZF, je travaille dessus depuis plusieurs mois et j'aimerais avoir quelques avis sur la question. L'architecture est très inspirée de Magento, les connaisseurs pourront s'y retrouver assez facilement, la structure de dossiers est à peu près équivalente et le design du backoffice est à peu de choses près le même pour le moment. L'idée serait de construire une couche au dessus de ZF, qui ne viendrait pas l'étendre directement, mais qui constituerait un équivalent à la plateforme Eclipse si on regarde dans le monde de Java.
J'ai publié une version de développement fonctionnelle de ma plateforme sur Github, elle est accessible à l'adresse http://github.com/gplanchat/one.platform
Les instructions d'installation sont situées dans le fichier INSTALL.textile
Tout est distribué sous licence BSD-3, comme l'est ZF.
Pour le moment, les parties navigables sont :
- Une gestion de login et de logout aux adresses /account/login et /account/logout (login: gplanchat, pass: password)
- Un CMS de base: /admin/cms/page pour l'administration et la page /homepage qui est un exemple de page CMS.
Pour ce qui est des fonctionnalités, il y a :
- Une gestion de Layout/Blocs pour l'affichage, des Zend_View évolués
- Une gestion de l'accès aux données qui fait abstraction du moteur de stockage (MySQL, Session, Fichier, ect...), qui sont équivalents aux modèles de ZF
- Un moteur de backoffice qui génère des grilles et des formulaires à la volée, d'après des fichiers XML. Ce backoffice utilise directement Zend_Form pour les formulaires, les grilles sont elles réalisées from scratch selon la même idéologie. Le formulaire n'est pas finalisé, mais il s'affiche et permet d'organiser les espaces d'édition.
- Chaque site web ou application peut être configuré avec des règles globales et des règles spécifiques
- Un partage des fichiers sources pour tous les sites web ou applications, seul un fichier index.php apparaît dans le dossier public de chacun des sites.
- Un découpage par module, ce qui permet d'activer chacun des modules au cas par cas, selon les besoins du site web ou de l'application
- Une connexion utilisateur sécurisée : le mot de passe ne transite jamais en clair sur le réseau, le gérant du site ne connaît pas lui non plus le mot de passe.
- Une gestion d'évènements
- Une classe gestionnaire de patch au format unix
A l'heure actuelle, une partie des données se situe dans une base de données MySQL, mais un passage sur un autre serveur ou sur un autre type de stockage est possible à l'avenir.
Merci pour vos réponses et encouragements.
Greg
Hors ligne
Je n'ai pas encore vu la palteforme mais en tout cas l'initiative vaut bien d'être encouragée.
J'espère bien qu'elle aboutira.
Hors ligne
Merci à toi, même si tu n'as pas encore testé.
L'architecture est stable aujourd'hui, peu de choses de fond changent, une version complète et utilisable en production peut être envisagée dans les semaines qui viennent après avoir finalisé quelques points et écrit un peu de documentation.
L'ensemble de l'application se configure à travers des fichiers XML, des routes aux formulaires en passant par l'instanciation de modèles, tout (ou presque) peut être modifié sans toucher au code source d'origine. Il est possible de remplacer un comportement standard sans modifier les sources de base, ni avoir à jouer avec l'include_path : un module peut considérablement étendre les fonctionnalités d'un autre module... ou corriger un bug sur un environnement de production spécifique.
Hors ligne
Je viens de publier la version 0.2.0 qui est une version de tests développeur.
Elle inclut en particulier :
- un installateur automatisé qui permet de configurer proprement la plateforme et d'installer et/ou mettre à jour les modules adéquats à la volée.
- un lanceur de commandes shell qui permet de lancer des commandes système, qui sont trop complexes ou impossible à réimplémenter en PHP.
- la manipulation de dépôts Git
- la finalisation du moteur de backoffice, qui inclut désormais la connexion utilisateur
- la correction de divers bugs existants sur les versions de développement précédentes
Les fonctionnalités à venir sont :
- L'ajout de l'API Facebook Graph
- L'utilisation de l'API Twitter
- La création d'un serveur et d'un client OpenID liés au module utilisateur existant
Hors ligne