Fondamentaux du logiciel¶
Une architecture MVC¶
Novius OS répond aux standards de découpage Modèle-Vue-Contrôleur, qui définissent des logiques de travail :
- dans la conception des applications ;
- dans l’organisation d’un projet sous Novius OS.
Utilisation de frameworks¶
L’utilisation de frameworks oriente fortement la conception et l’implémentation des applications. Il convient donc de connaitre le rôle de chacun. Pour autant, cette documentation concernant Novius OS avant tout, veuillez vous référer à de la documentation ou tutoriaux externes pour plus de précisions sur ces frameworks.
FuelPHP¶
Consulter les tutoriaux FuelPHP par Novius
Le framework PHP utilisé pour Novius OS est FuelPHP.
Les éléments de FuelPHP les plus utilisés sont ceux qui permettent de valider les données, l’ORM et le mapping des différents fichiers. Au delà de ces éléments, des outils inclus dans le framework simplifient grandement l’implémentation des applications (comme la classe Arr par exemple).
ORM de FuelPHP¶
ORM pour object-relational mapping. En français mapping objet-relationnel.
$new_monkey = Model_Monkey::forge();
$new_monkey->monk_name = 'Julian';
$new_monkey->save();
$monkeys = Model_Monkey::find('all');
foreach ($monkeys as $monkey) {
//...
}
$monkey = Model_Monkey::find(4);
$monkey->delete();
Novius OS est basé sur l’ORM de FuelPHP. Veuillez vous référer à sa documentation.
Behaviours
.Behaviour
veut dire comportement. Les Behaviours
permettent d’étendre des Model
en y ajoutant des comportements standardisés.Ils sont similaires aux Observers de FuelPHP mais plus puissants :
- Comme les
Observers
, ils sont configurables par des options. - Comme les
Observers
, ils peuvent intercepter des événements pour agir sur leModel
(par exemple l’événementbefore_save
se déclenchant avant la sauvegarde). - En plus, ils fournissent aussi des méthodes, d’instance ou statiques, sur le
Model
. - Ils peuvent également fournir de nouveaux événements.
jQuery UI / Wijmo¶
Bien que les actions logiques soient effectuées en PHP côté serveur, Novius OS est en majorité écrit en Javascript. Cela s’explique par la grande importance donnée à l’interface utilisateur et à l’ergonomie (cf. Principes ergonomiques).
Pour proposer des interfaces et interactions riches, Novius OS utilise plusieurs librairies JS :
- jQuery
- Ce framework facilite l’écriture du code JS pour l’édition du contenu HTML. Il n’est pas directement orienté UI.
- jQuery UI
- Ce complément de jQuery permet d’ajouter des éléments d’interface. Une majorité de l’UI de Novius OS est issue de cette librairie.
- Wijmo
- Cette librairie est basée sur jQuery UI et fournit des éléments d’interface complémentaires, appelés widgets.
Il y a une hiérarchie entre ces librairies, Wijmo est la plus impactante sur l’ergonomie de Novius OS.