O que é Dart? \| TreinaWeb               Promoção no ar   Matricule-se agora e garanta **54% de desconto**  

  Termina em   Tempo restante da oferta: 15 Horas 

 49 Min 

 17 Seg 

   Tempo restante da oferta: 15 49 17 

  [Assinar →](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)  Explorar  

 [ Quanto custa? ](#assinatura) [ FAQ ](https://www.treinaweb.com.br#faq) [Matricule-se](#assinatura) [ Entrar ](https://www.treinaweb.com.br/login) 

     [ Início ](https://www.treinaweb.com.br) [ Artigos ](https://www.treinaweb.com.br/blog) O que é Dart?  [ Desenvolvimento ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento) 

# O que é Dart?

 Confira nesse artigo o que vem a ser o Dart, uma das linguagens de programação da Google.

 [ Marylene Guedes ](https://www.treinaweb.com.br/blog/autor/marylene-guedes) 7 anos atrás

  ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/10/20234042/capa-dart.png)  

Se você começou a estudar um pouco sobre o Flutter, provavelmente deve ter trabalhado um pouco com o Dart… Se você ainda não mexeu com [Flutter](https://www.treinaweb.com.br/blog/o-que-e-flutter/ "Flutter"), deve ter ouvido falar um pouco sobre o Dart, já que várias grandes empresas, como o Nubank, estão começando a migrar suas aplicações para esta linguagem. Porém, o que afinal de contas é o Dart?

### O que vem a ser o Dart?

O Dart é uma linguagem de programação fortemente tipada inicialmente criada pela Google em 2011. A missão inicial do Dart era substituir o [JavaScript](https://www.treinaweb.com.br/blog/o-que-e-e-como-comecar-com-javascript/ "JavaScript") para desenvolvimento de scripts em páginas web. Porém, com a evolução da linguagem e com o passar dos anos, ela hoje pode ser considerada uma linguagem multi-paradigma, embora a linguagem apresente fortes estruturas típicas de linguagens orientadas a objeto.

Hoje, sabemos que o Dart não obteve muito sucesso em sua missão inicial em substituir o JavaScript nos navegadores. Porém, o desenvolvimento e posterior sucesso do Flutter, que é fundamentado no Dart, fez com que a linguagem voltasse à tona, atraindo a atenção de muitos desenvolvedores.

O Dart possui algumas variantes no que diz respeito a seu ambiente de execução. O código Dart pode ser executado em uma máquina virtual (chamada DartVM, máquina virtual está inserida em um conjunto de ferramentas chamado Dart Native). Esta máquina virtual ainda pode ser executada em dois modos diferentes: **JIT** *(Just-in-Time Compiler)* e **AOT** *(Ahead-of-Time Compiler)*. De maneira mais simplista, a compilação JIT ocorre no momento da execução de um trecho de código, onde o código Dart é convertido para código de máquina à medida em que ele é executado.

Já na execução AOT, o código é convertido para código de máquina previamente. A outra maneira na qual podemos executar o código Dart é através de um processo de transpilação para JavaScript através da ferramenta dart2js, ferramenta esta também integrante do Dart SDK. Todos estes modos de execução tornam o Dart uma linguagem muito flexível e que pode ser executada tanto em ambientes nativos (como em aplicações mobile e desktop) como em ambientes web (como em uma aplicação web que utilize o Angular, por exemplo).

[  ![Flutter - Fundamentos](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/flutter.svg)   Curso Flutter - Fundamentos Conhecer o curso ](https://www.treinaweb.com.br/curso/flutter-fundamentos)

### A sintaxe do Dart

O Dart possui uma sintaxe com estilo baseado no C. Isso faz com que sua sintaxe seja muito similar à linguagens atualmente populares, como [Java](https://www.treinaweb.com.br/blog/o-que-e-e-como-comecar-com-java/ "Java") e [C#](https://www.treinaweb.com.br/blog/o-que-e-e-como-comecar-com-c-sharp/ "C#"). Porém, o Dart tenta reduzir um pouco os ruídos característicos de linguagens baseadas no C.

Um simples *“Hello World”* em Dart poderia ser escrito da seguinte forma:

```dart
main() {
  print('Hello World!');
}

```

Dart também possui algumas características de linguagens funcionais. Isso fica claro no exemplo abaixo, onde uma sequência de Fibonacci é gerada.

```dart
int fib(int n) => (n > 2) ? (fib(n - 1) + fib(n - 2)) : 1;

void main() {
  print('fib(20) = ${fib(20)}');
}

```

### Críticas ao Dart

Um dos pontos que dificultaram a adoção do Dart no início foi o fato de que a Google foi acusada de fomentar a fragmentação das plataformas web. Para a maioria dos desenvolvedores e empresas, não fazia sentido trocar uma linguagem consolidada para a web como o JavaScript por uma linguagem nova como o Dart, por mais que a Google tivesse planos de incluir a DartVM de maneira nativa ao Google Chrome na época, já um dos browsers mais utilizados.

A fama que a Google tem por abandonar alguns produtores de maneira abrupta também fizeram com que os desenvolvedores olhassem com uma certa desconfiança para o Dart.

Porém, o sucesso do Flutter serviu para que desenvolvedores em geral começassem a pensar em dar uma chance para o Dart. Suas features desenvolvidas para lidar com uma maneira muito simples com aspectos complicados como concorrência e transições em interfaces serviram para mostrar os valores da linguagem.

Além disso, a Google já não tem mais os planos de fazer com que o Dart venha a substituir o JavaScript, já que este objetivo não foi alcançado no passado. Isso fez com que a Google adotasse o caminho de interoperabilidade entre o JavaScript e o Dart, fazendo com que o transpilador Dart para JavaScript fosse desenvolvido.

[  ![Dart - Orientação a Objetos](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/dart.svg)   Curso Dart - Orientação a Objetos Conhecer o curso ](https://www.treinaweb.com.br/curso/dart-orientacao-a-objetos)

- [ #dart ](https://www.treinaweb.com.br/blog/tag/dart)
- [ #linguagem de programação ](https://www.treinaweb.com.br/blog/tag/linguagem-de-programacao)
- [ #flutter ](https://www.treinaweb.com.br/blog/tag/flutter)

Autor

 ![Marylene Guedes](//secure.gravatar.com/avatar/5b0ba52b3705f298802db58782656bbc?d=mm)

## Marylene Guedes

 Responsável pelo sucesso do cliente na TreinaWeb. Graduada em Gestão de Tecnologia da Informação pela FATEC Guaratinguetá, além de estudante de UX/UI. 

 [Todos os artigos](https://www.treinaweb.com.br/blog/autor/marylene-guedes)  

## Continue estudando

 Transforme leitura em prática com os cursos e formações da TreinaWeb.

 [Ver cursos](https://www.treinaweb.com.br/cursos)   

  Continue lendo

## Artigos relacionados

- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2020/07/MIXINS-DART-400x280.png)  [ Flutter ](https://www.treinaweb.com.br/blog/categoria/flutter) 

     6 anos atrás

    ##  [ O que são mixins e qual sua importância no Dart ](https://www.treinaweb.com.br/blog/o-que-sao-mixins-e-qual-sua-importancia-no-dart) 

     Veja neste artigo o que são mixins e qual sua importância no Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/07/DART-ORIENTACAO-OBJETOS-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     4 anos atrás

    ##  [ Orientação a objetos em Dart ](https://www.treinaweb.com.br/blog/orientacao-a-objetos-em-dart) 

     Aprenda Orientação a objetos em Dart e como trabalhar com classes, atributos, métodos e objetos em Dart e aumente seus conhecimentos!

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/11/ARTIGO-DART-400x280.jpg)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     4 anos atrás

    ##  [ Guia da linguagem dart ](https://www.treinaweb.com.br/blog/guia-da-linguagem-dart) 

     Nesse guia da linguagem Dart você aprenderá o necessário para criar os seus primeiros softwares com a linguagem de programação Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/09/PUB-DEV-400x280.jpg)  [ Flutter ](https://www.treinaweb.com.br/blog/categoria/flutter) 

     4 anos atrás

    ##  [ Gerenciador de pacotes Dart e Flutter ](https://www.treinaweb.com.br/blog/gerenciador-de-pacotes-dart-e-flutter) 

     Saiba o que é o gerenciador de pacotes Dart e Flutter, como utilizar um pacote, biblioteca instalada por ele e sobre o pubspec.yaml.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/como-instalar-o-dart-e-executar-seu-primeiro-exemplo-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     6 anos atrás

    ##  [ Como instalar o Dart e executar seu primeiro exemplo ](https://www.treinaweb.com.br/blog/como-instalar-o-dart-e-executar-seu-primeiro-exemplo) 

     Neste artigo veremos como instalar o Dart nos sistemas Windows, Linux e MacOS e executar nosso primeiro programa com a linguagem.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2020/06/MAPAS-DART-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     6 anos atrás

    ##  [ Manipulando mapas no Dart ](https://www.treinaweb.com.br/blog/manipulando-mapas-no-dart) 

     Veja neste artigo como manipular mapas no Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2020/06/listas-dart-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     6 anos atrás

    ##  [ Manipulando listas no Dart ](https://www.treinaweb.com.br/blog/manipulando-listas-no-dart) 

     Veja neste artigo como manipular listas no Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2020/02/27202313/FLUTTER-O-QUE-É-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     7 anos atrás

    ##  [ O que é Flutter? ](https://www.treinaweb.com.br/blog/o-que-e-flutter) 

     Veja neste artigo o que é Flutter.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2023/02/CSS-JS-400x280.jpg)  [ CSS ](https://www.treinaweb.com.br/blog/categoria/css) 

     4 anos atrás

    ##  [ O que é PostCSS e suas funcionalidades ](https://www.treinaweb.com.br/blog/o-que-e-postcss-e-suas-funcionalidades) 

     Neste artigo veremos uma ferramenta que vem auxiliando muito os desenvolvedores durante seus projetos, sendo ela, PostCSS.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2020/04/17120810/Fuchsia-400x280.png)  [ Desenvolvimento Mobile ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-mobile) 

     7 anos atrás

    ##  [ O que é o Fuchsia? ](https://www.treinaweb.com.br/blog/o-que-e-o-fuchsia) 

     Veja neste artigo o que é o Fuchsia, novo sistema operacional da Google.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/10/20234042/capa-dart-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     5 anos atrás

    ##  [ Como utilizar generics no Dart ](https://www.treinaweb.com.br/blog/como-utilizar-generics-no-dart) 

     Neste artigo vamos aprender sobre os Generics na linguagem Dart e como eles podem nos auxiliar em garantir que os tipos dos objetos sejam o que esperamos que eles sejam.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/como-instalar-o-dart-e-executar-seu-primeiro-exemplo-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     6 anos atrás

    ##  [ Estruturas condicionais e de repetição no Dart ](https://www.treinaweb.com.br/blog/estruturas-condicionais-e-de-repeticao-no-dart) 

     Neste artigo conheceremos as estruturas condicionais e estruturas de repetição na linguagem de programação Dart.

     Ler artigo

## Um ano de acesso total para você viver de programação.

 Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro `console.log` ao mercado de trabalho.

- **1 ano** de acesso a **todos os cursos**
- Cursos novos **toda semana**
- Suporte **direto com professores**
- Plano de carreira **personalizado**
- **Certificados digitais** inclusos
- **Aplicativos** para Android e iOS, com **acesso offline**

    **Garantia incondicional de satisfação** 

 Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

### Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **15h 49min 17s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

     [                ](https://www.treinaweb.com.br)

 Escola online de programação, tecnologia e IA.

- [  ](https://www.facebook.com/TreinaWeb/)
- [  ](https://www.instagram.com/treinaweb/)
- [  ](https://www.youtube.com/user/TreinaWeb)
- [  ](https://twitter.com/treinaweb)
- [  ](https://www.linkedin.com/company/treinaweb)
- [  ](https://github.com/treinaweb)

## Inscreva-se em nossa newsletter

Receba lançamentos, promoções e novidades.

   Seu nome     Seu WhatsApp     Seu melhor e-mail   Inscrever-se 

## Cursos

- [ Base para Devs ](https://www.treinaweb.com.br/categoria/base-para-devs)
- [ Front-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-front-end)
- [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end)
- [ Mobile ](https://www.treinaweb.com.br/categoria/desenvolvimento-mobile)
- [ Bancos de Dados ](https://www.treinaweb.com.br/categoria/bancos-de-dados)
- [ Cloud ](https://www.treinaweb.com.br/categoria/cloud-computing)
- [ IA ](https://www.treinaweb.com.br/categoria/ia)
- [ E mais ](https://www.treinaweb.com.br/categoria/e-mais)
- [ Ver todos os cursos ](https://www.treinaweb.com.br/cursos)

## Conteúdo

- [ Formações ](https://www.treinaweb.com.br/formacoes)
- [ Projetos práticos ](https://www.treinaweb.com.br/projetos-praticos)
- [ Direto ao ponto ](https://www.treinaweb.com.br/direto-ao-ponto)
- [ Planos ](https://www.treinaweb.com.br#assinatura)
- [ Depoimentos ](https://www.treinaweb.com.br#depoimentos)
- [ Comunidade ](https://www.treinaweb.com.br#comunidade)
- [ Corpo docente ](https://www.treinaweb.com.br#docente)

## A empresa

- [ Sobre a TreinaWeb ](https://www.treinaweb.com.br#sobre)
- [ Perguntas frequentes ](https://www.treinaweb.com.br#faq)
- [ Vantagens de estudar na TreinaWeb ](https://www.treinaweb.com.br/vantagens-de-estudar-na-treinaweb)
- [ Cursos para empresas ](https://www.treinaweb.com.br/empresas)
- [ Sugira um novo curso ](https://www.treinaweb.com.br/sugerir-curso)
- [ Trabalhe conosco ](https://www.treinaweb.com.br/trabalhe-conosco)
- [ Artigos ](https://www.treinaweb.com.br/blog)
- [ Desenvolvedores e agentes ](https://www.treinaweb.com.br/developers)
- [ Contato ](https://www.treinaweb.com.br/contato)
- [ Política de privacidade ](https://www.treinaweb.com.br/politica-de-privacidade)
- [ Termos de uso ](https://www.treinaweb.com.br/termos-de-uso)

## Baixe nosso aplicativo

 [   Disponível na **App Store**  ](https://apps.apple.com/us/app/treinaweb/id1322729447) [   Disponível no **Google Play**  ](https://play.google.com/store/apps/details?id=br.com.treinaweb.mobile) 

  Av. Paulista, 1765, Conj 71 e 72 · Bela Vista · São Paulo · SP · 01311-200   © 2004 – 2026 TreinaWeb Tecnologia LTDA · CNPJ 06.156.637/0001-58
