qooxdoo - open source ajax framework

Post on 18-Jan-2015

3.231 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentation at webinale 2008

TRANSCRIPT

1webinale, Karlsruhe, 28.05.2008

Andreas Ecker

1&1 Internet AG

THE NEW ERA OF WEB DEVELOPMENT

qooxdoo

Open-Source Ajax Framework

What is it?

Overview

Client-side JavaScript framework

Cross-browser web applications

Platform-independent tool chain

Comprehensive GUI toolkit

Elegant client-server communication

Overview

Open Source (LGPL / EPL)

Since 2005

Initiated, supported

and maintained by

http://qooxdoo.org

}

What is it good for?

Focus

Cross-browser, desktop-like

Ajax Applications

(“Rich Internet Applications”)

+Lower-level, DOM-centric

JavaScript Librarynew

What are the requirements

... for end users ?

Common Web Browser

Integrated Runtimes

Optional Technologies?

Extensions

JavaActiveX

FlashSilverlight

What are the requirements

... for developers ?

HTML

DOM

CSS

Server Software

Favorite Dev Platform

Object orientation

JavaScript

Seeing is believing.

Large-scale qooxdoo Apps

GMX.com : Webmail (international)

Other Corporate Apps

1&1 WebSite Builder

WEB.DE SmartDrive

Community Examples

What does it look like -

internally?

Architecture

ServerRPC Server

Java PerlPHP ...CGI ServletsResource

http / https

RPC ClientAJAX

GUI Toolkit (Widgets, Layouts)

BOMDOMEventsElements ...CoreClient

// 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

How to build such an app?

HTML ResourcesApplication

Compressed, Optimized, Linked

Build Process

Startup Images, ...OO JavaScript

Classes ResourcesThemesHTML

No CSS

Build process

Modularized

Are you serious about

JavaScript?

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

Still not happy with

JavaScript?

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

Care about the developers?

Developer Support

Browser independence

High performance

No memory leaks

Back button, bookmarking

Optimized deployment builds

Internationalization

Migration support . . .

Developer Support (continued)

Logging, Debugging

Inspector

Source code validation + formatting

Profiler

Unit + Functional testing

IDE Support

API Viewer

What's next?

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

How 'Open' is your

Open Source?

Project

Liberal License

Mailinglist

Bugzilla

Public Code Repository

Blogs

Roadmap

Full-time developers + Contributors

qooxdoo-contrib

Check it out!

http://qooxdoo.org

andreas DOT ecker AT 1und1 DOT de

top related