goa/doc/devmanual_fr/chap_fondements_erudi.txt
changeset 0 b97547f5f1fa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/goa/doc/devmanual_fr/chap_fondements_erudi.txt	Wed Nov 05 15:52:50 2008 +0100
@@ -0,0 +1,71 @@
+Fondements CubicWeb
+================
+
+Concepts et vocabulaire
+-----------------------
+
+*schéma*
+  le schéma définit le modèle de données d'une application sous forme d'entités
+  et de relations, grâce au package `yams`_. C'est l'élément central d'une
+  application. Il est initialement défini sur le système de fichiers et est
+  stocké dans la base de données lors de la création d'une instance. CubicWeb 
+  fournit un certain nombres de types d'entités inclus systématiquement 
+  car nécessaire au noyau CubicWeb et une librairie de composants devant être
+  inclus explicitement le cas échéant.
+
+*source*
+  une source de données est un conteneur de données quelquonque (SGBD, annuaire
+  LDAP...) intégré par l'entrepôt CubicWeb. Un entrepôt possède au moins une source
+  dite "system" contenant le schéma de l'application, l'index plein-texte et
+  d'autres informations vitales au système.
+
+*composant*
+  un composant est un modèle regroupant un ou plusieurs types de données et/ou
+  des vues afin de fournir une fonctionalité précise, ou une application CubicWeb
+  complète utilisant éventuellement d'autres composants. Les différents
+  composants disponibles sur une machine sont installés dans
+  `/usr/share/cubicweb/templates`
+
+*result set*
+  objet encaspulant les résultats d'une requête RQL et des informations sur
+  cette requête.
+
+.. _`Python Remote Object`: http://pyro.sourceforge.net/
+.. _`yams`: http://www.logilab.org/project/name/yams/
+
+
+Structure générale d'une application LAX
+----------------------------------------
+
+Un composant complexe est structuré selon le modèle suivant :
+
+::
+    
+  .
+  |-- app.yaml
+  |-- custom.py
+  |-- data
+  |-- cubicweb/
+  |-- i18n/
+  |-- logilab/
+  |-- main.py
+  |-- mx/
+  |-- rql/
+  |-- schema.py
+  |-- simplejson/
+  |-- tools/
+  |   |-- generate_schema_img.py
+  |   `-- i18ncompile.py
+  |-- views.py
+  |-- yams/
+  `-- yapps/
+        
+
+où :
+
+* ``schema.py`` contient la définition du schéma
+* ``views.py`` contient les définitions des vues
+* ``i18n`` contient les catalogues de messages pour les langues supportées (coté
+  serveur et interface web) 
+* ``data`` contient des fichiers de données arbitraires servis statiquement
+  (images, css, fichiers javascripts)... (coté interface web uniquement)