Création d'un projet de code chaîne avec l'interface de ligne de commande Blockchain App Builder

Pour créer un projet de code chaîne lors de l'utilisation de l'interface de ligne de commande Blockchain App Builder, vous utilisez un projet de code chaîne à partir d'un fichier de spécification détaillé. Le projet généré contient alors tous les fichiers dont vous avez besoin.

Contexte

La commande init de Blockchain App Builder initialise et met à l'échelle un projet de code chaîne prêt à l'emploi. Sur la base d'une entrée simple, la commande init peut générer des projets de code chaîne complexes qui incluent les fonctionnalités suivantes :
  • Plusieurs ressources (modèles) et leurs comportements (contrôleurs)
  • Générer automatiquement des méthodes CRUD (création/lecture/mise à jour/suppression) et non CRUD
  • Validation automatique des arguments
  • Marquage/désérialisation des arguments
  • Capacité de persistance transparente (ORM)
  • Possibilité d'appeler des requêtes riches

Le projet généré suit le modèle/contrôleur et le modèle de décorateur, ce qui permet de spécifier les propriétés d'une ressource qui sont tenues à jour dans le livre en tant que champs saisis et de les étendre avec des comportements et des règles de validation spécifiques. Ce modèle réduit le nombre de lignes de code, ce qui facilite la lisibilité et l'évolutivité.

Prérequis

Avant d'échafauder un projet, vous devez créer un fichier de spécification d'entrée. Pour plus d'informations, reportez-vous à Fichier de spécification d'entrée.

Echafaudage du projet de code chaîne avec la commande init

La saisie de ochain init -h répertorie l'utilisation de la commande avec toutes ses options. La commande init possède les options suivantes :
  • --cc/-c :

    Nom du projet de code chaîne. La valeur par défaut est MyChaincode.

  • --lang/-l

    Langage du code chaîne échafaudé. Blockchain App Builder prend en charge Typescript (ts) et Go (go). Si aucune option n'est spécifiée, la langue par défaut est ts.

  • --conf/-f ou --spec

    Chemin d'un fichier de spécification d'entrée. Blockchain App Builder lit le fichier de spécification d'entrée et génère le projet échafaudé avec de nombreux outils d'aide, qui aident à réduire l'effort de développement global. Tirer pleinement parti du fichier de spécification d'entrée peut réduire considérablement le temps de développement.

    Le fichier de spécification peut être au format yaml ou json. Si le chemin n'est pas spécifié, il s'agit par défaut du répertoire en cours. Reportez-vous à Fichier de spécification d'entrée.

  • --out/-o

    Répertoire de sortie du projet de code chaîne échafaudé. S'il n'est pas spécifié, le projet échafaudé est généré dans le répertoire en cours.

    Le résultat est un projet de code chaîne Go ou Typescript entièrement contenu, léger et évolutif.

  • --root/-r

    Valide et obligatoire uniquement pour Go. Répertoire racine de la variable GOHOME pour vos codes chaîne Go. La valeur par défaut est example.com.

Exemple
my-mac:~ name$ ochain init --cc MyNewTsProject --lang ts --conf spec.yml

Par défaut

Si aucune option n'est indiquée dans la commande ochain init, le nom du projet échafaudé est MyChaincode et la langue est TypeScript.

Le fichier MyChaincode.model.ts contient une seule ressource, appelée MyAsset, avec une propriété nommée value. Le fichier MyChaincode.controller.ts contient un contrôleur avec les méthodes CRUD correspondantes pour le modèle MyAsset.

Sortie

Une fois le processus terminé, vous disposez d'un projet de code chaîne entièrement fonctionnel que vous pouvez déployer localement ou sur une instance Oracle Blockchain Platform distante. Pour obtenir un aperçu détaillé des fichiers créés, reportez-vous aux sections suivantes : Pour une présentation détaillée d'un projet basé sur un jeton, reportez-vous également aux sections suivantes :