Creación de un proyecto de código de cadenas con la CLI de Blockchain App Builder
Para crear un proyecto de código de cadenas con Blockchain App Builder, debe andamiar un proyecto de código de cadenas a partir de un archivo de especificación detallado.
Antecedentes
init
de Blockchain App Builder inicializa y andamiaja un proyecto de código de cadenas listo para usar. En función de una entrada simple, el comando init
puede generar proyectos de código de cadenas complejos que incluyen las siguientes funciones:
- Varios activos (modelos) y sus comportamientos (controladores)
- Métodos CRUD generados automáticamente (Crear/Leer/Actualizar/Suprimir) y no CRUD
- Validación automática de argumentos
- Distribución/desregulación de argumentos
- Capacidad de persistencia transparente (ORM)
- Soporte de consultas enriquecido
El proyecto generado sigue el patrón de modelo/controlador y decorador, que permite especificar las propiedades de un activo que se mantienen en el libro mayor como campos con tipo y ampliarlas con comportamientos específicos y reglas de validación. Este patrón reduce el número de líneas de código, lo que puede ayudar con la legibilidad y la escalabilidad.
Requisitos
Antes de andamiar un proyecto, debe crear un archivo de especificación de entrada. Para obtener más información, consulte Archivo de especificación de entrada.
Andamios del proyecto Chaincode con el comando init
ochain init -h
, se muestran las opciones y el uso del comando. El comando init
tiene las siguientes opciones:
- --cc/-c:
Nombre del proyecto de código de cadenas. El valor por defecto es
MyChaincode
. - --lang/-l
El lenguaje del código de cadenas del andamio. Blockchain App Builder admite TypeScript (
ts
) y Go (go
). Si no se especifica ninguna opción, el idioma por defecto ests
. - --conf/-f o --spec
Ruta de acceso a un archivo de especificación de entrada. Blockchain App Builder lee el archivo de especificación de entrada y genera el proyecto andamiaje con muchas herramientas auxiliares, que ayudan a reducir el esfuerzo de desarrollo general. Aprovechar al máximo el archivo de especificación de entrada puede reducir significativamente el tiempo de desarrollo.
El archivo de especificación puede tener el formato
yaml
ojson
. Si no se especifica la ruta, se define por defecto en el directorio actual. Consulte Archivo de especificación de entrada. - --out/o
Directorio de salida del proyecto de código de cadena de andamios. Si no se especifica, el proyecto de andamios se genera en el directorio actual.
La salida es un proyecto de código de cadena TypeScript o Go totalmente contenido, ligero y escalable.
- --root/r
Válido y obligatorio solo para Go. El directorio raíz de la variable GOHOME para los códigos de cadenas de Go. El valor por defecto es
example.com
.
ochain init --cc MyNewTsProject --lang ts --conf spec.yml
Valores por Defecto
Si no se especifica ninguna opción en el comando ochain init
, el nombre del proyecto de andamios es MyChaincode
y el idioma es TypeScript.
El archivo MyChaincode.model.ts
contiene solo un activo, denominado MyAsset
, con una propiedad denominada value
. El archivo MyChaincode.controller.ts
contiene un controlador con los métodos CRUD correspondientes para el modelo MyAsset
.
Salida
- Proyecto de token TypeScript andamiado para ERC-1155
- Proyecto Scaffolded Go Token para ERC-1155
- Proyecto NFT de andamios TypeScript para ERC-721
- Proyecto NFT de andamios Go para ERC-721
- Proyecto TypeScript andamiado para el marco de taxonomía de token
- Proyecto Scaffolded Go para el marco de taxonomía de token