+ All Categories
Home > Technology > Progressive loading with Steal

Progressive loading with Steal

Date post: 08-Jul-2015
Category:
Upload: austin-mcdaniel
View: 1,085 times
Download: 0 times
Share this document with a friend
Description:
Large one page JavaScript have applications have big downloads for all their assets. This talk demonstrates the problems you encounter when trying to split up these applications and introduces a new enhancement still in beta to JavaScriptMVC's Steal dependency management system that uses direct acyclic graphs to intelligently split up the assets in a manner they can be packaged in the most efficient manner possible.
13
{ Progressive Loading with steal Austin McDaniel @js_consultant
Transcript
Page 1: Progressive loading with Steal

{

Progressive Loadingwith steal

Austin McDaniel @js_consultant

Page 2: Progressive loading with Steal

Big apps have big downloads…

Page 3: Progressive loading with Steal

Apps on top of apps…

App 1

App 2

App 3

Main ApplicationHandles Authentication

Opening other apps

Page 4: Progressive loading with Steal

Widgets inside of widgetsinside of other widgets inside of other widgets inside of other widgets…

App A

Main Application

App B App C App D

Modal Combo box

Page 5: Progressive loading with Steal

Steal to the rescue…

Page 6: Progressive loading with Steal

Directed acyclic graphs…

Page 7: Progressive loading with Steal

The graph…

AppA.js

Main Application

AppB.js AppC.js AppD.js

Modal Combo box

AppA_AppB.js AppB_AppC_AppD.js

Page 8: Progressive loading with Steal

steal(’main’)

.packages(‘app/appa.js’,

‘app/appb.js’,

‘app/appc.js’)

API

Page 9: Progressive loading with Steal

$(‘.tab’).click(function(){

steal(‘app/appa.js’)

});

Then when you need it…

Page 10: Progressive loading with Steal

steal.packages(, ‘app/appa.js’: ‘app/packages/appb.js’ })

steal.p.make({ src: ‘appa.js’, has: *‘app/jquery.js’+ })

steal.p.make({ src: ‘app/packages/appa.js’, needs: *‘app/appa_appb.js’+ })

What it generates…

Page 11: Progressive loading with Steal

Demo of it running and in action….

Page 12: Progressive loading with Steal

Any Questions?

Page 13: Progressive loading with Steal

https://github.com/jupiterjs/steal/tree/packages

Try it out…


Recommended