qooxdoo Beginner's Guide
上QQ阅读APP看书,第一时间看更新

Time for action - installing qooxdoo SDK

Go to the qooxdoo website (http://qooxdoo.org/download) and download the latest stable software development kit. Extract the qooxdoo SDK to C:\qooxdoo-x.y-sdk. We have used qooxdoo-1.2-sdk in the initial chapters and migrated to qooxdoo-1.4.1-sdk in Chapter 11, Miscellaneous. You can use other versions as well.

Tip

If you want to download the qooxdoo-1.2-sdk version, you can download it from http://sourceforge.net/projects/qooxdoo/files/qooxdoo-current/. You can find all other versions, too. If you could not download the qooxdoo SDK from the default mirror site, use another mirror such as Japan Advanced Institute of Science and Technology mirror site at the following URL:

http://sourceforge.net/projects/qooxdoo/files/qooxdoo-current/1.2/qooxdoo-1.2-sdk.zip/download?use_mirror=jaist

The directory structure looks something like the one shown in the screenshot that follows.

Application

The application directory contains all the applications that are included in the qooxdoo SDK package. We have already explored some of these applications in the qooxdoo website. You can also use these applications locally in your machine instead of accessing them from the qooxdoo website. Accessing the applications locally is faster than accessing them over the Internet. During development, use the local copy in SDK. You might have to build the applications, they're not already built. You can also set up the qooxdoo SDK in one of the development server machines and make these applications available to the team.

Application

The following applications come with qooxdoo SDK and they are available under the application directory:

  • demobrowser: This application allows you to browse through most of the widgets to see the behavior of the widgets and select the one required for your application.
  • feedreader: This is a sample application that gets delivered with the qooxdoo SDK for you to get a feel of the qooxdoo application.
  • playground: This application allows you to edit the sample code or example of the widget and play with it before actually using the widget in your application. This is one of the nice things in qooxdoo.
  • portal: This is a simple application that demonstrates the low-level capabilities through the Browser Object Model (BOM) layer available in the qx.bom.* package. This application does not use any of the high-level widget classes. High-level widget classes use these low-level BOM layers heavily to implement the widgets.
  • showcase: This application shows the main features of qooxdoo and provides a good overview of the qooxdoo framework.

Component

The component directory contains all the components in qooxdoo SDK. Applications in the application directory are meant for the end users, that is, the developers, and the applications in the component directory are the internal applications used by the qooxdoo framework. You can still use these components, if you understand their usage. You will use some of the components such as inspector and simulator. But some components, such as skeleton, are used internally by qooxdoo. The following directories come under the component directory:

  • apiviewer: This component is used by the generate.py tool to generate the API reference for your application when you run the generate.py api command.
  • inspector: This component is used by the generate.py tool to generate the inspector instance for your application when you run the generate.py inspector command. The inspector component is a powerful development tool used for live debugging. It can inspect any of the applications that are generated in inspector mode.
  • simulator: This component provides a testing and automation environment for qooxdoo applications. It can be used to simulate the user interaction in an actual web application. You can use simulator along with inspector to automate the functional testing of your qooxdoo application.
  • skeleton: This component contains a template to create the qooxdoo application. This component is used by the create-application.py tool to create an application.
  • testrunner: This component provides the unit testing framework. This component is used by the generate.py tool to generate the unit test code structure for your application when you run the generate.py test or generate.py test-source command.
  • testrunner2: This component is an experimental unit testing framework delivered in qooxdoo 1.3 which will eventually replace the testrunner component in the future. This is lighter and has an HTML-only interface. You can run the test cases even on mobile devices.

Documentation

The documentation directory contains the manual for the qooxdoo framework. The manual is in PDF as well as in HTML. You can refer to this manual to know more about qooxdoo.

Framework

The framework directory is the main directory which contains code for the qooxdoo framework. This code also follows the structure of the qooxdoo application. The directories under the framework directory are as follows:

  • source: This directory contains the code for the qooxdoo framework. All the classes of qooxdoo are kept under the class directory. The top-level namespace or package of the qooxdoo framework is qx. All the qooxdoo framework resources such as images are under the resource directory and all the localization files are kept under the translation directory.
  • api: This directory contains the API reference for the qooxdoo framework. You will need to refer to this most of the time. This is like javadoc for Java. Either you can use the online version from the qooxdoo website or access it locally in your machine.

Tool

This directory contains all the tools used by the framework. The directories under the tool directory are as follows:

  • bin: This directory contains many scripts, especially generate.py and create-application.py
  • data: This directory contains a lot of data used by different tools for various reasons such as localization, migration, and so on
  • doc: This directory contains internal documentation about the tools
  • pylib: This directory contains all the Python modules used by the qooxdoo framework
  • test: This directory contains the code for unit testing of various tools

What just happened?

You have set up the qooxdoo software development kit and explored the directory structure of the qooxdoo framework to get a brief understanding of the various components and applications that come with qooxdoo.