angularjs in las palmas de gc

51
AngularJs 31 January 2014, Las Palmas de GC

Upload: marcin-wosinek

Post on 09-May-2015

325 views

Category:

Technology


4 download

DESCRIPTION

http://marcin-wosinek.github.io/blog/presentation/2014/01/31/AngularJs-Las-Palmas-de-GC.html

TRANSCRIPT

Page 1: AngularJs in Las Palmas de GC

AngularJs31 January 2014, Las Palmas de GC

Page 2: AngularJs in Las Palmas de GC

Part IBackground story

Page 3: AngularJs in Las Palmas de GC

C#

Page 4: AngularJs in Las Palmas de GC

Front-end

Page 5: AngularJs in Las Palmas de GC
Page 6: AngularJs in Las Palmas de GC
Page 7: AngularJs in Las Palmas de GC

refactor quit

Page 8: AngularJs in Las Palmas de GC

● TDD friendly

Must have

● good architecture● clean html

Nice to have

Page 9: AngularJs in Las Palmas de GC
Page 10: AngularJs in Las Palmas de GC
Page 11: AngularJs in Las Palmas de GC

Unit tests?

Page 12: AngularJs in Las Palmas de GC

with testability in mind

Page 13: AngularJs in Las Palmas de GC

BINGO

Page 14: AngularJs in Las Palmas de GC

Part IIBeginner

Page 15: AngularJs in Las Palmas de GC

Imperative

Declarative

Page 16: AngularJs in Las Palmas de GC
Page 17: AngularJs in Las Palmas de GC

Imperative Declarative

Page 18: AngularJs in Las Palmas de GC

$('#save').click(save);

<button ng-click=”save()”>Save</button>

Page 19: AngularJs in Las Palmas de GC

?

Page 20: AngularJs in Las Palmas de GC

html html + angular<button> <button ng-click="save()">

<input> <input ng-module="value">

<div> <div ng-show="isVisible">

<li> <li ng-repeat="element in list">

Page 21: AngularJs in Las Palmas de GC

Part IIIEveryday work

Page 22: AngularJs in Las Palmas de GC
Page 23: AngularJs in Las Palmas de GC
Page 24: AngularJs in Las Palmas de GC

?

Page 25: AngularJs in Las Palmas de GC
Page 26: AngularJs in Las Palmas de GC
Page 27: AngularJs in Las Palmas de GC

+

Page 28: AngularJs in Las Palmas de GC

+

Page 29: AngularJs in Las Palmas de GC

+ legacy code

Page 30: AngularJs in Las Palmas de GC

home

Page 31: AngularJs in Las Palmas de GC

+

Page 32: AngularJs in Las Palmas de GC

tempate

backend logic

backend logic

frontend logic

frontend logic

REST

request

json

Page 33: AngularJs in Las Palmas de GC

?

Page 34: AngularJs in Las Palmas de GC

ng-modelng-click

ng-changeng-app

Page 35: AngularJs in Las Palmas de GC

View

Controler

Send

Login:

Pass:

Page 36: AngularJs in Las Palmas de GC
Page 37: AngularJs in Las Palmas de GC

IVBeyond frontend

Page 38: AngularJs in Las Palmas de GC

Testing

Page 39: AngularJs in Las Palmas de GC

headerCtrl($scope, $location, User)

Page 40: AngularJs in Las Palmas de GC
Page 41: AngularJs in Las Palmas de GC

describe("Hello world", function() { it("says hello", function() { expect(helloWorld()).toEqual("Hello world!"); });});

Page 42: AngularJs in Las Palmas de GC

Automation

Page 43: AngularJs in Las Palmas de GC

?

Page 44: AngularJs in Las Palmas de GC
Page 45: AngularJs in Las Palmas de GC
Page 46: AngularJs in Las Palmas de GC

RAKE

Page 47: AngularJs in Las Palmas de GC
Page 48: AngularJs in Las Palmas de GC

??

?

?

?

Page 49: AngularJs in Las Palmas de GC

Summary

● testable● framework & ecosystem● tooling

Page 50: AngularJs in Las Palmas de GC

Contact● [email protected]● @MarcinWosinek● links, slides, notes and (hopefully) video:

http://bit.ly/lpa-angular

Page 51: AngularJs in Las Palmas de GC

Credits● spagetti: http://www.flickr.com/photos/jeena/5661116055/● confesion bear: http://knowyourmeme.com/photos/336370-confession-bear● mockups: http://balsamiq.com● admin page: http://www.flickr.com/photos/juggernautco/10065981863/ ● shopin cart: http://www.flickr.com/photos/sswinehart/4415385405 ● wikipedia: http://upload.wikimedia.org/wikipedia/commons/8/87/WikipediaMainPage.png ● games: http://www.flickr.com/photos/ian_d/30859899