5160 sujets

Le Bar du forum

Bonjour,

Je souhaite créer une application web de gestion de projet.
J'ai des spécifications assez précises sur ce projet.
J'ai implémenté avec soin mon modèle de données dans MySQL.
J'ai mon environnement serveur opérationnel (apache-php-mysql).
L'ordre des prochaines étapes à suivre est un peu flou pour moi.

par exemple j'ai chargé :
- 960GridSystem CSS pour cadrer un peu les interfaces
- JQuery pour pouvoir jouer un peu avec l'interface

Et là : je commence à partir dans tous les sens. Je code un peu à l'arrache. Ça devient brouillon. Je n'ai développé qu'une page PHP : "Créer une Entité" (chaque projet et utilisateur est rattaché à une entité). C'est un formulaire. Ce travail m'a permis de monter un Header et un Footer que j'ai externalisé par INCLUDE car réutilisé sur toutes les pages. (ça c'est fait)
Je commence à coder du JQuery dans ce formulaire...
Je me suis caller sur la grille CSS 960 GS...

Je souhaite mettre au point un méthode me permettant de clarifier chaque étape de mon travail.
Si vous avez des idées, je suis preneur Smiley biggrin .

Tout d'abord je me demande si la prochaine étape ne serait pas :
- lister toutes les requêtes SQL nécessaires à cette appli avec leurs variables d'entrée ?
- comment ensuite coder efficacement ces requêtes
avec leur variables d'entrée et de sortie en php ?

J'imagine en ce moment comment créer une fonction pour travailler efficacement le SQL qui prendrait par exemple en entrées une ou des variables (filtre, ordre, regroupement...) et qui ressorte directement une données, ou une ligne, ou un tableau facilement affichable...
je ne sais pas si c'est pertinent ou si je réinvente pas la roue...

Il semble que les pages PHP se divisent en 3 catégories :
- formulaire
- affichage d'un tableau
- page texte
Est-ce pertinent de créer les 3 templates correspondants ?

A ce niveau là, dois-je déjà créer un jeu de test ?
Et si oui quelle méthode d'insertion dans la BDD ?

Dois-je réfléchir de suite à l'intégration possible future du multilingue ?
Dois-je réfléchir de suite au back-end ?

Peut-être n'ai je pas les bons outils ?
Notepad++ est-il suffisant ?
J'aime maitriser 100%, donc utiliser Dreamweaver me fait peur.

Je vois beaucoup d'applications web qui ont des fichiers "externes" (ce ne sont pas des pages à proprement parler) qui regroupent des fonctions ou autres (config.php, config_bdd.php, blabla.class.php, functions.php...). Il me semble pas toujours evident de savoir à quel moment on doit coder dans la page ou externaliser.

Bref.. Beaucoup de questions qui me bloquent aujourd'hui !
Si vous avez des idées pour structurer la suite, je suis preneur Smiley biggrin .

Merci par avance !
Modifié par amawalpe (20 Jun 2012 - 19:20)
Bonjour,

tout d'abord, tous mes voeux de succès pour ton projet !

Avant de démarrer, est-ce que tu as déjà regarder ce qu'il existe sur le marché des solutions libres ?
En effet, il existe une multitude d'outils gratuits sur lesquels tu peux baser ta solution.
Avec un peu de chance, tu en auras un qui cadre parfaitement avec ton besoin Smiley smile

@+

Sam
Hello !

Voici quelques étapes pour un projet web :
->Tu commences par les maquettes, jpg/psd ce que tu veux.
-> intégration statique de toute tes pages
A partir de là tu vas pouvoir savoir concrètement quelle données dynamiques tu vas avoir besoin. -> Ta BDD

Tu note tout ce que tu as a faire comme dev une fois l'intégration statique effectuée.
->Tu commences le PHP.

C'est très résumé, mais effectivement, il faut procéder étape par étape ^^
Salut, je commence toujours par définir les fonctionnalités de ce que je veux faire.

Ensuite je dessine les table MySql (première version) afin de répondre à ces fonctionnalités.
Je modélise les SELECT, INSERT, UPDATE, DELETE ... que je vais utiliser par la suite.
J'essaye de juger les performance des accès aux tables.
Reformulation des tables MySql (deuxième version) afin de tenir compte des performances.

Ensuite, je fais le découpage applicatif en produisant les maquettes.
Je commence le développement de toutes mes pages (intégration) HTML et CSS.
J'ajoute en jquery tout ce que je ne peux pas faire uniquement avec HTML+CSS.
Je formalise le tout en faisant en sorte que cela fonctionne sur les principaux navigateurs.

Je développe ensuite en PHP.
Je constitue un jeu d'essai totalement tourné vers la fonctionnel afin de valider le PHP.

Et je termine par un test global de mise en exploitation avant la livraison finale.
Bonjour et merci à vous pour vos commentaires !
J'ai reformalisé (pour moi) vos suggestions en y intégrant mon travail...
Voici donc mon plan d'action !
Il peux être intéressant maintenant de reposter ici un retour à chaque franchissement d'étape.
Je vous tiens donc rapidement au courant !
Merci encore.


- Spécifications détaillée du projet (besoin, objectif, solution, fonctionnalités, contraintes, délais, coûts...)


- Ébauche au crayon de toutes les pages

- Production des maquettes pour toutes les pages en JPG ou PSD


- Mise à disposition d'un environnement de développement opérationnel (apache-php-mysql)

+ Installation du CSS "960 GridSystem" qui permettra un structure homogène des interfaces

+ Installation du JS JQuery qui permettra plus de souplesse avec l'interface (ergonomie, esthétique)


- Développement statique de toutes les pages (HTML et CSS)

- Ajout du Jquery pour tout ce qu'on ne peux pas faire uniquement avec HTML + CSS

- Tests et correction des pages statiques sur les principaux navigateurs


- Concevoir et implémenter la BDD (BDD version 01) :

- Récuération des diagramme de classes issus des spécs pour créer un modèle de données

- Modification éventuelle du modèle de données en répertoriant les données qui deviendront dynamiques en parcourant chaque page statique

- Implémentation dans la BDD

- Création et insertion dans la BDD d'un jeu de test

- Lister et modéliser toutes les requêtes SQL nécessaires à cette appli (avec variables en entrée et en sortie)

- Tester les performances de ces requêtes.

- Restructurer les tables MySql (BDD version 02) si besoin (suite au travail sur les requêtes ou sur les perfs)


- Étudier et structurer les développements PHP à suivre

- Développement du PHP :

- Élaboration de la structure et des rôles des fichiers :
config.php, config_bdd.php, *.class.php, functions.php, etc

- Mise-en-oeuvre d'une fonction pour travailler efficacement le SQL :
en entrée : une ou des variables (filtre, ordre, regroupement, etc)
en sortie : directement une données, ou une ligne, ou un tableau facilement affichable

- Création du Header.php et Footer.php appelables par des INCLUDE

- Création 3 templates PHP pour ces 3 catégories : formulaire, affichage d'un tableau, page texte

- Implémenter chaque page PHP

- ...

- Valider le PHP

- Test global de mise en exploitation avant livraison finale