Por que eu devo ler este artigo:A maioria das arquiteturas atuais faz uso de plataformas e linguagens diferentes em ambos os lados cliente e servidor, o que muitas vezes leva a código duplicado e complexidade aumentada, isso sem falar dos custos de manutenção e declínio da produtividade da equipe.

Foi pensando nisso que o Google criou a linguagem de programação Dart, com o intuito de facilitar a forma como integramos a aplicação como um todo.

Neste artigo veremos os principais tópicos acerca dessa linguagem: como ela lida com a Orientação a Objetos, sintaxe, responsividade, manipulação de erros, classes, interfaces, dentre outros.

No fim, o leitor estará apto a introduzir a linguagem nos seus projetos sem se preocupar em perder o poder que tinha antes ao usar JavaScript e Node.js, uma vez que ela gera a conversão para essas e muitas outras tecnologias.

Em meados de 2007 o Google inaugurou a sua primeira linguagem de programação, a linguagem Go ou golang, iniciando um ciclo de lançamentos futuros que desencadeariam em poderosas ferramentas como AngularJS, GWT e App Engine. Inicialmente, as linguagens assumiam características estruturadas e estáticas, em detrimento da ampla adoção que a empresa fazia (e ainda faz) de linguagens como C e C++.

Mas com o tempo, a necessidade de abraçar os universos front-end, mobile e server side ao mesmo tempo fez com a empresa criasse uma nova linguagem: a Google Dart.

A Dart é uma linguagem desenhada orginalmente para a web, que foi concebida na conferência GOTO na Dinamarca em outubro de 2011, em um projeto fundado pelos desenvolvedores Lars Bark e Kasper Lund. Como toda linguagem client side, a Dart precisou passar por uma bateria de testes junto à ECMA International para verificar seu funcionamento em browsers modernos, tendo assim sua primeira especificação aprovada e liberada para a comunidade.

De acordo com o site do projeto “a Dart foi desenhada para facilmente escrever ferramentas de desenvolvimento para aplicações web modernas e capacitadas para ambientes de alta performance”. Dentre as principais características da linguagem, podemos citar:

· É baseada em compilação de código JavaScript;

· Baseada em classes;

· Orientada a objetos;

· Tem sintaxe baseada na linguagem C;

· Implementa heranças simples;

· E suporta os principais tópicos da OO: interfaces, classes abstratas, genéricos e tipos opcionais.

Neste artigo abordaremos os principais conceitos da nova linguagem, sua sintaxe, principais estruturas programáticas, suas bibliotecas e seu SDK, além da grande quantidade de pacotes públicos disponíveis para importação nos seus projetos (conceito semelhante ao de frameworks como Grunt e React).

Configuração do ambiente

Para se trabalhar com a Dart a primeira coisa a se fazer é efetuar o download da linguagem, juntamente com o Dark Editor, a Dart SDK e o web browser Chrommium que traz consigo uma VM Dart pré-construída e disponibilizada gratuitamente.

Para isso, acesse o site oficial disponível na seção Links e clique no botão “Get Started”. Após isso, você será redirecionado para a página de definição da plataforma, conforme mostra a Figura 1.

Figura 1. Página de download com opções selecionadas.

Selecione o seu Sistema Operacional, depois clique na opção “Editor + SDK” para selecionar o instalador completo e no final os itens na seção “Download Dart Editor” irão aparecer para você identificar se o seu SO é 32 ou 64 bits.

Posicione o zip baixado na pasta onde você deseja criar os seus projetos Dart, e descompacte-o lá. Neste arquivo estará contido o executável do Dart Editor, basta executá-lo e você verá uma IDE semelhante à da Figura 2 aparecer.


abrir imagem em nova janela

Figura 2. Interface do Dart Editor.

Perceba como a interface é muito próxima da IDE Eclipse, isso porque o Google usou o núcleo do projeto Eclipse (que é free e open source) para construir uma nova ferramenta de desenvolvimento.

Esse tipo de estratégia é muito usado no mercado para construir IDEs como Spring IDE, MyEclipse e as ferramentas Rational da IBM. O pacote Dart SDK já vem selecionado e não deve ser removido da IDE para que a linguagem funcione corretamente.

A Dart pode ser usada para criar aplicações que não estejam presas ao HTML, de fora do browser. Para isso, basta integrar o seu ambiente ao Node.js.

Porém, como a maioria das aplicações são feitas visando o JavaScript, trataremos de focar num exemplo inicial onde exibimos um menu de navegação no browser e o usuário poderá clicar no mesmo e ser redirecionado para duas telas: uma para inverter o texto num campo de input e outra com informações sobre o site.

Este exemplo nos permitirá entender como a linguagem lida com os eventos de páginas HTML.

A Dart possibilita que criemos várias sortes de aplicações (a maioria com tecnologia Google) como projetos:

· Console Application: aplicações de execução direta via terminal de comandos, através da geração de arquivos .bat ou equivalentes de cada SO;

· App Engine Application: aplicações focadas na Google App Engine, para execução na nuvem do Google;

· Chrome App: aplicações ou plugins para o navegador Google Chrome;

· Dart Package: para criar um componente modularizado da Dart;

· Polymer Web Server: para hospedar aplicações desenvolvidas com o framework JavaScript Polymer.js;

· Web Applications: aplicações web simples, com suporte a JavaScript/bibliotecas, HTML e CSS.

Para isso, vá até o menu “File > New Application”. Preencha os campos “Application name” com o nome da aplicação e “Parent directory” com o diretório onde deseja salvá-la. Vamos dar o nome de AloMundoDart.

Mantenha a checkbox “Generate sample content” marcada para que a wizard de criação já nos traga uma estrutura pré-criada, e selecione a opção “Web application” na lista que aparecer logo abaixo. Clique em “Finish”. Isso irá gerar uma estrutura de projeto igual à da Figura 3.

Figura 3. Estrutura de pastas do projeto recém-criado.

A pasta lib conterá todos os arquivos de script da Dart, inclusive com dois gerados para o exemplo criado pela wizard. A pasta web guarda todo tipo de conteúdo relacionado ao front-end: imagens, CSS, arquivos HTML, favicons e outros arquivos .d ...

Quer ler esse conteúdo completo? Seja um assinante e descubra as vantagens.
  • 473 Cursos
  • 10K Artigos
  • 100 DevCasts
  • 30 Projetos
  • 80 Guias
Tenha acesso completo