51
RIA Entwicklungsplattformen im Vergleich 01.02.2011 Mittwoch, 2. Februar 2011

qooxdoo at VKSI-RIA-Comparison

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: qooxdoo at VKSI-RIA-Comparison

RIA Entwicklungsplattformen im Vergleich

01.02.2011Mittwoch, 2. Februar 2011

Page 2: qooxdoo at VKSI-RIA-Comparison

•M.Sc. Martin Wittemann

• works at

• framework architect

• started in 2007 with

•@wittemann on

• won $18 in Atlantic City!

ABOUT ME

Mittwoch, 2. Februar 2011

Page 3: qooxdoo at VKSI-RIA-Comparison

Google Web Toolkit

1.

2.

4.

5.

3.

Mittwoch, 2. Februar 2011

Page 4: qooxdoo at VKSI-RIA-Comparison

pure JavaScript

no HTML or CSS needed

no plugin needed

Open Source

Mittwoch, 2. Februar 2011

Page 5: qooxdoo at VKSI-RIA-Comparison

JAVASCRIPT, REALLY?

c=document.body.children[0];h=t=150;L=w=c.width=800;u=D=50;H=[];R=Math.random;for($ in C=c.getContext('2d'))C[$[J=X=Y=0]+($[6]||'')]=C[$];setInterval("if(D)for(x=405,i=y=I=0;i<1e4;)L=H[i++]=i<9|L<w&R()<.3?w:R()*u+80|0;$=++t%99-u;$=$*$/8+20;y+=Y;x+=y-H[(x+X)/u|0]>9?0:X;j=H[o=x/u|0];Y=y<j|Y<0?Y+1:(y=j,J?-10:0);with(C){A=function(c,x,y,r){r&&a(x,y,r,0,7,0);fillStyle=c.P?c:'#'+'ceff99ff78f86eeaaffffd45333'.substr(c*3,3);f();ba()};for(D=Z=0;Z<21;Z++){Z<7&&A(Z%6,w/2,235,Z?250-15*Z:w);i=o-5+Z;S=x-i*u;B=S>9&S<41;ta(u-S,0);G=cL(0,T=H[i],0,T+9);T%6||(A(2,25,T-7,5),y^j||B&&(H[i]-=.1,I++));G.P=G.addColorStop;G.P(0,i%7?'#7e3':(i^o||y^T||(y=H[i]+=$/99),'#c7a'));G.P(1,'#ca6');i%4&&A(6,t/2%200,9,i%2?27:33);m(-6,h);qt(-6,T,3,T);l(47,T);qt(56,T,56,h);A(G);i%3?0:T<w?(A(G,33,T-15,10),fc(31,T-7,4,9)):(A(7,25,$,9),A(G,25,$,5),fc(24,$,2,h),D=B&y>$-9?1:D);ta(S-u,0)}A(6,u,y-9,11);A(5,M=u+X*.7,Q=y-9+Y/5,8);A(8,M,Q,5);fx(I+'¢',5,15)}D=y>h?1:D",u);onkeydown=onkeyup=function(e){E=e.type[5]?4:0;e=e.keyCode;J=e^38?J:E;X=e^37?e^39?X:E:-E}

http://js1k.com/2010-first/demo/635

Mittwoch, 2. Februar 2011

Page 6: qooxdoo at VKSI-RIA-Comparison

OBJECT ORIENTATION

qx.Class.define("Bicycle", { extend : qx.core.Object, members : { __speed : 0, speedUp : function(increment) { this.__speed += increment; } }});

Mittwoch, 2. Februar 2011

Page 7: qooxdoo at VKSI-RIA-Comparison

OBJECT ORIENTATION

qx.Class.define("Bicycle", { extend : qx.core.Object, members : { __speed : 0, speedUp : function(increment) { this.__speed += increment; } }});

class Bicycle { int speed = 0;

void speedUp(int increment) { speed = speed + increment; }}

Mittwoch, 2. Februar 2011

Page 8: qooxdoo at VKSI-RIA-Comparison

OBJECT ORIENTATION

Mittwoch, 2. Februar 2011

Page 9: qooxdoo at VKSI-RIA-Comparison

SPEED

http://ie.microsoft.com/testdrive/benchmarks/SunSpider/Default.html

Mittwoch, 2. Februar 2011

Page 10: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 11: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 12: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 13: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 14: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 15: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 16: qooxdoo at VKSI-RIA-Comparison

LOW LEVEL FRAMEWORK

• Base for the Widget Toolkit

• Cross browser layer

•Works standalone

• Feature set like

Mittwoch, 2. Februar 2011

Page 17: qooxdoo at VKSI-RIA-Comparison

USED ON 1UND1.DE

Mittwoch, 2. Februar 2011

Page 18: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 19: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 20: qooxdoo at VKSI-RIA-Comparison

ARCHITECTURE

OO Language Extension Custom EventsCore

Transport BOM DOM Browser Events

BrowserAbstraction

HTML Rendering

CSS Selector AnimationPartsLow-Level

UI Core

Widgets Layouts Theming

Dat

a B

indi

ng

I18n

GUIToolkit

Mittwoch, 2. Februar 2011

Page 21: qooxdoo at VKSI-RIA-Comparison

WIDGETS

Mittwoch, 2. Februar 2011

Page 22: qooxdoo at VKSI-RIA-Comparison

WIDGETS

Mittwoch, 2. Februar 2011

Page 23: qooxdoo at VKSI-RIA-Comparison

WIDGETSToolbar

Mittwoch, 2. Februar 2011

Page 24: qooxdoo at VKSI-RIA-Comparison

WIDGETSTree

Mittwoch, 2. Februar 2011

Page 25: qooxdoo at VKSI-RIA-Comparison

WIDGETS

Window

Mittwoch, 2. Februar 2011

Page 26: qooxdoo at VKSI-RIA-Comparison

WIDGETS

TextField

Mittwoch, 2. Februar 2011

Page 27: qooxdoo at VKSI-RIA-Comparison

WIDGETS

Button

Mittwoch, 2. Februar 2011

Page 28: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 29: qooxdoo at VKSI-RIA-Comparison

LAYOUTS

• Custom layout system build in JavaScript

•No cross browser issues

• predefined set of layouts

Mittwoch, 2. Februar 2011

Page 30: qooxdoo at VKSI-RIA-Comparison

THEMING

•No CSS knowledge needed

•No cross browser code

Mittwoch, 2. Februar 2011

Page 31: qooxdoo at VKSI-RIA-Comparison

THEMING

Modern

•No CSS knowledge needed

•No cross browser code

Mittwoch, 2. Februar 2011

Page 32: qooxdoo at VKSI-RIA-Comparison

THEMING

ModernClassic

•No CSS knowledge needed

•No cross browser code

Mittwoch, 2. Februar 2011

Page 33: qooxdoo at VKSI-RIA-Comparison

THEMING

ModernClassic

•No CSS knowledge needed

•No cross browser code

Simple

Mittwoch, 2. Februar 2011

Page 34: qooxdoo at VKSI-RIA-Comparison

USED ON GMX.COM

Mittwoch, 2. Februar 2011

Page 35: qooxdoo at VKSI-RIA-Comparison

USED ON GMX.COM

Mittwoch, 2. Februar 2011

Page 36: qooxdoo at VKSI-RIA-Comparison

DEMO

Mittwoch, 2. Februar 2011

Page 37: qooxdoo at VKSI-RIA-Comparison

DEVELOPMENT SUPPORT

Mittwoch, 2. Februar 2011

Page 38: qooxdoo at VKSI-RIA-Comparison

TOOLING

• Automatic dependency detection

• Packaging for development and deployment

•Optimization and minification

Mittwoch, 2. Februar 2011

Page 39: qooxdoo at VKSI-RIA-Comparison

TESTING

• Integrated unit test framework

• Integrated support for Selenium tests

• Continuous integration for the framework

Mittwoch, 2. Februar 2011

Page 40: qooxdoo at VKSI-RIA-Comparison

INTERNATIONALIZATION

• Build in internationalization support

• based on standaridized files

• Easy to switch during runtime

Mittwoch, 2. Februar 2011

Page 41: qooxdoo at VKSI-RIA-Comparison

Rich Internet Application

Mittwoch, 2. Februar 2011

Page 42: qooxdoo at VKSI-RIA-Comparison

Rich Internet ApplicationDesktop application in the web

Mittwoch, 2. Februar 2011

Page 43: qooxdoo at VKSI-RIA-Comparison

Rich Internet ApplicationDesktop application in the web

Mittwoch, 2. Februar 2011

Page 44: qooxdoo at VKSI-RIA-Comparison

Rich Internet ApplicationDesktop application in the webNative

Mittwoch, 2. Februar 2011

Page 45: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 46: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 47: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 48: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 49: qooxdoo at VKSI-RIA-Comparison

Mittwoch, 2. Februar 2011

Page 50: qooxdoo at VKSI-RIA-Comparison

http://demo.qooxdoo.org/public/mobile_prototype/

Mittwoch, 2. Februar 2011