UStackUStack
Better Sol icon

Better Sol

Better Sol é uma ferramenta para escrever programas Solana em TypeScript, com um único arquivo que define o programa e um cliente tipado. Sem Rust.

Better Sol

O que é Better Sol?

Better Sol é uma ferramenta para escrever programas Solana usando TypeScript em vez de Rust. Ela é projetada em torno de um padrão de fonte de programa único, onde um arquivo define seu programa on-chain e um cliente tipado para interagir com ele.

O propósito principal é otimizar o fluxo de trabalho do desenvolvedor Solana mantendo a lógica do programa e os tipos de cliente correspondentes juntos, para que você possa construir e usar funcionalidades Solana sem alternar para Rust.

Principais Recursos

  • Criação de programas Solana com foco em TypeScript: escreva o programa em TypeScript em vez de Rust.
  • Programa + cliente tipado em um único arquivo: defina tanto o programa Solana quanto um cliente tipado em um arquivo.
  • Geração de cliente tipado: a interface do cliente está vinculada à definição do programa, para que suas interações sejam cientes de tipos.
  • Redução de barreiras de linguagem: mantenha o código on-chain e a API do cliente no mesmo codebase TypeScript.

Como Usar Better Sol

  • Crie um único arquivo Better Sol que contenha tanto a definição do seu programa Solana quanto o cliente tipado.
  • Implemente a lógica do programa no mesmo arquivo.
  • Use o cliente tipado do mesmo código para construir transações e interagir com seu programa.
  • Siga o fluxo de trabalho documentado do projeto (conforme fornecido no site) para compilar e implantar o programa Solana.

Casos de Uso

  • Construindo um contrato inteligente Solana em TypeScript: equipes que preferem TypeScript para lógica de front-end e back-end podem manter o desenvolvimento Solana na mesma linguagem.
  • Criando um cliente fortemente tipado para interação com o programa: desenvolvedores podem usar a interface do cliente tipado para reduzir fiação manual ao chamar instruções.
  • Prototipando novas funcionalidades on-chain: mantenha programa e cliente em um só lugar para iterar mais rápido em formas de instruções e tipos de dados.
  • Compartilhando APIs de programa em um monorepo TypeScript: quando o código do cliente está ao lado de outros serviços TypeScript, um arquivo unificado pode simplificar a fronteira entre programa e código consumidor.
  • Educando ou onboarding desenvolvedores para Solana: desenvolvedores que querem evitar Rust ainda podem trabalhar com definição de programa e uso de cliente em TypeScript.

FAQ

Better Sol exige escrever programas em Rust?

Não. O posicionamento do produto afirma que você pode escrever programas Solana em TypeScript, sem necessidade de Rust.

O programa e o cliente são definidos separadamente ou juntos?

Better Sol é descrito como usando um único arquivo para definir tanto o programa quanto um cliente tipado.

Em que linguagem o cliente tipado é baseado?

O cliente tipado é descrito no contexto de desenvolvimento TypeScript, já que o programa é escrito em TypeScript.

Posso usar Better Sol apenas para integração de cliente com um programa existente?

O conteúdo do site fornecido foca em definir um programa e cliente tipado em um arquivo. Não confirma explicitamente se suporta uso apenas de cliente para um programa já implantado e definido externamente.

Alternativas

  • Frameworks de desenvolvimento Solana baseados em Rust: se você se sente confortável com Rust, pode escrever programas na linguagem nativamente suportada por muitas toolchains Solana, mas tipicamente mantém uma fronteira mais clara entre Rust on-chain e código de cliente off-chain.
  • Bibliotecas de cliente baseadas em TypeScript para Solana: se seu objetivo principal é interações de cliente tipadas ou estruturadas, ferramentas de cliente separadas podem ajudar mesmo quando o programa em si é escrito em Rust.
  • Abordagem de SDK genérico para blockchain: você pode construir layouts de instruções Solana e fluxos de transação usando bibliotecas padrão, mas pode ter mais trabalho manual para manter tipos de cliente alinhados com a lógica do programa.
  • Outros padrões de ferramentas “definição de programa + cliente gerado”: algumas ferramentas geram código de cliente a partir de especificações de programa; essas podem diferir em como conectam esquemas de instruções a tipos de cliente e se são baseadas em Rust ou TypeScript.