Dude, That's Some Strange UI Architecture

Post on 09-May-2015

1.175 views 0 download

description

Exploring CVC (Clients-Views-Controllers) pattern (instead of MVC) for Middle-End UI Architecture, using server-side JavaScript for DRY code that can be used both on the server and in the browser.

Transcript of Dude, That's Some Strange UI Architecture

Dude, That’s Some Strange UI Architecture

Kyle Simpson@getify

getify@gmail.com

http://getify.me

#strangeui

document.write()

Must Die

— Agnieszka Gasparska

Every block of stone has a statue inside it and it is the task of the sculptor to discover it.

— Michelangelo

Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.

— Antoine de Saint-Exupery

UI Architecture

how you process, package, deliver to, and communicate with the client/presentation layer

UI Architecture

in between the FRONT end and the BACK end is…

the MIDDLE end

UI Architecture

url routing

data validation

data formatting

templating

ajax

cookies/headerscaching

ui architecture

MVC

performance anxiety

optimization

spaghetti code

i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY. i will not repeat myself. DRY.

CVCclients views controllers

ui architecture

Result Set Pagination

Atomic Operation Caching

Independent Tier Scaling

clients

everything is a client of everything else

decoupled, modular, scalable

views

templating, portable, DRY, platform agnostic,

core web technology

controllers

small, independent, powerful

JavaScript

(on the server)

BikechainJS

V8 “engine” modules

HandlebarJS{ }

templating engine text/html templates

JSON data input

demo

code

More info

http://spkr8.com/t/4821

http://github.com/getify/shortie.me

please provide feedback!!!!

Kyle Simpson@getifygetify@gmail.comhttp://getify.me

#strangeui

http://shortie.me/!strange

http://MiddleEnd.com