qooxdoo - Open Source Ajax Framework

40
1 webinale, Karlsruhe, 28.05.2008 Andreas Ecker 1&1 Internet AG THE NEW ERA OF WEB DEVELOPMENT qooxdoo Open-Source Ajax Framework

description

Presentation at webinale 2008

Transcript of qooxdoo - Open Source Ajax Framework

Page 1: qooxdoo - Open Source Ajax Framework

1webinale, Karlsruhe, 28.05.2008

Andreas Ecker

1&1 Internet AG

THE NEW ERA OF WEB DEVELOPMENT

qooxdoo

Open-Source Ajax Framework

Page 2: qooxdoo - Open Source Ajax Framework

What is it?

Page 3: qooxdoo - Open Source Ajax Framework

Overview

Client-side JavaScript framework

Cross-browser web applications

Platform-independent tool chain

Comprehensive GUI toolkit

Elegant client-server communication

Page 4: qooxdoo - Open Source Ajax Framework

Overview

Open Source (LGPL / EPL)

Since 2005

Initiated, supported

and maintained by

http://qooxdoo.org

}

Page 5: qooxdoo - Open Source Ajax Framework

What is it good for?

Page 6: qooxdoo - Open Source Ajax Framework

Focus

Cross-browser, desktop-like

Ajax Applications

(“Rich Internet Applications”)

+Lower-level, DOM-centric

JavaScript Librarynew

Page 7: qooxdoo - Open Source Ajax Framework

What are the requirements

... for end users ?

Page 8: qooxdoo - Open Source Ajax Framework

Common Web Browser

Page 9: qooxdoo - Open Source Ajax Framework

Integrated Runtimes

Page 10: qooxdoo - Open Source Ajax Framework

Optional Technologies?

Page 11: qooxdoo - Open Source Ajax Framework

Extensions

JavaActiveX

FlashSilverlight

Page 12: qooxdoo - Open Source Ajax Framework

What are the requirements

... for developers ?

Page 13: qooxdoo - Open Source Ajax Framework

HTML

Page 14: qooxdoo - Open Source Ajax Framework

DOM

Page 15: qooxdoo - Open Source Ajax Framework

CSS

Page 16: qooxdoo - Open Source Ajax Framework

Server Software

Page 17: qooxdoo - Open Source Ajax Framework

Favorite Dev Platform

Page 18: qooxdoo - Open Source Ajax Framework

Object orientation

Page 19: qooxdoo - Open Source Ajax Framework

JavaScript

Page 20: qooxdoo - Open Source Ajax Framework

Seeing is believing.

Page 21: qooxdoo - Open Source Ajax Framework

Large-scale qooxdoo Apps

GMX.com : Webmail (international)

Page 22: qooxdoo - Open Source Ajax Framework

Other Corporate Apps

1&1 WebSite Builder

WEB.DE SmartDrive

Page 23: qooxdoo - Open Source Ajax Framework

Community Examples

Page 24: qooxdoo - Open Source Ajax Framework

What does it look like -

internally?

Page 25: qooxdoo - Open Source Ajax Framework

Architecture

ServerRPC Server

Java PerlPHP ...CGI ServletsResource

http / https

RPC ClientAJAX

GUI Toolkit (Widgets, Layouts)

BOMDOMEventsElements ...CoreClient

Page 26: qooxdoo - Open Source Ajax Framework

// create a button var button = new qx.ui.form.Button("First Button",

"./resource/image/test.png");// position itbutton.setLeft(50);button.setTop(50);// add it to the documentbutton.addToDocument();// action upon click/Enterbutton.addEventListener("execute", function(e){

alert("Hello World!"); });

Application Code

// create a button

// position it

// add it to the document

// action upon click/Enter

Page 27: qooxdoo - Open Source Ajax Framework

How to build such an app?

Page 28: qooxdoo - Open Source Ajax Framework

HTML ResourcesApplication

Compressed, Optimized, Linked

Build Process

Startup Images, ...OO JavaScript

Classes ResourcesThemesHTML

No CSS

Build process

Modularized

Page 29: qooxdoo - Open Source Ajax Framework

Are you serious about

JavaScript?

Page 30: qooxdoo - Open Source Ajax Framework

Object-oriented JavaScript

Fully class-based

Namespaces

Only noncritical manipulation of native objects

Static classes, abstract classes, singletons

Interfaces, mixins

Public, protected, private members

Dynamic properties

Page 31: qooxdoo - Open Source Ajax Framework

Still not happy with

JavaScript?

Page 32: qooxdoo - Open Source Ajax Framework

Alternative Development

Java qooxdoo Web Toolkit (“QWT”) Eclipse Rich Ajax Platform (“RAP”)

XML QxTransformer

GUI Builder Borland “Delphi for PHP” New browser-based builders Existing native builders

Page 33: qooxdoo - Open Source Ajax Framework

Care about the developers?

Page 34: qooxdoo - Open Source Ajax Framework

Developer Support

Browser independence

High performance

No memory leaks

Back button, bookmarking

Optimized deployment builds

Internationalization

Migration support . . .

Page 35: qooxdoo - Open Source Ajax Framework

Developer Support (continued)

Logging, Debugging

Inspector

Source code validation + formatting

Profiler

Unit + Functional testing

IDE Support

API Viewer

Page 36: qooxdoo - Open Source Ajax Framework

What's next?

Page 37: qooxdoo - Open Source Ajax Framework

qooxdoo 0.8

Decorators

Animations

More and better layout managers

Cleaned-up widget code

Custom widgets / layouts easier to create

Box model independence

Embedding widgets into web pages

Independent low-level JavaScript library

Page 38: qooxdoo - Open Source Ajax Framework

How 'Open' is your

Open Source?

Page 39: qooxdoo - Open Source Ajax Framework

Project

Liberal License

Mailinglist

Bugzilla

Public Code Repository

Blogs

Roadmap

Full-time developers + Contributors

qooxdoo-contrib

Page 40: qooxdoo - Open Source Ajax Framework

Check it out!

http://qooxdoo.org

andreas DOT ecker AT 1und1 DOT de