Crie um Projeto de Chaincode com a CLI do Blockchain App Builder
Para criar um projeto de chaincode ao usar a CLI do Blockchain App Builder, você organiza um projeto de chaincode com base em um arquivo de especificação detalhado. O projeto gerado então contém todos os arquivos do que você precisa.
Histórico
init
do Blockchain App Builder inicializa e organiza um projeto de chaincode pronto para uso. Com base em uma entrada simples, o comando init
pode gerar projetos de chaincode complexos que incluem os seguintes recursos:
- Vários ativos (modelos) e seus comportamentos (controladores)
- Gerar automaticamente métodos CRUD (Criar/Ler/Atualizar/Excluir) e não CRUD
- Validação automática de argumentos
- Desarmamento/desestruturação de argumentos
- Capacidade de persistência transparente (ORM)
- A capacidade de chamar consultas avançadas
O projeto gerado segue o padrão de modelo/controlador e decorador, que permite que as propriedades de um ativo que são mantidas no razão sejam especificadas como campos digitados e estendidas com comportamentos específicos e regras de validação. Esse padrão reduz o número de linhas de código, o que ajuda na legibilidade e na escalabilidade.
Pré-requisitos
Antes de montar um projeto, você deve criar um arquivo de especificação de entrada. Para obter mais informações, consulte Arquivo de Especificação de Entrada.
Andaime o Projeto Chaincode com o Comando init
ochain init -h
listará o uso do comando com todas as suas opções. O comando init
tem as seguintes opções:
- --cc/-c:
O nome do projeto de chaincode. O valor padrão é
MyChaincode
. - --lang/-l
A linguagem do código de cadeia de andaimes. O Blockchain App Builder suporta Typescript (
ts
) e Go (go
). Se nenhuma opção for especificada, o padrão do idioma seráts
. - --conf/-f ou --spec
O caminho para um arquivo de especificação de entrada. O Blockchain App Builder lê o arquivo de especificação de entrada e gera o projeto de andaimes com muitas ferramentas auxiliares, que ajudam a reduzir o esforço geral de desenvolvimento. Aproveitar ao máximo o arquivo de especificação de entrada pode reduzir significativamente o tempo de desenvolvimento.
O arquivo de especificação pode estar no formato
yaml
oujson
. Se o caminho não for especificado, ele assumirá como padrão o diretório atual. Consulte Arquivo de Especificação de Entrada. - --saída/saída
O diretório de saída do projeto de chaincode com andaimes. Se não for especificado, o projeto de andaime será gerado no diretório atual.
A saída é um projeto de código de cadeia Typescript ou Go totalmente contido, leve e escalável.
- --raiz/-r
Válido e obrigatório somente para Go. O diretório raiz na variável GOHOME para seus chaincodes Go. O valor padrão é
example.com
.
my-mac:~ name$ ochain init --cc MyNewTsProject --lang ts --conf spec.yml
Padrãos
Se nenhuma opção for especificada no comando ochain init
, o nome do projeto com andaimes será MyChaincode
e o idioma será TypeScript.
O arquivo MyChaincode.model.ts
contém apenas um ativo, chamado MyAsset
, com uma propriedade chamada value
. O arquivo MyChaincode.controller.ts
contém um controlador com os métodos CRUD correspondentes para o modelo MyAsset
.
Saída
- Projeto de Token TypeScript do Andaime para ERC-1155
- Projeto Scaffolded Go Token para ERC-1155
- Projeto NFT TypeScript andaimes para ERC-721
- Projeto Scaffolded Go NFT para ERC-721
- Projeto TypeScript com andaimes para o Token Taxonomy Framework
- Projeto Scaffolded Go para Estrutura de Taxonomia de Token