Outils pour utilisateurs

Outils du site


documentation:architecture

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
documentation:architecture [2021/05/12 17:02]
chloe créée
documentation:architecture [2021/10/19 15:52] (Version actuelle)
chloe [Zord déployé]
Ligne 14: Ligne 14:
   - /store (entrepôt de fichiers "produits" qui seront exploités par les "engines")   - /store (entrepôt de fichiers "produits" qui seront exploités par les "engines")
  
 +====== Les différents composants ======
  
 +===== zord-core =====
 +
 += composant générique pour développer des applications Zord
 +
 +Ce composant comprend des fonctions transverses sur lesquelles on peut s'appuyer pour développer n'importe quelle application
 +
 +===== zord-store =====
 +
 += composant générique servant à ranger des ouvrages, au sens large (contenu et/ou métadonnées)
 +
 +Ce composant comprend la fonction générique d'import : extraction de métadonnées, indexation de contenu/métadonnées, organisation des ressources associés (images, par exemple)
 +
 +C'est sur la base de ces fonctions génériques que sont ensuite ajoutées les fonctions spécifiques à zord-library et au shop
 +
 +
 +===== zord-library =====
 + 
 += composant générique pour des portails de publication d'ouvrage
 +
 +Ce composant comprend la fonction générique d'import des fichiers XML-TEI qui fait le découpage en fragments et leur rendus en XTML/CSS/JavaScript
 +
 +C'est sur la base de ce composant que l'on construit des portails spécifiques à tel ou tel éditeur (Untel1-library et Untel2-library)
 +
 +
 +Untel-library = composant des différentes instances des portails de Untel et dans chacune d'entre elles des options propres à chaque contexte : fonctionnalités et les rendus spécifiques.
 +
 +Untel-common = composant d'accès aux applications/base de données spécifiques à Untel en lien avec Zord (catalogue produit, autres site de publication, etc)
 +
 +Untel-shop = <del>composant propres à Untel pour sa boutique</del>
 +
 +===== Zord déployé =====
 +<code>
 +/home/user/zord
 +  /counters
 +  /engines  <!-- c'est là que l'on rangera les différentes instances de Zord -->
 +  /scripts
 +  /stores <!-- ce sont les fichiers exploités par les différentes instances de Zord -->
 +</code>
 +
 +<code>
 +../engines
 +    /library <!-- répertoire des instances pour les portails. Ci-dessous, les différentes instances de Zord déployées -->
 +      /dev
 +      /ivvq
 +      /prod
 +    /shop <!-- répertoire des instances de boutiques -->
 +      /dev
 +      /prod
 +</code>
 +
 +<code>
 +../library/prod
 +    /.git <!-- remote = https://github.com/DrozNumerique/zord-core.git (Zord-core est le framework générique sur lequel s'appuient portails aussi bien que boutique) -->
 +    /classes
 +    /components
 +    /config
 +    /install
 +    /locales
 +    /templates
 +    /web
 +    .gitignore
 +    README.md
 +    boot.php
 +    invoke.php
 +    process.php
 +    zord
 +</code>
 +
 +Dans le répertoire /components de Zord_Core, on va déployer (cloner) les composants Zord_library et Zord_shop et leur attribuer un numéro d'ordre bas car ce sont la base de nos fonctionnalités, styles, etc.
 +
 +<code>
 +/zord/engines/library/prod/components/10-zord-library
 +    /.git <!-- remote = https://github.com/DrozNumerique/zord-library.git -->
 +    /build
 +    /classes
 +    /config
 +    /locales
 +    /logs
 +    /templates
 +    /web
 +    /xml
 +    .gitignore
 +    README.md
 +</code>
 +
 +<code>
 +/home/user/zord/engines/library/prod/components/05-zord-store
 +<!-- store fait ici référence à un "magasin" au sens de //repository//, référentiel d'ouvrages (et non pas à une "boutique" au sens de site commercial, de //shop// -->
 +    /.git <!-- remote = https://github.com/DrozNumerique/zord-store.git -->
 +    /classes
 +    /config
 +    /locales
 +    /templates
 +    /web
 +    .gitignore
 +    README.md
 +</code>
 +
 +Si on veut surcharger ces deux composants avec des éléments propres à un contexte (une entreprise donnée, etc.) alors on clone une seconde fois l'un, l'autre ou ces deux composants en leur attribuant un numéro d'ordre plus élevé (20, 30, 40...) et un nom signifiant du type : 20-untel-store, 30-untel-libray, etc.
documentation/architecture.1620831760.txt.gz · Dernière modification: 2021/05/12 17:02 de chloe