Is Delphi better than Java (for high school)?

Simplified examination processes, greater teacher and student mobility, and a greater focus of resources are some of the reasons the Department of Basic Education (DBE) cited for its mandated use of Delphi in the high school IT subject.

This is according to a DBE statement issued shortly after news emerged that it had removed the Java programming language from the South African high schools Information Technology (IT) curriculum.

Java proponents, advocates of open source software, free software activists, and software and IT industry professionals have expressed concern at the decision for a number of different reasons.

Responding to these concerns, the DBE cited research (some academic, and some conducted themselves) to justify the decision of Delphi in terms of the requirements laid out in the Curriculum and Assessment Policy Statement (CAPS) document for IT.

According to the DBE, the requirements for the high-level programming tool to be used is stipulated on page 10 of the CAPS document as follows:

High-level software development tool that includes an integrated development environment (IDE) which:

  • supports both structured and object oriented methodologies;
  • uses a visual development environment with a graphical user interface builder; and
  • allows for event-driven programming

Another, more specific requirement which the DBE said is listed later in the CAPS document (Grade 11 p 32 – p 33), is the development of data aware-applications.

This requires that students learn how to establish a connection to a database and apply transactions.

Delphi’s benefits in a nutshell

Based on the response from the DBE, the benefits of Delphi can be summarised as follows:

  1. Simpler decision regarding allowed toolchain(s), framework(s), and text and user interface editors(s);
  2. Easier development of data-aware applications; and
  3. Some of the country’s schools are already on Delphi.

A toolchain in programming terms is the “chain” of tools used to produce a program. This may include programs such as a compiler, linker, and debugger.

Rapid application development (RAD) environments such as Delphi typically package these tools along with some other features, such as a text editor and user interface designer into an integrated development environment (IDE).

Such tools do exist for Java (Eclipse, Netbeans, IntelliJ IDEA), but a decision would need to be made on whether to allow one, some, or all of these to teach the curriculum. Currently the Netbeans IDE is allowed in Java-teaching provinces.

When it comes to building data-aware applications, it should be noted that the DBE’s comparison matrix assumed the use of an MS-Access database.

Commercial programmers I spoke to have indicated that Delphi does offer very user-friendly ways of building simple CRUD (create, read, update, delete) applications compared to competing products. However, it can also be argued that teaching the creation of data-aware applications by using only Delphi’s graphical user interface doesn’t teach students much about databases or about how applications can communicate with databases.

The DBE also cites the fact that Pascal (the programming language on which Delphi is based) was designed for teaching programming fundamentals.

However, detractors have pointed out that while Delphi bears some relation to Pascal, it is actually a type of Object Pascal and that there are some significant differences between the two languages.

Just the facts, ma’am

Unfortunately, the Department of Basic Education laced its response to concerns about the Delphi decision with propaganda:

Two of the most popular RAD systems for Windows are Visual Basic and Delphi.

The source the DBE used as the basis for this statement appears to be very outdated.

“Delphi is regarded as the world’s best RAD tool.”

As above.

Delphi not as widely used as Java, though rapidly growing with exciting new features.

No source is provided for this statement, though many up-to-date indices online (TIOBE, Language Popularity Index, PYPL) contradict it.

As Java is open source, stability could be questioned.

No substantiation given.

Support for open source software might be a problem.

No substantiation given.

[Java] Features used today to implement the curriculum may not be available with new versions

No substantiation given.

Delphi is easier to read, closer to natural language, less syntactical overhead

Cites research conducted by Linda McIver in 2001 to support some of the claim, but not all of it.

The Department of Basic Education was asked on what basis it made the statements above, but it did not respond by the time of publication.

More software news

Ubuntu 13.10 launches with mobile phone support

Windows 8.1 launched

BBM for Android, iPhone here within days: BlackBerry

Special laptop keys with Linux

Latest news

Partner Content

Show comments


Share this article
Is Delphi better than Java (for high school)?