Ember.js

Origem: Wikipédia, a enciclopédia livre.
Ember.js
Autor Yehuda Katz
Desenvolvedor Ember Core Team
Lançamento 8 de dezembro de 2011; há 12 anos
Escrito em JavaScript
Sistema operacional Multiplataforma
Licença Licença MIT
Estado do desenvolvimento Corrente

O Ember.js, ou somente Ember, é um framework web JavaScript de código aberto, baseado na arquitetura Model–view–viewmodel (MVVM). Ele permite aos desenvolvedores aplicativos web de página única escaláveis,[1] ao incorporar expressões idiomáticas comuns e boas práticas de desenvolvimento em seu núcleo.

Ember é usado em muitos sites populares, incluindo Discourse,[2] Groupon,[3] LinkedIn, VineTwitch.tv e Chipotle.[4] Embora inicialmente considerado um framework somente para a web, também é possível criar aplicações para dispositivos móveis e para desktop com o uso de Ember.[5][6][7] O exemplo mais notável de um aplicativo Ember para desktop é o Apple Music,[8] uma funcionalidade do iTunes para desktop.

Conceitos básicos[editar | editar código-fonte]

Ember é composto por cinco conceitos-chave: [9]

Rotas (Routes)
No Ember, o estado de uma aplicação é representada por uma URL. Cada URL tem um objeto de rota correspondente que controla o que é visível para o usuário.
Modelos (Models)
Cada rota tem um modelo associado, contendo os dados associados ao estado atual do aplicativo.[10] Embora seja possível usar jQuery para carregar objetos JSON de um servidor e usar esses objetos como modelos, a maioria dos aplicativos usa uma biblioteca de modelos, como Ember Data, para lidar com isso.
Padrões (Templates)
Templates são usados para criar o HTML do aplicativo e são escritos com a linguagem de templates HTMLBars. (HTMLBars é uma variação do Handlebars que cria elementos DOM em vez de uma String.)[11]
Componentes
Um componente é uma tag HTML personalizada. O comportamento é implementado usando JavaScript e sua aparência é definida usando modelos HTMLBars. Componentes "são donos" de seus dados. Eles também podem ser aninhados e podem se comunicar com seus componentes pai por meio de ações (eventos). Outras bibliotecas de componentes, tais como Polymer também podem ser usadas com Ember.[12]
Serviços
Serviços são apenas objetos singleton para armazenar dados de longa duração, como sessões de usuários.[13]

Ember também fornece injeção de dependência, vinculação de dados bidirecional declarativa, propriedades computadas e templates auto-atualizáveis.[14]


Referências[editar | editar código-fonte]

  1. Aghassipour, Alexander; Chacko, Shajith (30 de novembro de 2012). «Enterprise Apps Are Moving To Single-Page Design». TechCrunch 
  2. «Discourse-Built with Ember.js». GitHub. 15 de julho de 2015 
  3. «Building With Ember.js at Groupon». TalentBuddy. 15 Out 2015 
  4. http://libscore.com/?#Ember
  5. «Ember-Write Once, Run Everywhere». GitHub. 5 de julho de 2015 
  6. «Build better desktop apps with Ember». SpeakerDeck. 5 de julho de 2015 
  7. «Wicked Good Ember 2015 talk - Build better desktop apps with Ember, video». 5 de julho de 2015 
  8. «Built with ember - Apple Music». BuiltWithEmber. 21 de julho de 2016 
  9. «5 Essential Ember Concepts You Must Understand - Ember Igniter». emberigniter.com (em inglês). Consultado em 1 de novembro de 2018 
  10. «Ember.js - Models: Introduction». Emberjs. Consultado em 21 de janeiro de 2014 
  11. Jackson, Robert. «HTMLBars». GitHub. Consultado em 18 Fev 2015 
  12. «How To Add Polymer To Your Ember Project». ProgramWithErik. Consultado em 11 Ago 2015 
  13. «Ember Services Tutorial». ProgramWithErik. 27 de Julho de 2015 
  14. Bango, Rey (14 de março de 2013). «Getting Into Ember.js». Nettuts+