Salut, essayons de faire le point.
D'un point de vue (très) général, une application web peut se diviser en 3 grandes parties : ce qui est fait côté serveur, ce qui est fait côté client et le document affiché en lui même. Le traitement de la requête de l'internaute côté serveur va créer un document HTML (en général) renvoyé au client. Ce document peut éventuellement contenir des scripts correspondant à un traitement à effectuer côté client. Il contient aussi les informations de manière formatée (par HTML) pour un affichage convivial.
- Passons sur le HTML en lui-même ...
- Les traitements côté client sont fait par du code Javascript. Idéalement, celui-ci ne devrait être utilisé que pour ajouter des effets visuels et améliorer l'ergonomie d'un site au moyen, par exemple, de menus déroulant. Mais tu as entendu parler de la "technologie" AJAX et de Web2.0. Beaucoup de choses sont dites dessus, plus ou moins vraies. La vérité est que Web2.0 est une appelation qui représente un nouveau mode de consommation de l'internet où l'internaute n'est plus seulement spectateur mais aussi contributeur (en donnant son avis sur un blog par exemple), bref, rien de technologique de ce côté là. AJAX veut dire Asynchronous Javascript And XML ; Cela correspond à exécuter un script Javascript côté client qui va faire un chose très précise : utiliser un objet appelé HttpXMLRequest : lors d'un click sur un lien ou d'une autre action de l'utilisateur, au lieu que le navigateur recharge une page complète à partir du serveur, c'est le script Javascript qui va prendre le contrôle, envoyer la même requête au serveur et récupérer le résultat pour l'insérer dans la page web, sans que le navigateur recharge la page. En fait, on peut dire que ce n'est qu'un effet visuel qui donne une impression de page dynamique puisque l'utilisateur ne voit pas le navigateur recharger la page (pas de petit sablier).
Voilà pourquoi tu peux passer à côté de celà car ce n'est qu'un "gadget". Par contre, si tu veux vraiment ce gadget, il faudra en tenir compte dès le départ.
- Le plus important (la seule chose indispensable) pour ton application web sera d'avoir un traitement côté serveur. Là, il faut agrandir l'image que je te donnais au début. Cette partie peut se séparer en de nombreuses couches. Il y a même différents points de vues qui demandent des abstractions différentes et qui séparent les couches de manière différente. Tu as par exemple la modélisation MVC qui sépare (en gros) la modélisation des données, le contrôle de l'application et l'affichage. Tu as la modélisation N-tiers qui va séparer (en gros) l'utilisation d'un modèle de données, l'accès aux données et la manière de stocker les données. Ces deux modélisations sont compatibles. Ces modèles ne sont pas obligatoires, seulement recommandés pour le type d'application que tu semble vouloir développer.
Pour développer cela, il va falloir s'appuyer sur un langage, généralement PHP, Java ou .NET. Je passe sur .NET que je ne connais pas du tout. En PHP, pour modéliser ton application, tu devras tout faire à partir de zéro ou presque car il n'existe pas vraiment de framework fait pour être utilisé dans ce sens. Par contre, la simplicité pour apprendre PHP te permettra d'avancer assez vite. En Java, il existe de nombreux frameworks qui incluent déjà ces modélisations MVC et N-tiers. Il existe aussi de très bons IDE (éditeur de code très avancé) qui permettent de mettre ces solutions en place assez rapidement. Plusieurs fichiers de "configuration" vont te permettre de générer automatiquement de nombreuses parties de ton application pour gagner beaucoup de temps. Par contre, à la fois Java et ces frameworks sont difficiles à appréhender. Ton apprentissage sera donc lent et peu clair.
Voilà, j'espère que c'est suffisamment clair : tu ne peux pas échapper à une longue période de codage pour ce type d'application.
Par contre, il existe effectivement des solutions opensource à des besoins assez généraux. Tu peux en essayer la plupart sur opensourcecms.com. Je te conseille d'essayer OsCommerce, une des solutions les plus connues et qui semble convenir à tes besoins (je me trompe peut-être, tu n'as pas l'air de parler de vendre des produits)
Peut-être un jour existera-t-il des solutions qui permettent de créer des systèmes d'information avec des outils standards (ceux que tu cite) de manière très simplifiée, un peu comme on crée un blog aujourd'hui ; ce sera peut-être le Web3.0 ?
En attendant, bon courage
edit : ortho
Message édité par TheRom_S le 15-09-2007 à 18:35:44
---------------
The Rom's, à votre service