Benefits of Formspider: Single Programming Language

Formspider uses only PL/SQL as its scripting language.

As long as data is stored in the database, code written in the database will have a huge advantage over code written in the middle tier. In the Oracle environment, developers know PL/SQL. Therefore PL/SQL is the natural language of choice for application development.

One of the biggest handicaps of currently available frameworks is that they require extensive knowledge of several programming languages. For most JavaEE frameworks, a developer needs in-depth knowledge of Java, JavaScript and a variety of component technologies. With so much to learn, it is understandable that most Java developers resist becoming skilled database developers as well.

Becoming an expert in a single programming language takes years. Asking enterprise application developers to become experts in two or more languages is counterproductive. An enterprise application developer must understand business rules and implement them in code. A programming language is the means by which this task is accomplished. Once a developer is expert at expressing the business rules in one programming language, learning any additional languages is time consuming and may not ultimately help them become better developers. If you ask an experienced PL/SQL developer to program in Java (or the other way around), they will struggle with the nuances of the new language for years. The result of this struggle is sub-par performance, bugs, and low-quality applications.

The PL/SQL scripting used in Formspider will look familiar to Oracle Forms developers. The ability to manipulate components is similar to what Forms developers have been using for years. Because the scripting is in PL/SQL and stored in the database, developers can use any PL/SQL editor to write programs.

The following code shows the script used to create a login button:

Login Screen

procedure doLogin is
  v_loginResult_tx varchar2(10);
begin
  --- this is the call  to the developer’s login package,
  v_loginResult_tx:=myapplication.doLogin(
     ---this retrieves the value from the “User name”
     api_component.getvaluetx('loginPanel.user'),
     ---this retrieves the value from the “Password”
     api_component.getvaluetx('loginPanel.password'));
  if v_loginResult_tx=’OK’ then
    ---this hides the login dialog
    api_dialog.setvisible('loginWindow','N');
  else
    --login failed. warn user.
  end if;		
end;

The actual procedure would be more complex but this example shows how application behavior can be coded in Formspider.

It is as simple and intuitive as in Oracle Forms.