Top Banner
dogmatic69 http://dogmatic69.com http://github.com/dogmatic69 https://github.com/infinitas/infinitas/tree/beta/core/charts
20

Cakefest 2011 - pecha kucha talk abstraction

Dec 05, 2014

Download

Technology

Carl Sutton

cakefest 2011 pecha kucha talk on abstraction
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cakefest 2011 - pecha kucha talk abstraction

dogmatic69

http://dogmatic69.com

http://github.com/dogmatic69

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

Page 2: Cakefest 2011 - pecha kucha talk abstraction

Code patterns

good and bad patterns

moderation = good

Page 3: Cakefest 2011 - pecha kucha talk abstraction

Engines

awesome adapter abstraction

Page 4: Cakefest 2011 - pecha kucha talk abstraction

Examples

Js EngineCake DBO

Authentication (2.0)

Page 5: Cakefest 2011 - pecha kucha talk abstraction

Abstraction limits functionality

Page 6: Cakefest 2011 - pecha kucha talk abstraction
Page 7: Cakefest 2011 - pecha kucha talk abstraction

V3.x

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

Page 8: Cakefest 2011 - pecha kucha talk abstraction

Google charts

Page 9: Cakefest 2011 - pecha kucha talk abstraction

Chart Engine

Any chart libSame code for all

Switch engines on the flySimple API

Page 10: Cakefest 2011 - pecha kucha talk abstraction

How

Page 11: Cakefest 2011 - pecha kucha talk abstraction

Example 1

Page 12: Cakefest 2011 - pecha kucha talk abstraction

Reasons

not all chart libs are created equal

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

Page 13: Cakefest 2011 - pecha kucha talk abstraction

Switching Engines

Page 14: Cakefest 2011 - pecha kucha talk abstraction

Classes

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

YourCustomChartEngineHelper (what ever you like)

Page 15: Cakefest 2011 - pecha kucha talk abstraction

BaseChartEngine - extend this class

Page 16: Cakefest 2011 - pecha kucha talk abstraction

char data manipulation

Page 17: Cakefest 2011 - pecha kucha talk abstraction

API sample

Page 18: Cakefest 2011 - pecha kucha talk abstraction

Cache

done in the ChartsHelper

hash paramscheck for a matchreturn | process datawrite cache

Page 19: Cakefest 2011 - pecha kucha talk abstraction
Page 20: Cakefest 2011 - pecha kucha talk abstraction

Infinitas needs a new designer