Développer une application avec CubicWeb

CUBICWEB-DEV5 jours

Objet

CubicWeb est une plateforme permettant, à partir d'une description de modèle de données (entités et relations) , d'obtenir une application fonctionnelle à même de manipuler ces données.
L'architecture interne de CubicWeb permet en particulier de créer une application Web en écrivant des vues personnalisées présentant les informations. Il existe par défaut des vues standards HTML (affichage basique, en liste, en calendrier, etc.) qui permettent de naviguer au sein des informations avec un navigateur Internet dès que le modèle de données est défini. Ces vues, personnalisables, peuvent présenter les informations en HTML (application Web), en XML (Web sémantique), ou sous toute autre forme (texte, CSV, TPM, RDF, OWL, etc.)
Grâce au langage d'interrogation RQL et au mécanisme de sélection automatique de vues mis en œuvre dans la plateforme, chaque utilisateur peut ensuite construire ses propres pages très simplement.
La formation proposée ici se déroule sur cinq jours et permettra aux participants de devenir autonome dans le développement et le déploiement d'applications avec la plateforme CubicWeb. Une large part de la formation sera consacrée à des travaux pratiques permettant de mettre en œuvre immédiatement les concepts ayant été vus dans le cadre du cours.


Public visé

Ce cours s'adresse aux personnes souhaitant développer rapidement des applications CubicWeb de qualité industrielle. Il constitue un excellent moyen de découvrir la plateforme CubicWeb, ses spécificités et ses avantages.


Pré-requis

Programmation régulière en Python.


Programme

Environnement de développement CubicWeb

  • Mise en place

    installation de l'environnement, utilisation de cubicweb-ctl, structure d'un cube, cubes standards

Modèle de données

  • Création d'instance

    définition d'instance, définition d'un modèle de données Yams
  • RQL

    présentation du langage RQL (Relationship Query Language), syntaxe, intérêt

Logique Métier

  • Mise en œuvre d'une logique métier

    présentation des classes d'entités, personnalisation
  • Gestion des événements

    présentation des événements, définition de hooks
  • Définition de workflows

    association d'un processus de publication à un type d'entité
  • Gestion des permissions

    définition de rôles, règles de sécurités RQL

Interface utilisateur

  • Définition de vues

    fonctionnement du registre, sélection, définition
  • Formulaires

    fonctionnement des formulaires standards et personnalisation
  • Structures des pages

    personnalisation des gabarits standards de page, utilisation de CSS
  • Traductions

    intégration de gettext avec cubicweb

Écriture de code industriel

  • Écritures de tests

    utilisation des outils de tests disponibles dans la plateforme

Notions avancées

  • Modèle de données

    introspection du modèle de données, migration de modèles
  • Interrogation d'une instance distante

    utilisation de Pyro avec CubicWeb
  • AJAX

    communication Client / Serveur avec AJAX, appel de fonctions python depuis javascript


Adaptations possibles

Cette formation peut être adaptée afin de répondre au mieux à vos besoins.
L'adaptation des cours en intra-entreprise ne pose aucun problème ; cette opération est cependant plus difficile pour les cours en inter-entreprises. N'hésitez pas à demander conseil à notre service commercial.


Conditions

Il est possible d'organiser, à votre demande, une ou plusieurs sessions en intra-entreprise (sur site) n'importe où en France ou en Europe.
Chaque participant à la formation dispose d'un exemplaire personnel du support de cours et du manuel d'exercices.

Durée

5 jours soit 35 heures

Langue

Au choix, française ou anglaise

Intervenant

Tous les intervenants animant cette formation bénéficient de compétences pédagogiques reconnues. D'autre part, ils participent activement au développement de la plateforme CubicWeb.

Travaux pratiques

Cette formation accorde une place prépondérante aux travaux pratiques qui permettent, tout au long du cours, de mettre en œuvre et d'assimiler les concepts théoriques.

Intra-entreprise

  • groupes de 10 personnes maximum
  • 5 journées