Sunday, May 8, 2016

Introdução ao Meteor



Existem inúmeras bibliotecas javascript voltadas ao desenvolvimento de aplicações para o navegador.  Ficamos restritos ao uso do javascript, ou então a única alternativa possível é um plugin, instalado separadamente, que possa implementar a outra linguagem, de forma muito inconveniente. Essa idéia  levou à derrocada o Flash e seus derivativos, bem como produziu o fracasso dos applets java no navegador.
Por outro, precisamos de um servidor, que pode ter como linguagens de implementação o java, python, ruby (rails), ou inúmeras outras. Mas também podemos utilizar javascript do lado do servidor, para nossa vantagem, graças à existência de implementações como nodejs. Isso simplifica consideravelmente o desenvolvimento de uma aplicação completa, pois o mesmo programador pode escrever código para os dois lados da conversação na mesma linguagem, javascript.  É assentado sobre essa vantagem que surge o Meteor (meteoro em inglês), compartilhando em muitos casos exatamente o mesmo código dos dois lados, cliente e servidor e até mesmo no banco de dados.  Meteor trata o problema de criar aplicações web de forma completa, desde a definição de código no servidor e cliente, bem como na integração com o banco de dados, este último preferencialmente MongoDB (NoSql), além de fornecer as ferramentas de administração dos programas.

Meteor existe desde 2011, tendo criado a fama de ser a ferramenta ideal para a criação de protótipos de aplicações, mas atualmente está preparado para ser a solução completa de aplicações comerciais.  Ele transforma a aplicação em algo simples de ser compreendida, e permite que o desenvolvedor volte o foco para a funcionalidade da aplicação, no lugar de ficar se preocupando com sincronização de varáveis com a inteface gráfica ou servindo páginas para a aplicação. O core (núcleo) de Meteor é reativo, como veremos mais adiante, o que significa que atualizando as tabelas do banco de dados se reflete imediatamente e automaticamente nas variáveis e visões (views) da aplicação, mesmo que existam mútiplos clientes conectados ao mesmo tempo no servidor. Essa automação se deve em grande parte pela forma com que os módulos da aplicação se comunicam entre si, via um protocolo chamado DDP (Distributed Data Protocol) que governa a transferência de dados entre o servidor e os clientes.

No comments:

Post a Comment