BrazilJS 2014
- Data Binding é o processo que estabelece uma conexão entre a interface aplicação e o lógica de negócio
- Com o ES5, já tínhamos alguns métodos fazem com que comecemos a manipular propriedades de objetos e como lidamos com essas propriedades.
- Com o ES6 e ES7 teremos coisas mais interessantes, solucionando mais problemas.
- Os frameworks para data binding estão vindo: polymer, ember.js, react, Angular.JS, Backbone.js, way.js etc.
- O Way é um experimento lançado em pouco tempo, de uma forma de integrar sua interface com seus objeto.
- Data Binding quebra um pouco a linha de programação funcional.
- immutable.js - immutable data cannot be changed once created, leading to much simpler, application development and enabling techniques from functional programming such as lazy evaluation
- TodoMVC apanha uma série de exemplos de um projeto de listas de tarefas feitos com uma série frameworks como Ember, Angular, etc...
- ES6 Proxies: meta object programming evolves into proxy programming.
- Traps são métodos que prevêem acesso a propriedades.
- O ES7 está vindo com o Object.observe. É uma forma de data.binding nativo. A native, highly optimized implementation on which data binding strategies can bem built.
- Com o Object.observe você consegue criar um modelo de objeto e então observá-lo se há mudanças, inclusive de leitura ou escrita.
- Os frameworks geralmente fazem um Dirty Checking, mas eles fazem cada um de uma forma.
- Toda vez que uma mudança acontece no seu modelo, o framework/library faz uma checagem para ver o que mudou.
- O Proxy do ES6 só tem suporte no Firefox ainda.
- Experimente mesmo assim, você pode pegar erros para reportá-los o time de desenvolvimento.