Alex Urbano

@asgarothbelem
jsmemories.com




Un Marco para la creacion de aplicaciones web ambiciosas

A framework for creating ambitious web applications.









Que pasa cuando el tamaño y la complejidad de una aplicacion aumenta?


Cuando el framework no hace el trabajo por ti, tu lo haces!


Cualidades 

de un Framework?



Debe ser claro a donde pertenece el código

Organización



Escribir menos código, es tener menos código que mantener

Evitar el boilerplate



Cambios en una area no deben afectar otras áreas de la aplicación

Alta cohesión y bajo acoplamiento

Organización

Router

PostRoute cargara Post model en PostController  
renderiza " post " template

/post/123


PostEditRoute renderiza " post/edit " usando PostEditController
/post/123/edit

Ember.js tiene un flujo de datos y eventos muy claro

Web Components



templates/application.hbs
templates/components/gravatar-image.hbs

views/components/gravatar


Truth in Javascript


Not in the DOM
Not in the URL



Evitar el Boilerplate

Convención sobre configuración

router.js
views/photo.hbs









views/photo.hbs

Bajo Acoplamiento


Ember usa Handlebars.js
Logic-less templates





Las propiedades son automáticamente observadas y actualizadas ante cualquier cambio

Principio de Acceso Uniforme

Uniform Access Principle

Contenedor y "Resolver"


  • Contenedor actua como injector de dependencias (IOC Container)
  • Los Objetos no instancian  a sus colaboradores
  • El contenedor los "injecta" como dependencias
  • No hay que definir explícitamente las relaciones (Convención sobre Configuración)

Q&A



@asgarothbelem
jsmemories.com

Ember.js

By asgaroth

Ember.js

Ember.js para Avanet

  • 1,843