Qooxdoo

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
Een Qooxdoo-applicatie in een webbrowser

Qooxdoo is een objectgeoriënteerd RIA (JavaScript framework) geschreven in JavaScript. Het biedt softwareontwikkelaars de mogelijkheid om applicaties te ontwikkelen geheel in HTML, CSS en JavaScript met alléén gebruik van JavaScript code. Qooxdoo ondersteunt alle moderne browsers zoals Firefox, Internet Explorer, Chrome, Opera en Safari.

Qooxdoo heeft een aantal functionaliteiten die de ontwikkelaar helpen in verschillende fasen van softwareontwikkeling. Python-scripts verzorgen het aanmaken van applicatiesjablonen, zodat dit werk uit handen van de ontwikkelaar wordt gehaald. Scripts die qooxdoo-applicaties klaarmaken voor gebruik (postcompilatie) creëren één geobfusceerd, geminificeerd en geoptimaliseerd JavaScript-bestand zodat de applicatie sneller en efficiënter wordt uitgevoerd in de browser.

Qooxdoo klassen worden gedefinieerd als volgt:

qx.Class.define("mijnEigenKlasse", {
 extend: qx.core.ui.Label,
 include: qx.core.ui.MPlacement,
 construct: function() {
  // roep superklasse constructor aan
  this.base(arguments);
 
  // initialiseer variabelen
  __mijnEigenWidget = new qx.ui.core.Widget();
 },
 properties: {
  naam : {
   nullable: true,
   check: "string"
  }
 }
 members: {
  __mijnEigenWidget : null
 }
});

In bovenstaand voorbeeld wordt een klasse "mijnEigenKlasse" gemaakt, die overerft van de klasse qx.ui.core.Label. De "construct" regel definieert een constructor-methode. In het voorbeeld wordt de constructor van de superklasse aangeroepen, door de regel

this.base(arguments);

De "properties" regel geeft aan dat er een lijst van properties wordt gedefinieerd. Qooxdoo's postcompile process interpreteert deze definities, om in de postcompiled code "getters" en "setters" te genereren en in te voegen. Wanneer de klasse "mijnEigenKlasse" wordt geïnstantieerd kunnen de methodes "getNaam" en "setNaam" worden gebruikt.

Vereisten[bewerken]

Client[bewerken]

  • Moderne browser voor uitvoeren applicatie

Ontwikkeling[bewerken]

Om in qooxdoo te ontwikkelen, heb je de volgende kennis en tools nodig:

  • Python 2.6 (uitvoering scripts)
  • Shell (console)
  • JavaScript kennis
  • Objectgeoriënteerd ontwikkelen
  • Voor koppeling met servergeoriënteerde applicaties is een "backend" benodigd. Voor ontwikkeling voldoet het lokale bestandssysteem, eventueel in combinatie met het mock-ontwikkelpatroon (om data van/naar de client te testen).