Play-By-Play Announcer: Todd Bashor Image credit:

Slides:



Advertisements
Similar presentations
Validation in Angular 1.3 And other angular tidbits.
Advertisements

Wireless: WDDPublic Follow along with the code: (or download the Join Me app.
MVVM/MVC in Client-side SPA var subTitle = { value: ‘Single page application approaches and usage’, speaker1: ‘Stanimir Todorov, Product Developer Infragistics’,
Javascript and AJAX Willem Visser RW334. Overview Javascript jQuery AngularJS AJAX.
USING ANGULARJS WITH SITEFINITY
Fundamentals, DOM, Events, AJAX, UI Doncho Minkov Telerik Corporation
What Are My Choices for Building a Modern Web UI?
Ori Calvo, 2010 “If people want to have maximum reach across *all* devices then HTML will provide the broadest reach” Scott Guthrie,
Single Page Applications with AngluarJS Bill Wolff Rob Keiser
NextGen Technology upgrade – Synerizip - Sandeep Kamble.
SUNY Polytechnic Institute CS 490 – Web Design, AJAX, jQueryAngularJS AngularJS is a client-side JavaScript Framework for adding interactivity to HTML.
JavaScript Frameworks
Introduction Marko Marić, Danulabs
JavaScript MVC Frameworks
AngularJS Routing Routes, Route Parameters, Templates, Location, Navigation SoftUni Team Technical Trainers Software University
Bob German Principal Architect A New on SharePoint Development Building Light-Weight Web Parts with AngularJS
AngularJS Services Built-in and Custom Services SoftUni Team Technical Trainers Software University
By: Toms Linnes Mrunal Patel.  Universal  With qooxdoo you build rich, interactive applications, native-like apps for mobile devices light weight single.

DIRECTOR + BACKBONE = :) JANESSA DET – LEAD FRONT-END THEFUTURE.FM.
@ScotHillier Web Parts Workflows Pages Libraries App Parts SharePoint-Hosted Apps Provider-Hosted Apps.
INTRODUCTION TO HTML5 Using jQuery with HTML5. Introducing jQuery  Although it is not a part of any W3C or WHATWG specification, jQuery performs an important.
Introduction to Angular JS Sergey Barskiy Working Class Nobody Level: Introductory.
Building Rich Apps with AngularJS on ASP.NET.
Sayed Ahmed Computer Engineering, BUET, Bangladesh (Graduated on 2001) ( ) MSc in Computer Science, U of Manitoba, Canada Linkedin: linkedin.com/in/sayedjustetclinkedin.com/in/sayedjustetc.
Microsoft Virtual Academy Stacey Mulcahy | Technical Evangelist Christopher Harrison | Content Developer.
Controllers and Markup Controllers, $scope, Markup, Directives, Expressions, Binding, Filters, Validation SoftUni Team Technical Trainers Software University.
+ BackBone.js By. Phil Sheperd. + What is BackBone BackBone is a Javascript Framework How is this different From jQuery or Prototype? Libraries vs Framework.
JQuery JavaScript is a powerful language but it is not always easy to work with. jQuery is a JavaScript library that helps with: – HTML document traversal.
Introduction to Angular James Kahng. Terms Framework Template/environment constructed in the language where you fill in details with code Library Set.
Krishna Mohan Koyya Glarimy Technology Services
02 | Introduction to Express Stacey Mulcahy | Technical Evangelist Rami Sayar | Technical Evangelist.
BIT116: Scripting Associative Arrays. Today AngularJS Q + A for the exam 2.
Angular 2.
Click to edit Master subtitle style Full stack. SPA development.
ANGULARJS A Gentle Introduction John Madison.NET User Group.
C# Corner Mumbai Chapter Meet Getting Started with SPA technologies By swapnal R. chonkar.
Understanding JavaScript and Coding Essentials Lesson 8.
MTA EXAM HTML5 Application Development Fundamentals.
Chapter 1 Murach's JavaScript and jQuery, C1© 2012, Mike Murach & Associates, Inc.Slide 1.
Check Boxes. 2 Check boxes  Image from:  HTML:  Each box gets it's own.
Agenda 1)Modern web standards overview 2)JavaScript library overview 3)Building a Single Page Application SPA.
Preliminary Software design and Development a Welcome to our Coding Day session one.
AngularJS. What is AngularJS  Javascript Framework  MVC  for Rich Web Application Development  by Google.
AngularJS and SharePoint
ANGULAR 2. JavaScript is a high-level, dynamic, untyped, and interpreted programming language. JavaScript was originally developed in May 1995 by Brendan.
AngularJS By Alireza Mirian At HasinTech.. Why Angular at first place The reason something like Angular emerges: The path Web Standards have went through.
Angularjs 2.0 : Getting started
Angular vs React John
Angular JS and SharePoint
Ember, AngularJS, Backbone.js, Knockout, … eeem??
Extra Course
Play Framework: Introduction
AngularJS A Gentle Introduction John
JavaScript Basics Stephen Delaney
SharePoint Framework Extensions
Responsive browser-based video recording and playback
Jessica Betts, Sophia Pandey, & Ryan Amundson
ASP.NET Web Forms Vs. ASP.NET MVC ASP.NET is Microsoft’s big leap after Active Server Pages (ASP), ASP.NET provides flexible and unified web development.
Introduction to AngularJS
Modern web applications
Rich single page applications with SharePoint
Modern web applications
AngularJS Michael Kang August 20th 2015.
Chengyu Sun California State University, Los Angeles
Angular 2 : CRUD Operations
Chengyu Sun California State University, Los Angeles
PART 1.
05 | An Introduction to AngularJS
Modern Front-end Development with Angular JS 2.0
Presentation transcript:

Play-By-Play Announcer: Todd Bashor Image credit:

Background image credit: nicksarebi on Flickr

AGE RC.2 CURRENT RELEASES ISSUES CLOSED ISSUES OPEN 19.4KB 81.4KB WEIGHT

Round 1: Learnability “…perhaps easy to adopt because it’s so minimal” -Steven Sanderson “The learning curve of AngularJS can be described as a hockey stick.” -Matt Frisbie

BACKBONE UP BY 1

Round 2: Separation of Concerns - Model Sync Collection View - Router Events Module Scope $http, $resource - View Directive Filter $routeProvider, $location Controller, $...

Round 2: Separation of Concerns View var HelloView = Backbone.View.extend({ template: _.template($('#hello-template').html()), events: {"click button": "doSomething"}, render: function(){ $(this.el).html( this.template( this.model.attributes)); return this; }, doSomething: function(e){ /*do something*/} }); var helloView = new HelloView({model: greeting}); $("body").append(helloView.el); helloView.render(); View var HelloView = Backbone.View.extend({ template: _.template($('#hello-template').html()), events: {"click button": "doSomething"}, render: function(){ $(this.el).html( this.template( this.model.attributes)); return this; }, doSomething: function(e){ /*do something*/} }); var helloView = new HelloView({model: greeting}); $("body").append(helloView.el); helloView.render(); Model var Greeting = Backbone.Model.extend({}); var greeting = new Greeting({title: ”World"}); Model var Greeting = Backbone.Model.extend({}); var greeting = new Greeting({title: ”World"}); DOM Hello OK DOM Hello OK

Round 2: Separation of Concerns Image credit:

Angular Directive todomvc.directive('todoBlur', function () { return function (scope, elem, attrs) { elem.bind('blur', function () { scope.$apply(attrs.todoBlur); }); }; });

BACKBONE STILL UP BY 1 BACKBONE STILL UP BY 1

Round 3: Templating Pick your favorite template engine underscore handlebars dust ejs jade … Decorate the DOM

Round 3: Templating > ">

Round 3: Templating {{todo.title}}

1 EACH

Round 4: Routing var TodoRouter = Backbone.Router.extend({ routes: { '*filter': 'setFilter’ }, setFilter: function (param) {…} }); app.TodoRouter = new TodoRouter(); Backbone.history.start();

Round 4: Routing var todomvc = angular.module('todomvc', []). config(['$routeProvider', function($routeProvider) { $routeProvider.when('/:state', { templateUrl: 'index.html', controller: todomvc.TodoCtrl }).otherwise({redirectTo: '/'}); }]);

BACKBONE UP BY 1

Round 5: Testability beforeEach(function () { this.model = new app.Todo(); this.view = new app.TodoView({ model: this.model });

Round 5: Testability it("should set focus for editing", function () { // Must call render to populate element for // `$input` this.view.render(); var spy = sinon.spy(this.view.$input, "focus"); this.view.edit(); expect(spy).to.be.calledOnce; });

Round 5: Testability /*global inject, expect, angular*/ describe('todoFocus directive', function () { var scope, compile, browser; beforeEach(inject( function ($rootScope, $compile, $browser) { scope = $rootScope.$new(); compile = $compile; browser = $browser; })); //snip });

Round 5: Testability describe('SetFocus directive', function() { var scope, element, timeout; beforeEach(inject(function($rootScope, $compile, $timeout) { timeout = $timeout; scope = $rootScope.$new(); element = angular.element(' '); $compile(element)(scope); scope.$digest(); })); it('sets the input to be focussed when inFocus message is broadcast', function() { scope.$broadcast('inFocus'); timeout.flush(); expect(scope.focusedElement).toEqual(element); });

2 EACH

Round 6: Reusability PluginsDirectives Filters Services

ANGULAR UP BY 1

Round 7: Community CONTRIBUTO RS 1,268 1,577 WATCHERS 15,810 14,842 STARS 29,181 34,295 STACKOVERFLO W BOOKS

TIED! 3 ROUNDS EACH TIED! 3 ROUNDS EACH

Fix your jQuery Enhance your page Play well with other libraries Round 8: Fit for Purpose Take HTML to a new level Build serious CRUD apps Maintain large apps

Learn More backbonejs.org todomvc.com backbonetutorials.com github.com/addyosmani/backbone- fundamentals angularjs.org todomvc.com egghead.io github.com/jmcunningham/Angular JS-Learning Todd Bashor