Pular para o conteúdo principal

Aplicativos de linha de comando e servidor

Tudo relacionado a aplicativos de linha de comando e de servidor.

Esta página aponta para ferramentas e documentação que podem ajudar você a desenvolver aplicativos de linha de comando e de servidor.

Ferramentas

#
DartPad

Útil tanto para iniciantes quanto para especialistas, o DartPad permite experimentar recursos da linguagem e as APIs dart:*.

Dart SDK

Instale o Dart SDK para obter as bibliotecas principais do Dart e as ferramentas.

Arquiteturas e frameworks de servidor

#

O Dart oferece suporte a várias arquiteturas de backend, dependendo dos requisitos da sua aplicação:

Arquitetura / framework Melhor para Principais vantagens Dados e persistência
Cloud Functions for Firebase APIs HTTP sem servidor e APIs chamáveis, backends para aplicativos Flutter Código compartilhado com Flutter, zero gerenciamento de servidor, inicializações a frio rápidas com AOT Cloud Firestore e Cloud Storage via firebase_admin_sdk
Serverpod Aplicações full-stack, backends para aplicativos Flutter Autenticação, armazenamento de arquivos, funções de servidor e geração de código integrados Bancos PostgreSQL e Redis (ORM e migrations integrados)
Dart Frog APIs REST rápidas, microsserviços modulares Roteamento minimalista, injeção de dependências, construído sobre o Shelf Independente de banco de dados
Shelf Servidores web personalizados, middleware componível Primitiva leve, arquitetura modular Independente de banco de dados

Para criar aplicações full-stack com IA, fluxos do lado do servidor e fluxos de trabalho agênticos, use o Genkit Dart ou pesquise no site do pub.dev outros pacotes de IA.

Para mais ferramentas e plugins de IDE, veja a página Ferramentas. Para opções adicionais, veja pacotes #server no pub.dev.

Criando backends sem servidor com Cloud Functions for Firebase

#

Escreva Cloud Functions for Firebase em Dart para habilitar o desenvolvimento full-stack, reutilizar código entre o cliente e o backend e responder a gatilhos do Firebase. As Cloud Functions em Dart são compiladas antecipadamente (AOT) para binários nativos que são implantados diretamente na infraestrutura do Google Cloud, oferecendo inicializações a frio rápidas com pouco consumo de memória.

Para começar, veja a documentação de Cloud Functions for Firebase.

Pacote Firebase Functions

O pacote principal para escrever funções e APIs de backend em Dart.

Pacote Firebase Admin SDK

Acesse os serviços do Firebase com segurança a partir de servidores de backend ou Cloud Functions. Use-o para gerenciar dados, enviar notificações ou verificar tokens de autenticação.

Repositório do Firebase Functions for Dart

Repositório no GitHub com guias de início rápido, exemplos e código-fonte.

Compartilhando código entre aplicativos Flutter e backends Dart

#

Quando você usa Dart tanto no cliente Flutter quanto no backend do Firebase, pode organizar seu workspace em um monorepo ou em uma estrutura com vários pacotes e um pacote compartilhado:

my_project/
├── packages/
│   ├── app/           # Flutter frontend application
│   ├── functions/     # Cloud Functions for Firebase in Dart
│   └── shared/        # Shared models, DTOs, and validation logic

Ao colocar classes de dados, lógica de serialização JSON e regras de validação em package:shared, qualquer mudança nos seus modelos de dados se propaga para o cliente e para o servidor, mantendo o frontend e o backend sincronizados.

Exemplos

#
Um servidor HTTP simples em Dart
Um servidor HTTP em Dart que usa o Cloud Firestore
  • Usa o Cloud Firestore com o pacote firebase_admin_sdk.
  • Pode ser implantado no Cloud Run.

Mais recursos

#
API do Dart

Referência da API das bibliotecas dart:*.

Documentação de dart:io

Mostra como usar os principais recursos da biblioteca dart:io. Você pode usar a biblioteca dart:io em scripts de linha de comando, servidores e não web aplicativos Flutter.

Usando o Google Cloud

Guias e documentação sobre os produtos do Google Cloud que servidores Dart podem usar, como o Cloud Run.

Usando as APIs do Google

Recursos para ajudar você a usar as APIs de cliente do Firebase e do Google em um aplicativo Dart.

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.