SlideShare uma empresa Scribd logo
1 de 11
Angular – Say
Goodbye to
Javascript Soup
Graeme Foster
Page
Back in time to 1999
Page
What’s bad with what we have?
› … DOM / JQuery / Html becomes messy
› … and difficult to test
› … and regression creeps in
› … and it becomes unmaintainable
› Web Apps are getting complex!
Page
Enter the framework
› There are many web frameworks
› Ember
› Backbone
› Knockout
› And approximately 10 new ones per day…
› Check them out
Page
Angular Core Concepts
› UI is declarative
› “Extensions” toHtml
› HeavyuseofData Binding
› App Logic is imperative
› WritteninJavascript
› Dependency Injection atits heart
Page
Demonstrations
Page
Achievements Unlocked
› Markup is simple, contains no Javascript.
› App logic is in small javascript components
where it is easy to test
› And we even used gulpjs to run automated tests!
Page
Takeaways
› Data Binding via directives
› Value conversion using filters
› Unit testing controllers using Jasmine
› Mocking out $http using $httpBackend and testing
http calls
› Routes using ng-route
› Little-s-singletons implemented as services
Page
References
› https://angularjs.org/
› https://groups.google.com/forum/#!forum/angular
› https://www.youtube.com/user/ngconfvideos
› http://tutorials.jenkov.com/angularjs/index.html
/ Copyright ©2014 by Readify Pty Ltd9
Page
Contact
graeme.foster@readify.net
http://gograemefoster.blogspot.com
+61 (416) 848-234
@graefoster
/ Copyright ©2014 by Readify Pty Ltd10
Thank you

Mais conteúdo relacionado

Mais procurados

The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015Christian Heilmann
 
jQuery Conference 2012 keynote
jQuery Conference 2012 keynotejQuery Conference 2012 keynote
jQuery Conference 2012 keynotedmethvin
 
All the small things… - Awwwards 2016
All the small things… - Awwwards 2016All the small things… - Awwwards 2016
All the small things… - Awwwards 2016Christian Heilmann
 
The image problem of the web and how to solve it…
The image problem of the web and how to solve it…The image problem of the web and how to solve it…
The image problem of the web and how to solve it…Christian Heilmann
 
Site Down: How to Triage Those First Minutes
Site Down: How to Triage Those First MinutesSite Down: How to Triage Those First Minutes
Site Down: How to Triage Those First MinutesJohn Gamboa
 
First Steps to Be Non-blocking on the Web
First Steps to Be Non-blocking on the WebFirst Steps to Be Non-blocking on the Web
First Steps to Be Non-blocking on the WebGlobalLogic Ukraine
 
Erase and Rewind - Open Web Camp 2015
Erase and Rewind - Open Web Camp 2015Erase and Rewind - Open Web Camp 2015
Erase and Rewind - Open Web Camp 2015Christian Heilmann
 
Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014Straight North
 
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Katie Sylor-Miller
 
Chromebook Collaboration
Chromebook Collaboration Chromebook Collaboration
Chromebook Collaboration Jason Seliskar
 
Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date. Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date. Christian Heilmann
 
Building the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store EverBuilding the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store EverChris Lema
 
Magento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASSMagento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASSBartek Igielski
 
HTTP 2.0 - Web Unleashed 2015
HTTP 2.0 - Web Unleashed 2015HTTP 2.0 - Web Unleashed 2015
HTTP 2.0 - Web Unleashed 2015dmethvin
 

Mais procurados (20)

Speed
SpeedSpeed
Speed
 
The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015The ES6 Conundrum - All Things Open 2015
The ES6 Conundrum - All Things Open 2015
 
jQuery Conference 2012 keynote
jQuery Conference 2012 keynotejQuery Conference 2012 keynote
jQuery Conference 2012 keynote
 
Fixing web and JS gaps
Fixing web and JS gapsFixing web and JS gaps
Fixing web and JS gaps
 
All the small things… - Awwwards 2016
All the small things… - Awwwards 2016All the small things… - Awwwards 2016
All the small things… - Awwwards 2016
 
The image problem of the web and how to solve it…
The image problem of the web and how to solve it…The image problem of the web and how to solve it…
The image problem of the web and how to solve it…
 
Front-End Tooling
Front-End ToolingFront-End Tooling
Front-End Tooling
 
Site Down: How to Triage Those First Minutes
Site Down: How to Triage Those First MinutesSite Down: How to Triage Those First Minutes
Site Down: How to Triage Those First Minutes
 
First Steps to Be Non-blocking on the Web
First Steps to Be Non-blocking on the WebFirst Steps to Be Non-blocking on the Web
First Steps to Be Non-blocking on the Web
 
Erase and Rewind - Open Web Camp 2015
Erase and Rewind - Open Web Camp 2015Erase and Rewind - Open Web Camp 2015
Erase and Rewind - Open Web Camp 2015
 
Web application intro
Web application introWeb application intro
Web application intro
 
Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014Website Speed :: Fox Valley Computing Professionals, September 2014
Website Speed :: Fox Valley Computing Professionals, September 2014
 
Keep the Web Fast
Keep the Web FastKeep the Web Fast
Keep the Web Fast
 
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...
 
Chromebook Collaboration
Chromebook Collaboration Chromebook Collaboration
Chromebook Collaboration
 
Php workshop L02 php basics
Php workshop L02 php basicsPhp workshop L02 php basics
Php workshop L02 php basics
 
Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date. Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date.
 
Building the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store EverBuilding the Fastest WooCommerce Store Ever
Building the Fastest WooCommerce Store Ever
 
Magento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASSMagento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASS
 
HTTP 2.0 - Web Unleashed 2015
HTTP 2.0 - Web Unleashed 2015HTTP 2.0 - Web Unleashed 2015
HTTP 2.0 - Web Unleashed 2015
 

Destaque

What are 3 ps that are important in
What are 3 ps that are important inWhat are 3 ps that are important in
What are 3 ps that are important inJay Kovvuru
 
Presentacion all star fgx en español forever green express - fg-xpress - pe...
Presentacion all star fgx en español   forever green express - fg-xpress - pe...Presentacion all star fgx en español   forever green express - fg-xpress - pe...
Presentacion all star fgx en español forever green express - fg-xpress - pe...Raoni Claro
 
Microsoft openness - Univem - FLISOL 27Abril2013
Microsoft openness - Univem - FLISOL 27Abril2013Microsoft openness - Univem - FLISOL 27Abril2013
Microsoft openness - Univem - FLISOL 27Abril2013Vinícius Batista de Souza
 
Presentation luisa y fini
Presentation luisa y finiPresentation luisa y fini
Presentation luisa y finimainaim
 
Condo Hotels Infographic - Foodie Paradise: Playa Del Carmen
Condo Hotels Infographic - Foodie Paradise: Playa Del CarmenCondo Hotels Infographic - Foodie Paradise: Playa Del Carmen
Condo Hotels Infographic - Foodie Paradise: Playa Del Carmencondohotels
 
Tratamento da Suficiência Cardíaca medicina
Tratamento da Suficiência Cardíaca medicina Tratamento da Suficiência Cardíaca medicina
Tratamento da Suficiência Cardíaca medicina Dr.Marcelinho Correia
 
Mako creative signageexamples
Mako creative signageexamplesMako creative signageexamples
Mako creative signageexamplesAlan Jones
 
La pepa y la educacion.
La pepa y la educacion.La pepa y la educacion.
La pepa y la educacion.rattta2
 
Presentacion all star fgx en español forever green express - fg-xpress - pe...
Presentacion all star fgx en español   forever green express - fg-xpress - pe...Presentacion all star fgx en español   forever green express - fg-xpress - pe...
Presentacion all star fgx en español forever green express - fg-xpress - pe...Raoni Claro
 
Islands. CYLET Correlation Chart
Islands. CYLET Correlation ChartIslands. CYLET Correlation Chart
Islands. CYLET Correlation ChartGloria Vivanco
 
Aspectos fundamentales del Derecho del Trabajo
Aspectos fundamentales del Derecho del TrabajoAspectos fundamentales del Derecho del Trabajo
Aspectos fundamentales del Derecho del TrabajoOdri Reyes
 
Unit 4 staffing-directing
Unit 4 staffing-directingUnit 4 staffing-directing
Unit 4 staffing-directingRadhika Gohel
 
Se former par le jeu. Des applications de bonnes pratiques pour les formation...
Se former par le jeu. Des applications de bonnes pratiques pour les formation...Se former par le jeu. Des applications de bonnes pratiques pour les formation...
Se former par le jeu. Des applications de bonnes pratiques pour les formation...mhazan38
 
Cách thức truyền thông và quảng cáo hoạt động
Cách thức truyền thông và quảng cáo hoạt độngCách thức truyền thông và quảng cáo hoạt động
Cách thức truyền thông và quảng cáo hoạt độngTHANH TRAN
 
Fracturas expuestas. Joheman Urbina.
Fracturas expuestas. Joheman Urbina.Fracturas expuestas. Joheman Urbina.
Fracturas expuestas. Joheman Urbina.Joheman Urbina
 

Destaque (20)

Artículo genética
Artículo genéticaArtículo genética
Artículo genética
 
What are 3 ps that are important in
What are 3 ps that are important inWhat are 3 ps that are important in
What are 3 ps that are important in
 
Presentacion all star fgx en español forever green express - fg-xpress - pe...
Presentacion all star fgx en español   forever green express - fg-xpress - pe...Presentacion all star fgx en español   forever green express - fg-xpress - pe...
Presentacion all star fgx en español forever green express - fg-xpress - pe...
 
Album covers
Album coversAlbum covers
Album covers
 
Microsoft openness - Univem - FLISOL 27Abril2013
Microsoft openness - Univem - FLISOL 27Abril2013Microsoft openness - Univem - FLISOL 27Abril2013
Microsoft openness - Univem - FLISOL 27Abril2013
 
Presentation luisa y fini
Presentation luisa y finiPresentation luisa y fini
Presentation luisa y fini
 
Detroit Water Project
Detroit Water ProjectDetroit Water Project
Detroit Water Project
 
Condo Hotels Infographic - Foodie Paradise: Playa Del Carmen
Condo Hotels Infographic - Foodie Paradise: Playa Del CarmenCondo Hotels Infographic - Foodie Paradise: Playa Del Carmen
Condo Hotels Infographic - Foodie Paradise: Playa Del Carmen
 
Tratamento da Suficiência Cardíaca medicina
Tratamento da Suficiência Cardíaca medicina Tratamento da Suficiência Cardíaca medicina
Tratamento da Suficiência Cardíaca medicina
 
Mako creative signageexamples
Mako creative signageexamplesMako creative signageexamples
Mako creative signageexamples
 
La pepa y la educacion.
La pepa y la educacion.La pepa y la educacion.
La pepa y la educacion.
 
Presentacion all star fgx en español forever green express - fg-xpress - pe...
Presentacion all star fgx en español   forever green express - fg-xpress - pe...Presentacion all star fgx en español   forever green express - fg-xpress - pe...
Presentacion all star fgx en español forever green express - fg-xpress - pe...
 
Islands. CYLET Correlation Chart
Islands. CYLET Correlation ChartIslands. CYLET Correlation Chart
Islands. CYLET Correlation Chart
 
Google drive
Google driveGoogle drive
Google drive
 
Aspectos fundamentales del Derecho del Trabajo
Aspectos fundamentales del Derecho del TrabajoAspectos fundamentales del Derecho del Trabajo
Aspectos fundamentales del Derecho del Trabajo
 
Task 3 (1)
Task 3 (1)Task 3 (1)
Task 3 (1)
 
Unit 4 staffing-directing
Unit 4 staffing-directingUnit 4 staffing-directing
Unit 4 staffing-directing
 
Se former par le jeu. Des applications de bonnes pratiques pour les formation...
Se former par le jeu. Des applications de bonnes pratiques pour les formation...Se former par le jeu. Des applications de bonnes pratiques pour les formation...
Se former par le jeu. Des applications de bonnes pratiques pour les formation...
 
Cách thức truyền thông và quảng cáo hoạt động
Cách thức truyền thông và quảng cáo hoạt độngCách thức truyền thông và quảng cáo hoạt động
Cách thức truyền thông và quảng cáo hoạt động
 
Fracturas expuestas. Joheman Urbina.
Fracturas expuestas. Joheman Urbina.Fracturas expuestas. Joheman Urbina.
Fracturas expuestas. Joheman Urbina.
 

Semelhante a Angular – Say Goodbye to Javascript Soup

O'Reilly webcast: Joshua Bixby on Mobile Performance Trends and Predictions
O'Reilly webcast: Joshua Bixby on Mobile Performance Trends and PredictionsO'Reilly webcast: Joshua Bixby on Mobile Performance Trends and Predictions
O'Reilly webcast: Joshua Bixby on Mobile Performance Trends and PredictionsStrangeloop
 
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJSSrijan Technologies
 
From Zero to Performance Hero in Minutes - Agile Testing Days 2014 Potsdam
From Zero to Performance Hero in Minutes - Agile Testing Days 2014 PotsdamFrom Zero to Performance Hero in Minutes - Agile Testing Days 2014 Potsdam
From Zero to Performance Hero in Minutes - Agile Testing Days 2014 PotsdamAndreas Grabner
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceWim Leers
 
2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]
2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]
2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]Strangeloop
 
Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentationJohn Staveley
 
Riding The N Train: How we dismantled Groupon's Ruby on Rails Monolith
Riding The N Train: How we dismantled Groupon's Ruby on Rails MonolithRiding The N Train: How we dismantled Groupon's Ruby on Rails Monolith
Riding The N Train: How we dismantled Groupon's Ruby on Rails MonolithSean McCullough
 
Web Performance Optimization
Web Performance OptimizationWeb Performance Optimization
Web Performance OptimizationPatrick Meenan
 
Offline capable web applications with Google Gears and Dojo Offline
Offline capable web applications with Google Gears and Dojo OfflineOffline capable web applications with Google Gears and Dojo Offline
Offline capable web applications with Google Gears and Dojo Offlineguestcb5c22
 
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...John McCaffrey
 
Windy cityrails performance_tuning
Windy cityrails performance_tuningWindy cityrails performance_tuning
Windy cityrails performance_tuningJohn McCaffrey
 
Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...
Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...
Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...Codemotion
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoChristian Heilmann
 
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013Andreas Grabner
 
That's Web? Extreme Optimization for the Mobile Web (Oct 2012)
That's Web? Extreme Optimization for the Mobile Web (Oct 2012)That's Web? Extreme Optimization for the Mobile Web (Oct 2012)
That's Web? Extreme Optimization for the Mobile Web (Oct 2012)Glan Thomas
 
Building for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webBuilding for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webRobin Glen
 
Web Performance & You - HighEdWeb Arkansas Version
Web Performance & You - HighEdWeb Arkansas VersionWeb Performance & You - HighEdWeb Arkansas Version
Web Performance & You - HighEdWeb Arkansas VersionDave Olsen
 
Windycityrails page performance
Windycityrails page performanceWindycityrails page performance
Windycityrails page performanceJohn McCaffrey
 

Semelhante a Angular – Say Goodbye to Javascript Soup (20)

O'Reilly webcast: Joshua Bixby on Mobile Performance Trends and Predictions
O'Reilly webcast: Joshua Bixby on Mobile Performance Trends and PredictionsO'Reilly webcast: Joshua Bixby on Mobile Performance Trends and Predictions
O'Reilly webcast: Joshua Bixby on Mobile Performance Trends and Predictions
 
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
 
From Zero to Performance Hero in Minutes - Agile Testing Days 2014 Potsdam
From Zero to Performance Hero in Minutes - Agile Testing Days 2014 PotsdamFrom Zero to Performance Hero in Minutes - Agile Testing Days 2014 Potsdam
From Zero to Performance Hero in Minutes - Agile Testing Days 2014 Potsdam
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading Performance
 
2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]
2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]
2012 Annual State of the Union for Mobile Ecommerce Performance [Velocity EU]
 
Single Page Application presentation
Single Page Application presentationSingle Page Application presentation
Single Page Application presentation
 
Riding The N Train: How we dismantled Groupon's Ruby on Rails Monolith
Riding The N Train: How we dismantled Groupon's Ruby on Rails MonolithRiding The N Train: How we dismantled Groupon's Ruby on Rails Monolith
Riding The N Train: How we dismantled Groupon's Ruby on Rails Monolith
 
Web Performance Optimization
Web Performance OptimizationWeb Performance Optimization
Web Performance Optimization
 
Offline capable web applications with Google Gears and Dojo Offline
Offline capable web applications with Google Gears and Dojo OfflineOffline capable web applications with Google Gears and Dojo Offline
Offline capable web applications with Google Gears and Dojo Offline
 
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
Ruby on Rails Performance Tuning. Make it faster, make it better (WindyCityRa...
 
Windy cityrails performance_tuning
Windy cityrails performance_tuningWindy cityrails performance_tuning
Windy cityrails performance_tuning
 
Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...
Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...
Do things faster and better with WebAssembly - Sendil Kumar Nellaiyapen - Cod...
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San Francisco
 
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013
 
That's Web? Extreme Optimization for the Mobile Web (Oct 2012)
That's Web? Extreme Optimization for the Mobile Web (Oct 2012)That's Web? Extreme Optimization for the Mobile Web (Oct 2012)
That's Web? Extreme Optimization for the Mobile Web (Oct 2012)
 
Mobile web performance dwx13
Mobile web performance dwx13Mobile web performance dwx13
Mobile web performance dwx13
 
Building for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webBuilding for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile web
 
Web Performance & You - HighEdWeb Arkansas Version
Web Performance & You - HighEdWeb Arkansas VersionWeb Performance & You - HighEdWeb Arkansas Version
Web Performance & You - HighEdWeb Arkansas Version
 
Windycityrails page performance
Windycityrails page performanceWindycityrails page performance
Windycityrails page performance
 
Modern Web Applications
Modern Web ApplicationsModern Web Applications
Modern Web Applications
 

Angular – Say Goodbye to Javascript Soup