Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PHP and Ember, a Bronies Paradise

PHP and Ember, a Bronies Paradise

Slides to presentation given at the Utah PHP User Group July 17, 2014

Eric Berry

July 17, 2014
Tweet

More Decks by Eric Berry

Other Decks in Programming

Transcript

  1. I tweet at @cavneb @coderberry I blog at coderberry.me I

    commit to github.com/cavneb I work for Instructure I run the EmberSLC meetup Eric Berry
  2. Rise of the Unicorn • Fork of Sproutcore in 2011

    by Yehuda Katz, Tom Dale and others • Core team includes 10 people (none are paid) • Current version is 1.6.1 • New stable release every 6 weeks.
  3. Core Team Yehuda Katz Tom Dale Peter Wagenet Erik Bryn

    Trek Glowacki Kris Seldon Stefan Penner Leah Silber Robert Jackson Alex Matchneer
  4. Core Team Apple Star Blade Thunder Strong Gunner Defiant Perfection

    Veiled Steel Magical Drop Heroic Fire Radiant Aura Charged Sprout Midnight Rainbow
  5. Goals of Ember • Create ambitious web applications • Become

    more productive out of the box • Write less code • Provide conventions and abstractions Photo by Amy Lombard
  6. Core Concepts • Object • Router • Model • Controller

    • View • Templates Photo by Amy Lombard
  7. Ember.Object http://emberjs.com/guides/object-model/classes-and-instances/ 1! 2! 3! 4! 5! 6! 7! 8!

    9! 10! 11! 12! 13! 14! 15! 16! 17! 18 App.Pony = Ember.Object.extend({! say: function(thing) {! var name = this.get('name');! alert(name + " says: " + thing);! }! });! ! App.FlyingPony = App.Pony.extend({! say: function(thing) {! this._super(thing + “ down there!");! }! });! ! var as = App.FlyingPony.create({! name: “Apple Star"! });! ! as.say(“Hello"); // alerts “Apple Star says: Hello down there!”!
  8. Application Flow http://emberjs.com/guides/object-model/classes-and-instances/ Controller Model Route Request The route then

    places the data on the controller. The controller maintains display-related state.
  9. Application Flow http://emberjs.com/guides/object-model/classes-and-instances/ Controller Model Route Template View Component Request

    Components can be used in templates to provide a self-contained view, controller and template
  10. Ember command line utility for ambitious web applications. Ember CLI

    • Generators • Tests • Environment support • Asset compilation via broccoli • ES6 • Dependency management • Community support
  11. I tweet at @coderberry I blog at coderberry.me I commit

    to github.com/cavneb I work for Instructure I run the EmberSLC meetup