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

O comando 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

Digitar 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 ou json. 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.

Exemplo
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

Quando o processo estiver concluído, você terá um projeto de chaincode totalmente funcional que poderá implantar localmente ou em uma instância remota do Oracle Blockchain Platform. Para obter uma visão geral detalhada dos arquivos criados, consulte: Para obter uma visão geral detalhada de um projeto baseado em token, consulte também: