Boardz2 : Design

Framework object

Motivations

L'établissement d'un Framework spécifique pour la conception du serveur Boardz vise à résoudre les besoins de base d'une infrastructure applicative “objet”, afin de permettre un développement ultérieur rapide de nouveaux principes dans un espace de sécurité de conception défini.

Ces besoins sont :

Assurer la persistance de données à long terme (base de données rémanente) et les transferts entre la mémoire et ce stockage

Assurer l'exportabilité (et donc l'import) de données du modèle

Assurer le démarrage, et donc le chargement de l'état initial de l'application

Assurer le chargement des paramètres de fonctionnement et l'adaptation à l'environnement d'exécution (configuration)

Faciliter une administration par Réflexion sur les objets applicatifs

Principes de base

Tout principe applicatif nommable doit avoir une classe objet qui le représente.

On distinguera les principes persistants des principes transitoires (runtime)

Tout principe persistant doit reposer sur une classe unique assurant la fonction abstraite d'interaction avec la couche de persistance de données. Cette classe est à l'origine de toute hiérarchie persistante dans le modèle Boardz. On la nomme boardz\utils\BDObject.

Organisation de la persistance de données

La persistance de données de Boardz2 repose sur une base de données propre de type Mysql/MariaDB. Cette base contient des tables propres à chaque famille d'objets (et non une table par classe). Ainsi, une famille d'objet sera stockée au même endroit, avec un structure de champs générique, et une structure de champs d'extension pour les attributs propres de la classe.