Novidades
Uma lista do que há de novo no dart.dev e em sites relacionados.
Esta página descreve o que há de novo no site e no blog do Dart. Para ver as novidades do Flutter, visite a página de novidades do Flutter.
Para uma lista das mudanças na linguagem Dart em cada Dart SDK, veja o changelog do Dart. Para ficar por dentro dos anúncios, incluindo breaking changes, participe do grupo Google de anúncios do Dart e siga o blog do Dart.
Versão 3.13
#Lançada em: 12 de agosto de 2026
Esta seção lista mudanças notáveis feitas de 18 de maio de 2026 até 12 de agosto de 2026 no dart.dev. Para detalhes sobre a versão 3.13 do Dart, confira o anúncio do 3.13 e o changelog do SDK 3.13.
Atualizações da documentação
#- Expandimos a documentação do novo recurso de linguagem construtores primários, incluindo seções sobre enums e construtores constantes.
- Adicionamos um novo guia de solução de problemas sobre motivos pelos quais uma variável não pode ser promovida para ajudar a diagnosticar falhas de promoção de tipo.
- Recomendamos declarar construtores dentro de classes usando a nova sintaxe concisa de construtores no Effective Dart.
-
Expandimos a documentação dos native build hooks para cobrir a
configuração de user-defines no
pubspec.yamle o uso de link hooks com uso registrado para tree-shaking de código nativo. - Detalhamos o comportamento de verificação de tipos em tempo de execução do WebAssembly e adicionamos exemplos de binding de Zone na documentação de JavaScript e interop com Web.
- Documentamos o suporte experimental a deferred loading para WebAssembly.
-
Unificamos a documentação de distribuição da linha de comando do Dart
em torno do
dart install. -
Esclarecemos a diferença entre instâncias de
ErroreExceptionno tutorial de tratamento de erros. - Adicionamos links e dicas rápidas para iniciantes na página de visão geral da documentação. (Obrigado, Syed Muhammad Mobasil.)
- Atualizamos as diretrizes sobre nomenclatura de métodos e funções no Effective Dart. (Obrigada, Polina Cherkasova.)
- Adicionamos o Publy à lista de serviços de repositório de pacotes Dart hospedados. (Obrigado, Timophei Lemeshchenko.)
- Expandimos o Glossário com novos termos de linguagem e web, incluindo "dot shorthandDot shorthandUma forma abreviada de sintaxe que permite omitir o nome do tipo ao acessar construtores ou membros estáticos, incluindo valores de enum. Saiba mais", "extension typeExtension typeUm wrapper de tempo de compilação que oferece uma abstração de custo zero sobre um tipo subjacente. Saiba mais", "primary constructorPrimary constructorUma sintaxe concisa para declarar um construtor principal diretamente no cabeçalho de uma classe, enum ou extension type. Saiba mais", "private named parameterPrivate named parameterUm parâmetro nomeado de construtor com nome privado na declaração e nome público nos pontos de chamada. Saiba mais", "potentially constantPotentially constantUma expressão que pode ser avaliada em tempo de compilação se todos os parâmetros do construtor constante que a envolve forem substituídos por valores constantes, e todos os parâmetros de tipo forem substituídos por tipos concretos. Saiba mais" e "WebAssembly (Wasm)WebAssembly (Wasm)Um formato de instruções binárias que permite a execução de alto desempenho de código em navegadores web. Saiba mais".
Versão 3.12
#Lançada em: 18 de maio de 2026
Esta seção lista mudanças notáveis feitas de 12 de fevereiro de 2026 até 18 de maio de 2026 no dart.dev. Para detalhes sobre a versão 3.12 do Dart, confira o anúncio do 3.12 e o changelog do SDK 3.12.
Atualizações da documentação
#- Adicionamos a documentação do novo recurso de linguagem parâmetros nomeados privados.
- Adicionamos a documentação do recurso experimental de linguagem construtores primários.
- Criamos uma página dedicada de versionamento da linguagem e atualizamos os links em todo o site.
- Documentamos o suporte do Dart ao Firebase Functions e ao Admin SDK.
- Documentamos que os workspaces do pub podem ser aninhados. (Obrigado, Soufian El-Fouzari.)
-
Documentamos a opção
--no-exampledos comandos do pub. - Centralizamos a documentação dos descritores de pacote do pub.
- Adicionamos a documentação sobre restrições para os nomes de dylib de code assets dos build hooks.
- Atualizamos a lição de programação orientada a objetos do tutorial e melhoramos a formatação dela.
- Expandimos o Glossário com novos termos, incluindo "top type", "null safety", "sound", "reified generics" e "uninitialized". (Obrigado, IldySilva.)
- Adicionamos mais soluções comunitárias de interop à documentação. (Obrigada, ANUSHREE BONDIA.)
- Removemos e arquivamos a documentação legada de migração para null safety.
Melhorias no site
#-
Criamos um espaço dedicado para o blog do Dart em
/blog, migrando todas as publicações históricas do Medium. - Implementamos prefetch e prerendering de páginas para uma navegação mais rápida em todo o site.
Versão 3.11
#Lançada em: 11 de fevereiro de 2026
Esta seção lista mudanças notáveis feitas de 13 de novembro de 2025 até 11 de fevereiro de 2026 no dart.dev. Para detalhes sobre a versão 3.11 do Dart, confira o anúncio do 3.11 e o changelog do SDK 3.11.
Atualizações da documentação
#- Lançamos uma nova experiência de primeiros passos para aprender Dart.
- Atualizamos a página do IntelliJ e Android Studio após a transição do plugin do Dart para a equipe Dart.
- Adicionamos documentação sobre as variáveis de ambiente disponíveis para os build hooks do Dart.
- Incluímos instruções de configuração de "Format on save" para IDEs na página do dart format. (Obrigada, Anushree Bondia.)
- Expandimos o Glossário com novos termos, incluindo "dependency graph", "AOT", "JIT", "interop" e "scope". (Obrigado, IldySilva e Anushree Bondia.)
Versão 3.10
#Lançada em: 12 de novembro de 2025
Esta seção lista mudanças notáveis feitas de 14 de agosto de 2025 até 12 de novembro de 2025 no dart.dev. Para detalhes sobre a versão 3.10 do Dart, confira o anúncio do 3.10 e o changelog do SDK 3.10.
Atualizações da documentação
#- Adicionamos um guia para o novo recurso de linguagem dot shorthands.
- Adicionamos um guia para o novo suporte a plugins do analyzer.
- Adicionamos a referência da ferramenta
dart build. -
Adicionamos a referência da ferramenta
dart install. -
Documentamos as novas variedades da anotação
@Deprecated. - Expandimos o Glossário com novos termos, incluindo "obviously typed", "closurization", "callback", "tree shaking" e "native asset". (Obrigado, IldySilva)
Melhorias no site
#- Migramos a infraestrutura central do site para o framework Jaspr para melhorar a experiência de quem contribui.
- Melhoramos o Glossário com a nova filtragem por rótulo e tooltips.
- Redesenhamos a página da Comunidade com um layout moderno baseado em cards.
- Começamos a compilar o código Dart do lado do cliente para Wasm.
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
Versão 3.9
#Lançada em: 13 de agosto de 2025
Esta seção lista mudanças notáveis feitas de 20 de maio de 2025 até 13 de agosto de 2025 no dart.dev. Para detalhes sobre a versão 3.9 do Dart, confira o anúncio do 3.9 e o changelog do SDK 3.9.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças na documentação deste site:
- Habilitamos breadcrumbs por padrão em todo o site.
-
Atualizamos a documentação do
dart compilepara cross-compilation para ARM e RISC-V64. - Reformulamos a documentação de metadata e annotations.
-
Reestruturamos a página do
dart createpara explicar melhor os templates. - Adicionamos um guia abrangente do Dart MCP Server.
- Expandimos o glossário com "combinator", "bottom type", "context type", "shadowing", "immutable", "wildcard", "late", "zone" e "type alias". (Obrigado, IldySilva)
- Atualizamos a documentação do JNIGen para remover uma referência desatualizada ao Maven.
Versão 3.8
#Lançada em: 20 de maio de 2025
Esta seção lista mudanças notáveis feitas de 13 de fevereiro de 2025 até 20 de maio de 2025 no dart.dev. Para detalhes sobre a versão 3.8 do Dart, confira o anúncio do 3.8 e o changelog do SDK 3.8.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças na documentação deste site:
-
Adicionamos a documentação de Collection elements, que inclui os vários tipos de elementos de coleção: elementos de expressão, elementos de entrada de map, elementos de spread, elementos de spread com null-aware, elementos if e elementos for. A nova documentação também explica como aninhar elementos.
-
Adicionamos a documentação de Doc imports, que explica como usar a tag de documentação
@docImportpara referenciar elementos externos em comentários de documentação. -
Adicionamos a documentação de Cross-compilation para o comando
dart compile. A cross-compilation para Linux x64 e ARM64 agora é suportada nos seguintes sistemas operacionais host de 64 bits: macOS, Windows e Linux. -
Adicionamos a documentação de Null-aware elements, que explica como usar o elemento null-aware.
-
Adicionamos a documentação de Labels para loops. Essa adição mostra como usar labels com as instruções de controle de fluxo
breakecontinue. -
Adicionamos a documentação do arquivo
pubspec_overrides.yaml. Esse arquivo permite sobrescrever certos aspectos do arquivopubspec.yamlsem alterar o própriopubspec.yaml. -
Adicionamos a documentação de Inference using bounds para o sistema de tipos.
-
Adicionamos a documentação de Records como estruturas de dados simples para tipos record.
-
Adicionamos a documentação de restrições de parâmetros de tipo autorreferenciados (F-bounds) para tipos genéricos.
-
Adicionamos a documentação de Downcast implícito a partir de
dynamic, que explica como converter implicitamente expressões com tipo estáticodynamicpara um tipo mais específico. Adicionamos uma política de suporte para o Dart SDK.
-
Atualizamos as orientações sobre quando e quando não usar class modifiers no guia Effective Dart Design.
-
Atualizamos a orientação para preferir uma frase nominal ou uma frase verbal não imperativa para uma função ou método no guia Effective Dart Documentation. Também incluímos várias pequenas mudanças nas orientações de documentação existentes. Para mais informações, veja o PR 6522.
-
Mudamos a orientação para preferir uma frase nominal ou uma frase verbal não imperativa para uma função ou método no guia Effective Dart Documentation.
Mudanças no site para o dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças estruturais neste site:
-
Adicionamos um novo design baseado em cards e a possibilidade de pesquisar entradas no glossário.
-
Novos botões de página anterior e próxima para o site de documentação.
-
Adicionamos páginas individuais para algumas mensagens de diagnóstico. Para ver a página individual de uma mensagem de diagnóstico, selecione o botão Learn more dela.
Versão 3.7
#Lançada em: 12 de fevereiro de 2025
Esta seção lista mudanças notáveis feitas de 12 de dezembro de 2024 até 12 de fevereiro de 2025. Para detalhes sobre a versão 3.7 do Dart, confira o anúncio do 3.7 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Introduzimos o novo algoritmo do sistema de tipos, inference using bounds.
- Adicionamos links para nossa nova conta no Bluesky.
-
Atualizamos a página do
dart formatpara refletir o novo estilo do formatador, incluindo o novo recurso de tamanho de linha configurável. - Documentamos o novo recurso de opções de análise compartilhadas.
- Alteramos o item do Effective Dart sobre tamanho de linha por causa do novo estilo do formatador.
- Introduzimos os detalhes sobre arquivos avulsos na página de Workspaces.
- Adicionamos o novo recurso de linguagem variáveis curinga na página de Variáveis.
- Movemos a explicação de covariant para a página de Sistema de tipos, mais adequada.
- Alteramos as referências às bibliotecas de interop JS legadas para serem explicitamente "deprecated".
- Removemos a página de macros experimentais, pois a equipe pausou indefinidamente o trabalho no recurso.
-
Adicionamos um aviso de que desestruturar um padrão de Map com
uma chave inexistente vai lançar um
StateError. - Reformulamos a página de regras do linter com novos cards, formato de pesquisa e ícones coloridos nas páginas individuais de lint (por exemplo).
- Redesenhamos a implementação do layout e a sidenav para mais eficiência.
- Removemos a página da biblioteca
dart:html, oficialmente depreciada.
Versão 3.6
#Lançada em: 11 de dezembro de 2024
Esta seção lista mudanças notáveis feitas de 7 de agosto de 2024 até 11 de dezembro de 2024. Para detalhes sobre a versão 3.6 do Dart, confira o anúncio do 3.6 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Documentamos o novo recurso pub workspaces.
-
Explicamos a nova flag do
pub get--enforce-lockfile. - Introduzimos orientações sobre comunicação síncrona entre isolates demais na página de Concorrência.
- Adicionamos o novo recurso de linguagem separadores de dígitos à página de Tipos built-in.
- Definimos variância e posições de variânciaVariance and variance positionsComo a mudança de um argumento de tipo afeta a relação entre o tipo original e o resultante. No Dart, mudar o argumento de tipo de uma declaração de tipo (como uma classe) ou o tipo de retorno de uma função muda a relação de tipo geral na mesma direção (covariante). Já mudar os tipos dos parâmetros de uma função muda a relação de tipo geral na direção oposta (contravariante). Saiba mais na página do glossário.
- Criamos uma nova página para o novo recurso de referências em comentários de documentação.
- Atualizamos e melhoramos o gráfico de plataformas do Dart para incluir o suporte recém-disponível à compilação para RISC-V e WASM.
- Definimos tipos de função.
- Adicionamos definições no glossário para os diferentes tipos de correções de código disponíveis no analyzer (assistsAssistUma edição de código automatizada e local direcionada a fazer melhorias comuns no código. Saiba mais, refactorsRefactorUma edição de código direcionada a modificações não locais ou que exigem interação do usuário. Saiba mais e quick fixesQuick fixUma edição de código automatizada e local direcionada a corrigir o problema relatado por um diagnóstico específico. Saiba mais).
- Criamos uma página para o novo comando
pub bump. - Atualizamos o exemplo de construtores generativos para refletir o uso de parâmetros posicionais opcionais com valores padrão.
- Melhoramos a documentação de import/export condicional na página de criação de pacotes.
-
Incluímos anotações
@overridenos exemplos de código de mixins para mostrar corretamente como trabalhar com funções mixadas. - Oferecemos uma alternativa ao SSH para acessar dependências de repositórios privados na página de dependências do pub.
-
Adicionamos um novo aviso do
pub publishsobre a validação degit statuslimpo à lista de tarefas de publicação. - Depreciamos as páginas de tour pela linguagem e pelas bibliotecas (o conteúdo agora está em páginas individuais em Linguagem e Bibliotecas principais, no painel lateral esquerdo).
Versão 3.5
#Lançada em: 6 de agosto de 2024
Esta seção lista mudanças notáveis feitas de 15 de maio de 2024 até 6 de agosto de 2024. Para detalhes sobre a versão 3.5, confira o anúncio do 3.5 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Esclarecemos o status e os usos pretendidos das bibliotecas de plataforma web, tanto as novas quanto as legadas.
- Expandimos a documentação sobre publicação de versões prerelease de pacotes no site pub.dev.
-
Adicionamos uma página sobre o novo comando
dart pub unpack. -
Documentamos a nova flag
--skip-validationdodart pub publishe a flag--tightendodart pub downgrade. - Oferecemos orientações de boas práticas para autores de pacotes testarem seus pacotes com dependências rebaixadas.
- Melhoramos o guia Corrigindo falhas de promoção de tipo e adicionamos destaque de código para indicar melhor o código relevante.
- Complementamos a documentação de instalação do Dart com instruções de desinstalação e limpeza.
- Introduzimos novos documentos e exemplos de código sobre tear-offs de função e tear-offs de construtor.
- Explicamos como exportar funções e objetos Dart para serem usados a partir de JS.
- Adicionamos entradas no glossário para subclassSubclassUma classe que herda a implementação de outra classe. Saiba mais e subtypeSubtypeUm tipo que pode ser usado em qualquer lugar em que se espera um valor do seu supertipo. Saiba mais, explicando os termos no contexto do Dart.
Versão 3.4
#Lançada em: 14 de maio de 2024
Esta seção lista mudanças notáveis feitas de 16 de fevereiro de 2024 até 14 de maio de 2024. Para detalhes sobre a versão 3.4, confira o post do blog sobre o 3.4 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Adicionamos uma página documentando o recurso experimental de linguagem Macros.
- Adicionamos uma página para acompanhar os avanços do Wasm no Dart.
- Refatoramos a página de Construtores.
-
Esclarecemos as instruções na seção Renames da página de migração para o
package:web. - Ajustamos a entrada do Effective Dart sobre habilitar a promoção de tipo para recomendar o padrão de null-check antes de outras construções.
- Revisamos a lista de Bibliotecas e pacotes web para representar melhor as soluções recomendadas.
- Explicamos como desestruturar campos nomeados nas páginas de Records e Patterns.
- Incluímos uma tabela antes e depois das soluções web na página de interop com JS.
- Adicionamos uma seção explicando os operadores spread na página de Operadores.
- Esclarecemos a ordem dos padrões entre parênteses na página de tipos de padrão.
-
Adicionamos documentação do
ExternalDartReferencena página de tipos JS. -
Atualizamos o site para as novas regras do linter e mensagens de diagnóstico,
por exemplo, adicionando documentação da nova mensagem de diagnóstico da anotação
@mustBeConst.
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
Versão 3.3
#Lançada em: 15 de fevereiro de 2024
Esta seção lista mudanças notáveis feitas de 16 de novembro de 2023 até 15 de fevereiro de 2024. Para detalhes sobre a versão 3.3, confira o post do blog sobre o 3.3 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Mudamos a infraestrutura do site para rodar em 11ty em vez de Jekyll.
- Adicionamos uma página sobre o novo recurso de linguagem extension types.
-
Adicionamos um novo conjunto de documentação sobre interop com JavaScript:
- Uso
- Tipos JS
- Tutoriais, o primeiro deles sobre Mocks
- Interop com JS legada
- Atualizamos a visão geral de Concorrência e adicionamos uma nova página prática sobre o uso de Isolates.
-
Adicionamos uma seção sobre
externalna página de Funções. - Removemos o DartPad incorporado de algumas páginas para acomodar a nova versão do DartPad.
- Incluímos uma definição de "Function" no Glossário.
- Desmembramos o Tour pelas bibliotecas em páginas individuais para cada biblioteca.
- Atualizamos a página de Breaking changes para a 3.3.
- Atualizamos algumas entradas desatualizadas da página de FAQ. (Agora removidas)
- Expandimos a documentação sobre
dart doc. - Atualizamos e simplificamos o conteúdo sobre plataformas suportadas.
- Consolidamos vários conteúdos do
dart format. -
Atualizamos vários lugares para sugerir o
package:webem vez dedart:html. -
Deixamos de recomendar o
dart:htmle odart:iopara fazer requisições HTTP, em favor dopackage:http. - Documentamos como suprimir diagnósticos em um arquivo pubspec.
- Adicionamos conteúdo sobre criar e ignorar avisos de segurança em um arquivo pubspec.
- Documentamos como migrar para longe de uma versão de pacote retraída.
Versão 3.2
#Lançada em: 15 de novembro de 2023
Esta seção lista mudanças notáveis feitas de 17 de agosto de 2023 até 15 de novembro de 2023. Para detalhes sobre a versão 3.2, confira o post do blog sobre o 3.2 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
-
Atualizamos a página Corrigindo falhas de promoção de tipo
para um novo
recurso de promoção de tipo: promoção de campos finais privados.
- Fizemos pequenos ajustes relacionados na entrada do Effective Dart sobre promoção de tipo, na página Entendendo o Null Safety e em outros lugares do site.
- Introduzimos documentação sobre o recurso experimental de native assets na página de interop com C.
- Criamos uma nova página dedicada à documentação de Breaking changes.
- Consideramos novos e atualizados lints e diagnósticos nas respectivas páginas de documentação.
-
Adicionamos documentação da nova flag
--tightenà página dopub upgrade. - Removemos a cola de referência rápida em favor da página Visão geral da linguagem.
- Esclarecemos a relação entre guard clauses e padrões.
- Ajustamos a página de Construtores para representar melhor as boas práticas.
- Melhoramos o conteúdo da página de Dependências de pacotes para ser mais prático e fácil de seguir.
- Detalhamos os membros estáticos na página de Métodos de extensão.
-
Alteramos o conteúdo sobre as limitações de multithreading do Objective-C
para considerar
a nova API
NativeCallable. - Adicionamos novas anotações e mencionamos depreciações na página de Metadata.
- Melhoramos o contraste ajustando as cores do texto e os destaques nos exemplos de código de todo o site.
- Reorganizamos e simplificamos a infraestrutura do site como um todo, em preparação para deixar de usar o Jekyll.
Versão 3.1
#Lançada em: 16 de agosto de 2023
Esta seção lista mudanças notáveis feitas de 11 de maio de 2023 até 16 de agosto de 2023. Para detalhes sobre a versão 3.1, confira o Dart 3.1 & a retrospective on functional style programming in Dart 3 e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
-
Reformulamos a documentação das regras do linter para substituir o antigo site de linter:
- Movemos a documentação de cada regra do linter para a sua própria página.
Por exemplo:
avoid_dynamic_calls. - Adicionamos um exemplo de
analysis_options.yamlque habilita todas as regras do linter disponíveis na última versão do Dart. - Atualizamos o índice de todas as regras do linter disponíveis para facilitar a descoberta de lints.
- Movemos a documentação de cada regra do linter para a sua própria página.
Por exemplo:
- Ampliamos a documentação de class modifiers adicionando uma referência de class modifiers para mostrar como eles interagem entre si.
- Introduzimos o guia Class modifiers para mantenedores de APIs para ajudar os desenvolvedores a usar melhor os class modifiers.
- Reescrevemos a documentação de switch expression para explicar melhor suas diferenças em relação aos switch statements.
- Documentamos o suporte a especificar topics no seu arquivo pubspec para categorizar seu pacote no site pub.dev.
- Esclarecemos que os screenshots de pacote servem para mostrar a funcionalidade do pacote, e não o logo ou o ícone dele.
- Adicionamos botões de página anterior e próxima na documentação da linguagem do Dart, para oferecer uma experiência de aprendizado guiada.
- Continuamos expandindo o novo glossário do site inteiro.
- Adicionamos uma nota de migração sobre como a mudança do cache do pub no Windows foi finalizada no Dart 3.
- Simplificamos e atualizamos documentos mais antigos, agora que o sistema de tipos do Dart é sempre null safe.
Artigos adicionados ao blog do Dart
#Publicamos o seguinte artigo no blog do Dart:
Versão 3.0
#Lançada em: 10 de maio de 2023
Esta seção lista mudanças notáveis feitas de 26 de janeiro de 2023 até 10 de maio de 2023. Para detalhes sobre a versão principal 3.0, confira Announcing Dart 3, e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Em preparação para o Dart 3, dividimos e reorganizamos o Tour pela linguagem em novas categorias conceituais. Você pode acessar a documentação da linguagem reestruturada em Language no menu lateral de navegação, ou visitando a Introdução ao Dart atualizada.
Aproveitando essa nova estrutura, adicionamos documentação para cada um dos principais recursos do Dart 3:
- Pattern matching e os diferentes tipos de padrões.
- Switch expressions com suporte a padrões e verificação de exaustividade.
- If statements com cláusulas case para dar suporte ao pattern matching.
- Records, um novo tipo anônimo, imutável e agregado que permite múltiplos retornos.
- Class modifiers que dão às bibliotecas mais controle sobre os tipos exportados.
Para ajudar você a fazer a transição para a imposição de sound null safety no Dart 3 e para outras mudanças, também preparamos as seguintes atualizações:
- Criamos um guia completo de migração para o Dart 3.
- Migramos toda a documentação e os exemplos de código para o Dart 3, as versões mais recentes das ferramentas e as dependências mais recentes.
- Esclarecemos que o sistema de tipos do Dart agora é sempre null-safe no Dart 3.
- Atualizamos e reorganizamos a página de Evolução da linguagem e a sua discussão sobre o versionamento da linguagem.
- Removemos resquícios da documentação, notas e recursos do Dart 1 e do início do Dart 2.
Além do novo conteúdo do Dart 3 e das atualizações correspondentes em todo o site, fizemos as seguintes mudanças:
- Adicionamos um guia sobre como configurar declarações de ambiente de compilação.
- Continuamos o trabalho de interoperabilidade nativa do Dart adicionando um guia sobre o suporte experimental à interop com Java.
- Esclarecemos o uso e as limitações de extensões sem nome.
-
Adicionamos uma página para o novo comando
dart infoque ajuda com diagnósticos de ferramentas. -
Reformulamos a documentação do
dart pub addpara cobrir a nova sintaxe de descritor de pacote. - Disponibilizamos builds de preview do Linux RISC-V (RV64GC) no canal beta, no arquivo do SDK.
- Começamos um novo glossário para todo o site, com termos comuns usados em todo o conteúdo.
- Destacamos o trabalho experimental no suporte a interop estática com JS do Dart.
- Documentamos a existência e as limitações atuais dos plugins do analyzer.
Artigos adicionados ao blog do Dart
#Publicamos o seguinte artigo no blog do Dart:
Vídeos lançados pela equipe Dart
#Durante o Google I/O 2023, lançamos os seguintes vídeos:
- O que há de novo no Dart e no Flutter (versão em American Sign Language)
- Repensando a interoperabilidade do Dart com Android
- Como criar um pacote em Dart
Versões 2.19 + 3.0 alpha
#Lançadas em: 25 de janeiro de 2023
Esta seção lista mudanças notáveis feitas de 31 de agosto de 2022 até 25 de janeiro de 2023. Para detalhes sobre as versões alpha 2.19 + 3.0, veja Introducing Dart 3 alpha, e o changelog do SDK.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
-
Introduzimos o tutorial Buscar dados da internet sobre o uso do
package:http. - Adicionamos uma página sobre publicação automatizada de pacotes no pub.dev.
- Incluímos links para duas novas traduções do site na seção recursos da comunidade:
-
Atualizamos o conteúdo de null safety em preparação para o Dart 3:
- Alteramos as restrições de versão no guia de migração para compatibilidade com o Dart 3.
- Adicionamos uma visão geral do sound null safety completo do Dart 3 na página Sound null safety.
- Destacamos, em uma nota, a incompatibilidade do Dart 3 com o null safety não sólido.
- Introduzimos o guia "Aprendendo Dart como desenvolvedor Swift". (Agora removido)
- Substituímos uma seção do Effective Dart por orientações mais gerais sobre booleanos e operadores de igualdade.
- Documentamos o content-hashingPub content hashHashes SHA256 mantidos pelo pub.dev para validar a integridade dos pacotes. Saiba mais em toda a documentação do pub.
-
Começamos a reformular a página de Zones, trocando os exemplos para usar
runZonedGuardedem vez deonError. -
Atualizamos o conteúdo sobre bibliotecas para cobrir o novo desenvolvimento de declarações sem nome:
- Effective Dart: Documentação, Estilo e Uso
- Nova seção sobre a diretiva de biblioteca em O tour pela linguagem
-
Melhoramos a clareza sobre o status de thread única ou multithread do Dart:
- Removemos a página desatualizada do
dart:io. - Expandimos a seção sobre recursos de concorrência do Dart na web.
- Removemos a página desatualizada do
- Reorganizamos e esclarecemos a discussão sobre valores padrão para parâmetros opcionais e posicionais.
-
Atualizamos Concorrência em Dart para usar, por padrão, a nova função
Isolate.run(). -
Documentamos como especificar um caminho de arquivo ao ativar um pacote na página do
pub global. - Reescrevemos "Aprendendo Dart como desenvolvedor JavaScript". (Agora removido)
-
Adicionamos uma breve visão geral do Dart DevTools na página do
dart run. - Esclarecemos melhor a precedência e associatividade de operadores no tour pela linguagem.
- Expandimos a seção do tour de bibliotecas sobre Construção de URIs com informações sobre URI http e construtor factory.
- Levamos em conta a transição do pub para o pub.dev a partir do pub.dartlang.org.
- Adicionamos documentação sobre screenshots de pacotes.
- Melhoramos a seção de downcast explícito da página de sistema de tipos do Dart.
-
Ampliamos a cobertura de analyzer e de lints:
- Incluímos informações de suporte à versão do SDK para as regras do linter.
- Adicionamos mensagens de diagnóstico e de lint para as mudanças da 2.19.
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
- Melhor gerenciamento de isolates com Isolate.run()
- Screenshots e publicação automatizada para o pub.dev
- O caminho para o Dart 3: uma linguagem totalmente sólida e null safe
- Resultados do Google Summer of Code 2022
- Parceria com o GitHub sobre segurança da cadeia de suprimentos para pacotes Dart
Versão 2.18
#Lançada em: 30 de agosto de 2022
Esta seção lista mudanças notáveis feitas de 12 de maio de 2022 até 30 de agosto de 2022. Para detalhes sobre a versão 2.18, veja Dart 2.18: Objective-C & Swift interop, e o changelog do SDK.
Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Introduzimos a página Interop com Objective-C e Swift, que explica como usar pacotes Dart para chamar APIs dessas linguagens.
- Adicionamos uma solução alternativa em Corrigindo problemas comuns de tipo, para o caso raro em que a inferência de tipo possa inferir incorretamente que um argumento é null.
-
Removemos todas as menções aos arquivos
.packages, descontinuados, de O que não commitar. Se você ainda precisar gerar um arquivo.packagespor causa de dependências legadas de terceiros, veja as opções dodart pub get. -
Removemos as páginas dedicadas e qualquer outra menção às ferramentas de linha de comando
dart2jsedartdevc, descontinuadas.- Adicionamos as opções de linha de comando e os problemas conhecidos antes associados ao
dart2jsna página dodart compile. - Adicionamos informações sobre depuração de código de produção em Depurando aplicações web Dart.
- Adicionamos as opções de linha de comando e os problemas conhecidos antes associados ao
- Adicionamos suporte ao download de builds experimentais do Windows ARM no arquivo do SDK do Dart.
- Atualizamos o Tour de bibliotecas para incluir informações sobre weak references e finalizers.
-
Adicionamos uma seção sobre como personalizar o
dart fix.
Versão 2.17
#Lançada em: 11 de maio de 2022
Esta seção lista mudanças notáveis feitas de 4 de fevereiro de 2022 até 11 de maio de 2022. Para detalhes sobre a versão 2.17, veja Dart 2.17: Productivity and integration.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Introduzimos o guia "Aprendendo Dart como desenvolvedor JavaScript", que visa aproveitar o seu conhecimento de programação em JavaScript ao aprender Dart. (Agora removido)
-
Documentamos os recursos e as mudanças introduzidos no Dart 2.17:
- Atualizamos a seção Named parameters do tour pela linguagem para refletir o suporte a especificar argumentos nomeados em qualquer posição.
- Adicionamos documentação sobre parâmetros de inicializador de super.
- Expandimos a seção Tipos enumerados do tour pela linguagem e documentamos os enums aprimorados.
- Documentamos o suporte à assinatura de executáveis macOS e Windows
compilados com
dart compile exe. - Atualizamos os templates suportados pelo
dart createpara seus novos nomes padronizados.
-
Levamos em conta as mudanças no site pub.dev e na ferramenta pub.
- Listamos fornecedores que oferecem repositórios de pacotes Dart como serviço.
- Removemos a documentação do comando
dart pub uploader, agora descontinuado. - Expandimos a documentação sobre como gerenciar uploaders de projetos pub.
- Removemos a maioria das menções ao arquivo
.packages, depreciado, indicando em seu lugar o substituto.dart_tool/package_config.json.
-
Atualizamos a documentação sobre como atualizar e instalar o Dart:
- Documentamos como alternar entre versões do Dart com o Homebrew nas instruções de instalação para macOS.
- Atualizamos as instruções de instalação para Linux para usar o SecureApt e seguir as melhores práticas mais recentes.
- Adicionamos suporte ao download de builds experimentais para Linux RISC-V (RV64GC) no arquivo do SDK do Dart.
-
Continuamos o trabalho para melhorar e atualizar a documentação da
ferramenta
dartunificada:- Expandimos a documentação sobre as funcionalidades da ferramenta
dart fix. - Ajustamos as diretrizes e a documentação da ferramenta
dart docpara corresponder à sua funcionalidade e ao comportamento subjacente. - Adicionamos mais documentação e exemplos de
dart compile js. - Removemos menções a ferramentas standalone que foram removidas.
- Expandimos a documentação sobre as funcionalidades da ferramenta
-
Atualizamos a documentação e o uso do analyzer e do linter:
- Documentamos os novos modos estritos de linguagem do analyzer.
- Incorporamos mudanças nas páginas de mensagens de diagnóstico e regras do linter.
- Atualizamos a documentação e os exemplos
para usar a versão
2.0.0do pacotelints.
-
Começamos uma reformulação da documentação de compilação para a web:
- Documentamos a depreciação e a remoção planejada das ferramentas standalone
dart2jsedartdevc. - Consolidamos e esclarecemos a documentação de
dart2jsedartdevccomo os compiladores subjacentes de ferramentas comodart compile jsewebdev.
- Documentamos a depreciação e a remoção planejada das ferramentas standalone
-
Aumentamos a cobertura da documentação sobre null safety:
- Documentamos o operador de asserção de não nulo (
!) como parte da seção Outros operadores do tour pela linguagem. - Migramos os tutoriais de HTML de baixo nível para dar suporte a null safety e discutir como interagir com APIs web usando-o.
- Documentamos o operador de asserção de não nulo (
-
Fizemos outras atualizações variadas:
- Documentamos os tipos nativos fornecidos por
dart:ffipara uso em interop com C. - Introduzimos uma nova seção no tour pela linguagem documentando inicialização de parâmetros formais.
- Documentamos o suporte a pacotes do DartPad.
- Corrigimos a formatação do tutorial de programação assíncrona e detalhamos por que o código assíncrono importa.
- Atualizamos a página de segurança para refletir nossas práticas de segurança atuais.
- Adicionamos um atalho de teclado (
/) para focar automaticamente a barra de pesquisa.
- Documentamos os tipos nativos fornecidos por
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
- Aplicação em massa de correções
- Programação assíncrona em Dart: Streams
- Colaboradores do Google Summer of Code 2022
- Migração gradual para null safety em projetos Dart grandes
- Hospedando um repositório privado de pacotes Dart
- Quick fixes para problemas de análise
Versão 2.16
#Lançada em: 3 de fevereiro de 2022
Esta seção lista mudanças notáveis feitas de 8 de dezembro de 2021 até 3 de fevereiro de 2022. Para detalhes sobre a versão 2.16, veja Dart 2.16: Improved tooling and platform handling.
Documentação atualizada ou adicionada ao dart.dev
#Nós atualizamos a infraestrutura do site para uma configuração baseada em Docker para permitir contribuições mais fáceis e alinhar-nos melhor com a configuração de docs.flutter.dev.
Além de outras correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
-
Passamos a documentar a nova ferramenta
dart doc, que substitui odartdoc. -
Documentamos a nova entrada
platformpara especificar as plataformas suportadas nopubspec.yamlde um pacote. - Atualizamos as páginas de mensagens de diagnóstico e regras do linter.
- Documentamos como ignorar todas as regras do linter em um arquivo.
- Removemos menções às antigas ferramentas standalone da visão geral do Dart SDK.
-
Atualizamos as menções restantes às antigas ferramentas standalone
para os equivalentes na ferramenta
dart. - Adicionamos esclarecimentos à diretriz do Effective Dart PREFER using interpolation to compose strings and values.
Versão 2.15
#Lançada em: 8 de dezembro de 2021
Esta seção lista mudanças notáveis feitas de 9 de setembro de 2021 até 8 de dezembro de 2021. Para detalhes sobre a versão 2.15, veja Announcing Dart 2.15.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Adicionamos Concorrência em Dart, que discute recursos como isolates, que permitem a execução paralela de código Dart.
-
Documentamos recursos do pub adicionados ou aprimorados na 2.15:
- Adicionamos uma página para o novo subcomando do pub, dart pub token, e uma página sobre repositórios de pacotes personalizados
- Adicionamos informações sobre a retração de pacotes
- Adicionamos o campo false_secrets à página do pubspec
- Atualizamos a sintaxe para dependências hospedadas
- Removemos todas as entradas de livros do Dart 1 livros
- Expandimos as dicas de solução de problemas do DartPad
- Atualizamos a página de mensagens de diagnóstico
-
Atualizamos a página de regras do linter;
removemos referências a conjuntos de regras depreciados, como
effective_dart - Atualizamos as instruções para instalar e usar o Dart DevTools
- Adicionamos informações sobre o que o runtime do Dart fornece, e esclarecemos os formatos de compilação
Versão 2.14
#Lançada em: 8 de setembro de 2021
Esta seção lista mudanças notáveis feitas de 20 de maio de 2021 até 8 de setembro de 2021. Para detalhes sobre a versão 2.14, veja Announcing Dart 2.14.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Aprofundamos a página sobre como corrigir falhas de promoção de tipo.
-
Documentamos como usar o arquivo
.pubignore, um recurso introduzido no Dart 2.14. -
Adicionamos a cobertura do operador de shift sem sinal
(
>>>), introduzido no Dart 2.14. - Desenvolvemos a página de regras do linter; atualizamos o Effective Dart para linkar para ela.
-
Adicionamos páginas para os comandos
dart createedart test. -
Terminamos de converter os exemplos que usavam as antigas ferramentas de linha de comando
(por exemplo,
dartfmt) para usar a ferramentadartunificada (por exemplo,dart format). - Atualizamos o código do site para usar as regras do linter recomendadas, em vez do pedantic.
- Atualizamos as listas de bibliotecas principais e de pacotes comumente usados.
- Adicionamos um redirecionamento de dart.dev/jobs para flutter.dev/jobs, para facilitar encontrar vagas abertas nas equipes do Dart e do Flutter.
- Terminamos de migrar todo o código analisado ou testado para null safety, atualizando o texto para corresponder. Encontramos mais código do site que não tinha sido analisado; corrigimos isso.
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
- Experimentando Dart e Wasm
- Como o null safety do Dart me ajudou a aprimorar meus projetos
- Implementando structs por valor no Dart FFI
Versão 2.13
#Lançada em: 19 de maio de 2021
Esta seção lista mudanças notáveis feitas de 4 de março de 2021 até 19 de maio de 2021. Para detalhes sobre a versão 2.13, veja Announcing Dart 2.13.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
- Atualizamos a seção de typedef do tour pela linguagem para refletir aliases de tipos que não são de função, introduzidos no Dart 2.13.
-
Publicamos ou atualizamos documentação relacionada à linha de comando e a servidores:
- Usando o Google Cloud descreve os produtos do Google Cloud que servidores Dart podem usar, frequentemente com a ajuda de imagens Docker já empacotadas.
- O tutorial de servidor HTTP,
que apresentava o pacote
http_server, descontinuado, foi substituído temporariamente por uma página "em construção" que linka para documentação e exemplos úteis. (Agora removido) - O tutorial de linha de comando foi totalmente atualizado. (Agora removido)
-
Publicamos outras páginas novas:
- Um codelab de null safety que ensina sobre o sistema de tipos null-safe do Dart, introduzido no Dart 2.12.
- Números em Dart traz detalhes sobre as diferenças entre as implementações nativas e web de números.
- Usando APIs do Google aponta recursos para ajudar você a usar as APIs cliente do Firebase e do Google em uma aplicação Dart.
- Escrevendo páginas de pacotes traz dicas para escrever um README de pacote que funcione bem no pub.dev.
- Corrigindo falhas de promoção de tipo tem informações para ajudar você a entender por que ocorrem falhas de promoção de tipo, e dicas de como corrigi-las.
- A nova página do
dart rundescreve como executar um programa Dart pela linha de comando.
- Continuamos o trabalho de migração do código para null safety, em especial o tutorial de streams.
-
Fizemos outras atualizações variadas:
- Removemos referências ao Stagehand, em favor do
dart create. - Alteramos as opções de análise do código de exemplo do dart.dev de
pedanticpara as regras recomendadas emlints. - Adicionamos o Docker como forma de obter o Dart.
- Atualizamos a página de evolução da linguagem para refletir o Dart 2.13.
- Removemos referências ao Stagehand, em favor do
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
- AngularDart, Flutter e a web: atualização da primavera
- Anunciando o suporte do Dart ao GitHub Actions
- Dart no Google Summer of Code 2021
Versão 2.12
#Lançada em: 3 de março de 2021
Esta seção lista mudanças notáveis feitas de 2 de outubro de 2020 até 3 de março de 2021. Para detalhes sobre a versão 2.12, veja Announcing Dart 2.12.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e melhorias incrementais, fizemos as seguintes mudanças neste site:
-
Atualizamos e aprofundamos a documentação de null safety (agora arquivada):
- Fornecemos um guia de migração.
- Adicionamos um FAQ.
- Criamos a documentação de null safety não sólido.
- Simplificamos a página inicial de null safety.
- Atualizamos o Effective Dart, alterando o código para ser null safe e as regras para refletir a nova orientação.
-
Atualizamos o tour pela linguagem, alterando o código para ser null safe e
adicionando informações sobre novos recursos, como as
variáveis
late. - Atualizamos a página de evolução da linguagem para adicionar informações sobre o versionamento da linguagem e para refletir o Dart 2.12.
- Atualizamos o tour pelas bibliotecas e os tutoriais para refletir o sound null safety.
-
Atualizamos páginas do site inteiro para usar a ferramenta
dartem vez de comandos descontinuados. Começamos a adicionar páginas para vários comandosdart, incluindodart analyze,dart compile,dart fixedart format. - Criamos uma página documentando a qualidade e o suporte dos pacotes da equipe Dart.
- Substituímos a página de Plataformas por uma nova página de visão geral.
- Criamos esta página ("What's new").
Também migramos do Travis CI para o GitHub Actions e fizemos várias mudanças de CSS para melhorar a legibilidade do site.
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
- Preparando o ecossistema Dart e Flutter para o null safety anunciou a estabilidade da API de null safety e convidou desenvolvedores a publicar versões estáveis e null-safe de seus pacotes.
- Dart e os benefícios de desempenho dos tipos sólidos demonstrou como a solidez e o null safety permitem que os compiladores Dart gerem código mais rápido e menor.
- Por que tipos anuláveis? expandiu uma discussão no subreddit /r/dart_lang, respondendo à pergunta "Por que não eliminar o null completamente?"
- Anunciando o beta do null safety do Dart convidou desenvolvedores a começar a planejar a migração para o null safety.
Versão 2.10
#Lançada em: 1 de outubro de 2020
Esta seção lista mudanças notáveis feitas de 1º de julho a 1º de outubro de 2020. Para detalhes sobre a versão 2.10, veja Announcing Dart 2.10.
Documentação atualizada ou adicionada ao dart.dev
#Além de correções de bugs e pequenas melhorias, fizemos as seguintes mudanças neste site:
-
Adicionamos uma página da ferramenta
dartpara documentar a nova interface de linha de comando do SDK do Dart. A nova ferramentadarté análoga à ferramentaflutterdo Flutter SDK. Antes, o comandodartsó executava aplicações de linha de comando. Atualizamos a páginadartanterior de acordo e planejamos atualizar as referências a outras ferramentas ao longo do tempo. -
Atualizamos a documentação do changelog de pacotes
para recomendar um formato padrão para arquivos
CHANGELOG.md. Esse novo formato permite que ferramentas (como o pub.dev, relançado) façam o parse dos changelogs. -
Alteramos uma diretriz do Effective Dart para preferir
usar
Objectem vez dedynamic. Para detalhes, veja a diretriz revisada EVITE usardynamica menos que você queira desabilitar a verificação estática. - Atualizamos a página de mensagens de diagnóstico para incluir mais mensagens produzidas pelo analyzer do Dart.
- Atualizamos a página de evolução para incluir a 2.9 e a 2.10.
- Reorganizamos a página da especificação da linguagem para facilitar encontrar a versão em PDF da especificação mais recente, em andamento.
-
Adicionamos ou atualizamos documentação relacionada ao sound null safety,
um recurso que está chegando à linguagem Dart:
- Esclarecemos como usar flags de experimento com IDEs.
- Atualizamos a página de null safety, adicionando informações sobre como habilitar o null safety.
- Adicionamos um mergulho profundo em null safety, Entendendo o null safety, escrito pelo engenheiro do Dart Bob Nystrom.
Artigos adicionados ao blog do Dart
#Publicamos os seguintes artigos no blog do Dart:
- Explorando coleções em Dart ajuda você a usar coleções (listas, maps, sets e outras), com atenção especial aos recursos da linguagem 2.3, como collection if, collection for e spreads.
- Resultados do Google Summer of Code 2020 descreve os resultados de cinco projetos orientados pela equipe Dart.
- Apresentando um novo pub.dev anuncia o relançamento do site pub.dev, com novas métricas de pontuação de pacotes, busca aprimorada e uma interface redesenhada.
Também melhoramos a navegação do blog, adicionando as abas announcement e archive, além de um link para o dart.dev.
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Página atualizada pela última vez em 2026-11-12. Ver código-fonte ou relatar um problema.
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ê.