Cakefest 2011 - pecha kucha talk abstraction

Preview:

DESCRIPTION

cakefest 2011 pecha kucha talk on abstraction

Citation preview

dogmatic69

http://dogmatic69.com

http://github.com/dogmatic69

https://github.com/infinitas/infinitas/tree/beta/core/charts

Code patterns

good and bad patterns

moderation = good

Engines

awesome adapter abstraction

Examples

Js EngineCake DBO

Authentication (2.0)

Abstraction limits functionality

V3.x

V1: started with simple chart api for googlev2: almost complete google api for chartsV3: chart engine with GoogleChartEngineHelper + others

Google charts

Chart Engine

Any chart libSame code for all

Switch engines on the flySimple API

How

Example 1

Reasons

not all chart libs are created equal

charts in view (js)charts in pdf (google static charts / html)charts in terminal

Switching Engines

Classes

DataManipulation LIb (format data for charting)BaseChartEngineHelper (abstract)ChartsHelper (does the heavy lifting)

YourCustomChartEngineHelper (what ever you like)

BaseChartEngine - extend this class

char data manipulation

API sample

Cache

done in the ChartsHelper

hash paramscheck for a matchreturn | process datawrite cache

Infinitas needs a new designer