MeliFramework
-
<p>Alors moi je vais proposer pas mal de fonctionnalités de fond :</p>
<ul><li>Un ORM</li>
<li>Une gestion dynamique des URLs</li>
<li>Gérer les appels RESTful</li>
<li>Évidement adopter une construction MVC</li>
<li>Pouvoir configurer et gérer différents environnements (test, dev, beta, prod, ....)</li>
<li>Gérer et capturer les erreurs et exceptions côté serveur (librairie de type Whoops)</li>
<li>Adopter une construction permettant l'exécution de routines évènementielles</li>
<li>Un système de profiling et de benchmarking</li>
</ul><p>Et si je vous dit que tout ça, j'ai déjà en stock ?</p> -
<p>Ah, là ça peut être clairement intéressant si tu as déjà tout ça !
<br/>
Tu vas encore nous faire culpabiliser, avec ta participation, héhé.<br/>
J'ai ajouté une fonctionnalité mailing, l'idée serait de voir si on peut interagir facilement avec un serveur mail pour récuper/lister/envoyer des mails (c'est une suggestion).</p> -
<p>Avant de commencer, il faut qu'on parte sur de bonnes bases. Pour cela il nous faut organiser correctement nos dossiers pour qu'on puisse s'y retrouver facilement. Je propose quelque chose comme ça (à compléter) :</p>
<ul><li>System : Contient tous les scripts et bibliothèques pour que le framework fonctionne correctement. L'utilisateur n'a pas besoin de toucher à ce dossier.</li>
<li>Sources : Contient tous les scripts créés par l'utilisateur : ses modules, ses entitiés, ....</li>
<li>Web : Contient les ressources du site web (css, police d'écriture, images, ...).</li>
<li>Config : Contient les configurations du framework, l'utilisateur peut les modifier.</li>
</ul><p> </p>
<p>Voila ma proposition n'hésitez pas à votre tour d'en émettre une.</p> -
<blockquote class="ipsQuote" data-cite="Abraham" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="9797" data-ipsquote-contentid="951" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1406542207" data-ipsquote-username="Abraham"><div>
<div>
<p>Utilisation d'une librairie externe pour la partie CSS / HTML ? Du genre Bootstrap ou Foundation. </p>
</div>
</div></blockquote>
<p> </p>
<p>Il me semble que Soulalex voulait justement faire tout en partant de 0. Après c'est à débattre afin de savoir si la majorité préfère avec ou sans Bootstrap.
</p>
<p></p><blockquote class="ipsQuote" data-cite="Soulalex" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="9798" data-ipsquote-contentid="951" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1406543725" data-ipsquote-username="Soulalex"><div>
<div>
<p>Avant de commencer, il faut qu'on parte sur de bonnes bases. Pour cela il nous faut organiser correctement nos dossiers pour qu'on puisse s'y retrouver facilement. Je propose quelque chose comme ça (à compléter) :</p>
<ul><li>System : Contient tous les scripts et bibliothèques pour que le framework fonctionne correctement. L'utilisateur n'a pas besoin de toucher à ce dossier.</li>
<li>Sources : Contient tous les scripts créés par l'utilisateur : ses modules, ses entitiés, ....</li>
<li>Web : Contient les ressources du site web (css, police d'écriture, images, ...).</li>
<li>Config : Contient les configurations du framework, l'utilisateur peut les modifier.</li>
</ul><p> </p>
<p>Voila ma proposition n'hésitez pas à votre tour d'en émettre une.</p>
</div>
</div></blockquote>
<p> </p>
<p>Pour ma part, cette organisation me convient, à voir si d'autres y trouvent quelque chose à redire.
</p> -
<blockquote class="ipsQuote" data-cite="Soulalex" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="9798" data-ipsquote-contentid="951" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1406543725" data-ipsquote-username="Soulalex"><div>
<div>
<p>Avant de commencer, il faut qu'on parte sur de bonnes bases. Pour cela il nous faut organiser correctement nos dossiers pour qu'on puisse s'y retrouver facilement. Je propose quelque chose comme ça (à compléter) :</p>
<ul><li>System : Contient tous les scripts et bibliothèques pour que le framework fonctionne correctement. L'utilisateur n'a pas besoin de toucher à ce dossier.</li>
<li>Sources : Contient tous les scripts créés par l'utilisateur : ses modules, ses entitiés, ....</li>
<li>Web : Contient les ressources du site web (css, police d'écriture, images, ...).</li>
<li>Config : Contient les configurations du framework, l'utilisateur peut les modifier.</li>
</ul><p> </p>
<p>Voila ma proposition n'hésitez pas à votre tour d'en émettre une.</p>
</div>
</div></blockquote>
<p> </p>
<p>Ca me convient et même ca ressemble beaucoup à mon organisation personnelle :</p>
<ul><li>app : tout le code applicatif (modèles, controllers, vues, helpers, ...)</li>
<li>config : les fichiers de configurations</li>
<li>system : le code du framework (Router, ORM, ...)</li>
<li>webroot : la racine du virtual host avec toutes les ressources (css, js, images, ...)</li>
</ul> -
<p>La gestion des formulaires avancés serait la bienvenue, non ?
</p> -
<p>Ce qu'on peut faire c'est un système d'application (pour mieux organiser notre site. Par exemple, on va avoir le frontend et le backend). Ce qui donne quelque chose comme ça si on reprend arborescence :</p>
<ul><li>Sources
<ul><li>Applications : Une application sera une partie du site
<ul><li>Modules : Contient les contrôleurs et les vues.</li>
<li>Ressources : Contient les configurations de l'application et d'autres ressources comme un layout particulier.</li>
</ul></li><li>Models : Entités de la base de données et managers.</li>
</ul></li>
<li>Config</li>
<li>System
<ul><li>Core</li>
<li>Libraries</li>
</ul></li><li>Web</li>
</ul><p> </p>
<p>Bon voilà je trouve que c'est un peu bancal donc n'hésitez pas à reproposer des idées.</p>
<p></p><blockquote class="ipsQuote" data-cite="Eloha" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="9809" data-ipsquote-contentid="951" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1406552569" data-ipsquote-username="Eloha"><div>
<div>
<p>La gestion des formulaires avancés serait la bienvenue, non ?
</p>
</div>
</div></blockquote>
<p>La gestion des formulaires viendra plus tard
</p> -
<p>Je propose aussi une arborescence complète, a commenter :</p>
<ul><li>app : dossier des applications
<ul><li>controllers : Ensemble des controllers
<ul><li>Un dossier par namespace contenant chacun les controllers</li>
</ul></li><li>helpers : Ensemble des fichiers avec des fonctions d'aides</li>
<li>hooks : Ensemble des fonctions à appel évènementiel (par ex: un truc à faire avant chaque appel de page)</li>
<li>libraries : Toutes les ressources et librairies externes</li>
<li>models : Tous les modèles utilisateurs + ceux pré-intégré
<ul><li>mapping : les fichiers de mapping BDD des modèles (gestion de l'ORM)</li>
</ul></li><li>views : Contient toutes les vues
<ul><li>Plus un dossier par controller qui contient les vues du controller</li>
<li>errors : Contient tous les affichages d'erreurs (la page pour un 404, une erreur 500, ...)</li>
<li>layouts : Contient tous les layouts</li>
</ul></li></ul></li>
<li>config : Tous les fichiers de configuration (BDD, site, environnement)</li>
<li>system : la base du framework
<ul><li>core : le noyau et toute la gestion de base</li>
<li>helpers : toutes les fonctionnalités annexes de bas niveau (gestion du cache, des sessions, des inputs, des cookies, ...)</li>
<li>librairies : Toutes les librairies internes (mais facultatives) au noyau (par ex: gestion des erreurs, benchmarking)</li>
<li>orm : ben... l'ORM</li>
</ul></li><li>webroot : la racine du site
<ul><li>Les sous dossiers en fonctions des besoins (css, js, images, ...)</li>
</ul></li></ul><p> </p>
<p>Dites-moi ce que vous en pensez !</p> -
<p>Sinon...est-il nécessaire de faire connaître le projet sur divers site dés maintenant, si certains ne connaissant pas Melinyel ( Eh ben...il serait temps de se bouger !
) veulent quand même participé à ce projet ?
</p> -
<blockquote class="ipsQuote" data-cite="Soulalex" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="9858" data-ipsquote-contentid="951" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1406638176" data-ipsquote-username="Soulalex"><div>
<div>
<p>S'ils veulent participer au projet, il faudra qu'ils s'inscrivent sur le forum pour suivre l'actualité du développement du framework. Après on empêche personne de proposer des scripts.</p>
</div>
</div></blockquote>
<p> </p>
<p>Absolument
</p>
<p>C'est encore une ébauche, il faut attendre de voir qui est vraiment disposé à faire ce framework. Tu connais des personnes qui ne sont pas sur Melinyel mais qui sont intéressées par ce projet, Eloha ?</p> -
<p>Voici un diagramme UML du framework dans les grandes lignes.</p>
<ul><li>La classe Kernel gère tout dans le framework.</li>
<li>La classe Application gère l'application.</li>
<li>La classe Controller gère les contrôleurs.</li>
<li>La classe Page gère la page (génération, ...).</li>
<li>La classe Router gère les routes.</li>
</ul><p><a class="attach-link" href="/assets/uploads/ips/monthly_07_2014/post-5-0-43130000-1406651778.png"><img alt="post-5-0-43130000-1406651778_thumb.png" src="/assets/uploads/ips/monthly_07_2014/post-5-0-43130000-1406651778_thumb.png" width="100"/></a></p> -
<blockquote class="ipsQuote" data-cite="Soulalex" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="9874" data-ipsquote-contentid="951" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1406651957" data-ipsquote-username="Soulalex"><div>
<div>
<p>Voici un diagramme UML du framework dans les grandes lignes.</p>
<ul><li>La classe Kernel gère tout dans le framework.</li>
<li>La classe Application gère l'application.</li>
<li>La classe Controller gère les contrôleurs.</li>
<li>La classe Page gère la page (génération, ...).</li>
<li>La classe Router gère les routes.</li>
</ul><p><img alt="attachicon.gif" src="<base_url>/public/style_images/tctc91_glare/attachicon.gif"/><a href="<base_url>/index.php?app=core&module=attach§ion=attach&attach_rel_module=post&attach_id=170">diag_uml_meliframework_rev1.PNG</a></p>
</div>
</div></blockquote>
<p>C'est pas un peu tôt pour commencer à faire de l'UML, alors qu'on ne sait même pas ce qu'il va devoir faire ce framework ni comment ?</p> -
<p>Justement non, autant faire étape par étape pour que chacune soit bien réalisée. Donc la première étape sera de réaliser toute la base du site (les fonctions vraiment de base) ainsi que la gestion des applications, des contrôleurs, de la page, ...</p>
<p> </p>
<p>Si on commence à intégrer beaucoup de choses à la fois on ne va pas s'en sortir. On va essayer de faire quelque chose d'assez modulable pour qu'on puisse intégrer justement par la suite tous les composants dont on aura besoin (session, gestion des DB, ...).</p>
<p> </p>
<p>Et l'avantage de faire un diagramme c'est justement de définir comment va procéder le site pour générer demandée (mais j'avoue qu'il est très mal fait ^^). Après je ne vois pas trop ce que tu veux dire par "ce qu'il devra faire", comme tous les framework il devra offrir à l'utilisateur de nombreux outils pour concevoir son site web et ce le plus simplement possible.</p>
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login
</p>