writing spa in 2017

20
Building SPA in 2017 Arek Flinik @aflinik wroc_love.rb 2015

Upload: arek-flinik

Post on 14-Jul-2015

227 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Writing SPA in 2017

Building SPA in 2017

Arek Flinik @aflinik

wroc_love.rb 2015

Page 2: Writing SPA in 2017

How many of you don't work on SPA?

Page 3: Writing SPA in 2017

So why do we still talk about cells rendering HTML

from our apps so much?

Page 4: Writing SPA in 2017

Typical 2015 SPA

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

Page 5: Writing SPA in 2017

Typical 2015 SPA

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

BOILERPLATE

Page 6: Writing SPA in 2017

Typical 2015 SPA

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

BOILERPLATE Overly coupled

Page 7: Writing SPA in 2017

Example

Andrzej

what if we want to add new information here?

Page 8: Writing SPA in 2017

Andrzej

Example

314 posts

what if we want to add new information here?

Page 9: Writing SPA in 2017

Example

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

Page 10: Writing SPA in 2017

Example

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

Page 11: Writing SPA in 2017

Solution?

One app for everything!

Page 12: Writing SPA in 2017

Solution?

One app for everything!Yeeeaaah, but...

Page 13: Writing SPA in 2017

Better solution?

HASKELL ;-)

Page 14: Writing SPA in 2017

Better solution?

Falcorfrom

Relayfrom

Page 15: Writing SPA in 2017

Better solution?

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

Page 16: Writing SPA in 2017

Better solution?

DB

Data (Model / Repo / Etc)Controller

Response formatting

AJAXModel / Store

Controller / Glue / Dispatcher

View / Component / Template

Routes

BOILERPLATE Overly coupled

🚫

Page 17: Writing SPA in 2017

Better solution?

DB

Data (Model / Repo / Etc)

Relay / Falcor

View / Component / Template

GraphQL / ???

Page 18: Writing SPA in 2017

Want to try it?

Page 19: Writing SPA in 2017

It's not 2017 yet 😒

Page 20: Writing SPA in 2017

Thanks 👌