Lição 3

Desenvolver na Cartesi

O ambiente de desenvolvimento Cartesi permite que os desenvolvedores usem ferramentas e linguagens de programação familiares no sistema Linux. Isso não só simplifica o processo de criação de aplicativos descentralizados (dApps) complexos e escaláveis, mas também oferece poderosas capacidades de computação off-chain.

Como desenvolver na CartesiComo mencionado anteriormente, os desenvolvedores podem criar dApps no Cartesi usando as mesmas ferramentas e linguagens do desenvolvimento de software normal.

Aqui estão algumas das principais ferramentas disponíveis para desenvolvedores:

Ferramentas baseadas em LinuxOs desenvolvedores podem usar qualquer linguagem de programação suportada pelo Linux (incluindo C, C++ e Python) para escrever a lógica do aplicativo. A Cartesi Machine fornece um ambiente de desenvolvimento familiar, com compiladores, depuradores e bibliotecas Linux padrão.

Ao integrar um sistema operacional Linux completo em sua máquina virtual, a Cartesi amplia o ecossistema de desenvolvimento, incluindo muitas ferramentas e bibliotecas de software que normalmente não estão disponíveis em blockchains tradicionais. Isso reduz a barreira de entrada para desenvolvedores que dominam o desenvolvimento de software convencional, mas não estão familiarizados com a programação blockchain, ao mesmo tempo que torna possível o desenvolvimento de dApps mais complexos e com mais recursos. Os desenvolvedores podem implementar algoritmos complexos, usar técnicas avançadas de processamento de dados e até mesmo executar modelos de IA/ML em aplicativos.

As aplicações desenvolvidas no Cartesi são compiladas de forma cruzada para serem executadas na arquitetura RISC-V da Máquina Cartesi. A compilação cruzada garante que as aplicações possam ser executadas no ambiente determinístico da Máquina Cartesi, mantendo a compatibilidade e o desempenho.

O próprio processo de desenvolvimento geralmente envolve o uso do Docker para containerizar a Máquina Cartesi, permitindo que os desenvolvedores isolem suas aplicações e garantam a consistência em diferentes estágios de desenvolvimento. Isso ajuda a gerenciar dependências e manter um ambiente controlado.

Integração de Contratos InteligentesA lógica do aplicativo em execução na Máquina Cartesi interage com contratos inteligentes on-chain. Esses contratos inteligentes são principalmente responsáveis por três tarefas: desencadear cálculos off-chain, processar entradas de dados e ancorar os resultados dos cálculos de volta à blockchain. A tarefa fundamental dos desenvolvedores é projetar contratos inteligentes eficientes para gerenciar adequadamente esses processos de interação, garantindo a segurança e integridade do sistema como um todo.

Cartesi adota um design modular, separando tarefas intensivas em computação da lógica on-chain. Isso permite que os desenvolvedores se concentrem na escrita de contratos inteligentes eficientes, enquanto delegam operações intensivas em recursos para a Cartesi Machine.

As inovações de Cartesi### Computação off-chain escalávelO modelo de cálculo off-chain da Cartesi permite que dApps processem cálculos em larga escala sem aumentar a carga da blockchain, o que é extremamente útil para aplicativos que necessitam de grande capacidade de processamento, como simulações, análises de dados ou cálculos científicos.

Embora os cálculos sejam realizados off-chain, a Cartesi garante a segurança dos resultados dos cálculos por meio de provas criptográficas e mecanismos de resolução de disputas. Esse método assegura que os cálculos off-chain sejam tão confiáveis quanto as operações on-chain.

Disponibilidade e gestão de dadosA Cartesi gerencia dados de forma escalável e econômica, suportando aplicativos que exigem acesso ad-hoc a grandes quantidades de dados, sem o alto custo do armazenamento on-chain.

A arquitetura descentralizada do Noether garante a disponibilidade dos dados sem controle de uma única parte, reduzindo o risco de adulteração ou perda de dados. Isso ajuda a manter a integridade e disponibilidade dos dados fora da cadeia, especialmente em aplicativos descentralizados.

Como começar a desenvolver na CartesiOs desenvolvedores podem começar a construir na Cartesi configurando a Máquina Cartesi (executando o sistema operacional Linux na arquitetura RISC-V). O processo inclui:

  • **Configurações do ambiente:**Instalar o Docker e o Python 3 é crucial para executar o exemplo de dApp Cartesi.- **Usando Cartesi Rollups:**Use o Cartesi Rollups para criar um ambiente dedicado para cada dApp, permitindo computação off-chain usando um sistema operacional Linux completo.- **Escrevendo código:**Desenvolva aplicativos usando linguagens de programação tradicionais, como Python e C ++, para evitar a necessidade de aprender uma linguagem de blockchain especializada.- **Teste e implantação:**Antes de implantar na blockchain, teste localmente o aplicativo no ambiente Cartesi Machine, em que o contrato inteligente ancora o resultado do cálculo fora da cadeia.## As vantagens do desenvolvimento na Cartesi- **Ambiente de desenvolvimento familiar:**Reduza a necessidade de aprender uma nova linguagem específica para o desenvolvimento de blockchain, utilizando linguagens e ferramentas de programação populares.- **Escalabilidade:**A computação off-chain reduz a carga sobre blockchains, permitindo dApps mais escaláveis e complexos.- **Interoperabilidade:**Cartesi é compatível com várias blockchains, fornecendo flexibilidade na escolha da blockchain subjacente para dApps.- **Suporte a aplicativos complexos:**Cartesi suporta o desenvolvimento de dApps complexos que requerem sistemas de arquivos complexos, bancos de dados e modelos de aprendizado de máquina.## desvantagem- **Curva de Aprendizado:**Para desenvolvedores que não estão familiarizados com Docker, Linux ou o ambiente específico da Cartesi, pode haver uma curva de aprendizado.- **Dependência de computação off-chain:**A dependência grave de cálculos de cadeia descendente pode trazer desafios para garantir a disponibilidade e segurança dos dados.- **Maturidade do ecossistema:**O ecossistema da Cartesi ainda está em crescimento, o que pode limitar os recursos disponíveis e o suporte da comunidade em comparação com plataformas mais maduras.## Custo do desenvolvedor- **Custo de Desenvolvimento:**Cartesi pode reduzir os custos de desenvolvimento usando ferramentas e bibliotecas existentes.- **Taxa de negociação:**Os desenvolvedores que usam os serviços da Cartesi e interagem com blockchain precisam pagar CTSI (o token nativo da Cartesi) como taxa de transação. Devido ao modelo de computação fora da cadeia, essas taxas geralmente são baixas.- **Custo de staking:**Os desenvolvedores podem precisar apostar tokens CTSI para participar da rede ou garantir a disponibilidade de dados e a integridade dos cálculos. Os requisitos específicos de apostas dependem das características do aplicativo.destaque

  • Ferramentas baseadas em Linux: os desenvolvedores usam linguagens de programação tradicionais (como Python e C++) no sistema operacional Linux, reduzindo a barreira de entrada para iniciantes no desenvolvimento de blockchain.- Integração de contratos inteligentes: os aplicativos construídos na Cartesi podem interagir de forma eficiente com contratos inteligentes, gerenciar cálculos off-chain e ancorar dados on-chain.- Inovação computacional: O Cartesi suporta cálculos fora da cadeia escaláveis ​​e garante resultados seguros e verificáveis ​​por meio de criptografia de prova.- Introdução: Os desenvolvedores começam configurando a Máquina Cartesi e usando Rollups Cartesi para facilitar o desenvolvimento e implementação de dApps.- Vantagens e custos: A Cartesi oferece escalabilidade, interoperabilidade e redução de custos de desenvolvimento, mas é necessário estar familiarizado com seu ambiente específico e pode envolver a aposta de tokens CTSI para participar da rede.

Isenção de responsabilidade

* O investimento em criptomoedas envolve grandes riscos. Prossiga com cautela. O curso não se destina a servir de orientação para investimentos.

* O curso foi criado pelo autor que entrou para o Gate Learn. As opiniões compartilhadas pelo autor não representam o Gate Learn.