RAD tool
APEX provides us with a full development environment, allowing us to develop, test, and deploy our applications. APEX includes three modules: Application Builder, SQL Workshop, and Utilities.
Application Builder
The Application Builder allows us to develop and test our applications, without leaving the development environment. While working in the Application Builder, it automatically adds a dedicated developer toolbar to every page in our application, making it very easy to toggle between the running page and its code within the Application Builder. The developer toolbar also provides the developer with more options to assist in the development process, like checking session state, running in debug mode, etc. Moreover, the Application Builder allows us to manage, monitor, and control all the application's shared components, supporting objects, and deployment scripts. In addition, the Application Builder includes tools for exporting and importing applications and application components.
Note
Some of these terms might be unfamiliar to you at this stage, but don't be alarmed as we'll cover them all further down this book.
SQL Workshop
The SQL Workshop includes a series of tools which allow us to create, manage, and inspect our application data infrastructure. This including wizards to create and manipulate database objects, scripts and queries, and the SQL Commands facility, which allows us to run SQL and PL/SQL code in the context of APEX. This can be very useful, as some of the APEX features and APIs are not available outside the APEX context (e.g. SQL*Plus) for security reasons.
Utilities
The Utilities module includes a number of tools to help us manage the APEX development-surrounding environment, especially regarding the database. It includes tools for the import and export of data into and out of the database, the APEX data dictionary, and several database monitoring and reporting tools.
The APEX environment also includes a special administration module, which allows us to define the APEX working environment, developers, and users.
All these modules include declarative, wizard-based tools, which makes the application development cycle a very rapid one. These development environment allows us to quickly define a prototype of our application, and then expand it with all the finer details.