• What?
  • Who?
  • Contact Jonathan Jeter
  • Privacy Policy

Jonathan Jeter

Director of Application Development

  • Jonathan Jeter on Google+
  • Jonathan Jeter on Facebook
  • Follow Jonathan Jeter on Twitter
  • Jonathan Jeter on LinkedIn
  • Jonathan Jeter's rss feed
Home Web Development JavaScript You Got your MVC into my Components: Adding Bindings to Enyo

You Got your MVC into my Components: Adding Bindings to Enyo

February 2, 2013 By Jonathan Jeter Leave a Comment

by Ben Combee at the HTML5 Texas Conference in Austin, TX

Enyo (http://enyojs.com) started as an web application framework, focusing on the problem of effectively building reusable UI components.  However, many app developers view problems through a Model-View-Controller (MVC) point-of-view where the UI is seen as a templating problem.  This talk looks at how the Enyo framework evolved in late 2012 to take on aspects of MVC, integrating support for Backbone models and data binding into our component & message passing architecture.  In doing so, it reveals what these two worlds can learn from each other, and how they both play into future work on the “web platform”.

Adding bindings to EnyoEnyo help build html apps with the feel of native apps.

A new way of thinking

How do you keep application state?

Templates are not enough. Interactive controls are hard to put into templates.

UI Plugins are not enough because in application development you have to maintain state and other things that aren’t necessary on the desktop.

The huge advantage of enyo is that it is a fully encapsulated object and can be re-used throughout the application. markup, event handling, logic/state, user state, etc.

You can easily combine and reuse views.

The goal is to never have to touch the HTML and just use components with css applied.

Complexity Alert

  • Components can lead to complexity
  • Data isn’t centralizes
  • Lots of broilerplate code repeated over and over

MVC

Other Patterns

  • MVP (mode view presenter)
  • MVVM (model view modelview)
  • MD (model delegate)
  • MI
  • HMVC
  • PAC
  • MPVC
  • FLA
  • TIP

EMV (Enyo-model-view-something)

  • Allows tight or lose coupling of views and controllers
  • Allows view-owned-controllers and controller-owned-views
  • Introduces the observer pattern, computed properties, the mixin pattern and bindings
  • A ton of other cool features, improvements and added versatility

Integration with Backbone

  • a controller that knows how to interact with backbone.collection
  • a controller that knows how to work with backbone.model

At this point, the talk went into details of how you actually program in Enyo.

Related articles
  • Enyo: Up and Running
  • Webcast: Cross Platform App Development with Enyo – Apr 16 2013
  • A Collection Of Javascript MVC Frameworks That You Should Know

Tell someone about this:

  • Email
  • Print
  • Twitter
  • LinkedIn
  • Facebook
  • More
  • Reddit
  • Pocket
  • Tumblr

Like this:

Like Loading...

Related

Filed Under: JavaScript, MVC, Web Development Tagged With: app developer, app developers, application development, application state, application. markup, articles Enyo, Backbone models, Ben Combee, broilerplate code, Complexity Alert Components, complexity Data, conference notes, cool features, data binding, Enyo framework, Enyo help, event handling, FLA TIP EMV, fully encapsulated object, future work, html apps, HTML5 Texas, HTML5 Texas Conference, huge advantage, Interactive controls, Javascript MVC Frameworks, mixin pattern, mode view presenter, model delegate, model view, model view modelview, Model-View-Controller MVC, MVC framework, MVC Frameworks, MVC Other Patterns, native app, native apps, new way, observer pattern, Platform App Development, reusable UI components, Running Webcast, Technology Internet, templating problem, Texas conference, TX Enyo, UI components, UI Plugins, User interface, user state, versatility Integration, web app, Web application, web application framework, web platform

About Jonathan Jeter

Jonathan Jeter has been creating websites since 1997. He is currently Director of Technology Services and Digital Development at TracyLocke, a shopper marketing agency. You can follow him @mywebthoughts, on LinkedIn or connect on Google+.

What do YOU think? Let me know...Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Stuff I Like to Talk About:

  • Business
  • Digital Imaging
  • Internet Marketing
    • Email Marketing
    • SEM / Paid Search
  • Life
  • Other Stuff
    • Health
    • Taekwondo (TKD)
  • Sports
    • Football
  • Technology
    • Augmented Reality
    • Awesome or Scary?
    • Marketing Technology
      • Data / Analytics
      • Omnichannel
    • Mobile
      • Android
    • Virtual Reality
  • User Interface / User Experience Design
  • Web Development
    • Browsers
    • CSS
    • Front-End Development
    • Google+ (Google Plus)
    • HTML5
    • JavaScript
    • jQuery
    • Mobile
    • MVC
    • Responsive Design
    • SEO
    • Social Media
    • UI/UX
    • WordPress

HTML

  • HTML Entities

JavaScript

  • MEAN.js

My Sites

  • Head Turning Media
  • Jonathan Jeter (Brand Yourself)
  • My Humor

Online Experts

  • Bryan Eisenberg
  • Danny Sullivan
  • Duane Forrester
  • Keith Brown
  • Louis Gray
  • Matt Cutts

UI / UX

  • Jared Spool
  • Paul Jeter
FreshBooks
Genesis Framework for WordPress Premise Landing Pages Made Easy

Most Popular

  • Verizon Wireless – My Favorite Mobile Provider
  • Who?
  • Intro to WebGL and Three.js – Front Porch…
  • Exploring Standard Ad Unit Sizes: Google AdSense…
  • Looking for Instagram or Android fonts or logos and…
  • A Brief History of the Complete Redesign of Google…
  • People Data and the Future of Marketing –…
  • Exploring Standard Ad Unit Sizes: Google AdSense…
  • Jared Spool – The Essential Principles behind…
  • Contact Jonathan Jeter

Copyright © 2025 Jonathan Jeter

 

Loading Comments...
 

    %d