Borland's Delphi has been the best Windows development tool for many years. This time around, Delphi 8 is a completely new product targeting Microsoft's .Net Framework. The benefit is that Delphi is now in tune with the direction of Windows itself and gets full access to the rich Framework class libraries. The downside is that applications now depend on the 20MB .Net runtime and will generally run more slowly than their Delphi 7 equivalents.
There are, therefore, a couple of different ways to assess Delphi 8. One is from the perspective of existing developers wondering whether to port their code. The other is how it stands up against Microsoft's Visual Studio .Net, which offers .Net development in both Visual Basic and C#.
Delphi 8 is hosted in Borland's Developer Studio Integrated Developer Environment (IDE), as also used by the company's C# Builder product. Along with a code editor, it includes a visual form designer for both Windows and web applications, as well as additional features such as a database explorer and the ability to view your code as a Universal Modelling Language (UML) diagram.
The language used is Borland's Object Pascal, now officially (but unhelpfully) called the Delphi language. Considering it targets a new platform, there is an impressive level of compatibility with the old Delphi. Simple projects will still load and run unchanged. The main issues are with pointer types, which are rarely used in .Net, direct calls to the Windows API and third-party components that are not yet available.
In order to achieve high compatibility, Borland has created a new Visual Class Library (VCL) for .Net, based on the old Delphi VCL which has far-reaching implications. Delphi 8 supports two different frameworks for Windows applications, one using VCL.Net and the other using Windows Forms, which is Microsoft's standard visual class library. In practical terms, this means you have to choose between the two when starting a new application and, therefore, two form designers and two sets of components such as buttons, listboxes and so on. VCL.Net has some advantages, such as better performance in some cases. The big problem is lack of compatibility between VCL.Net and Windows Forms. Many third-party and open-source components for .Net are for Windows Forms, which will not work directly in VCL.Net.
There is an import wrapper, but it is described as experimental and is not always successful.
Borland has its own data access library for .Net, called the Borland Data Provider (BDP). It offers live data at design time, so you can see query results when laying out your form. Again it is a mixed blessing, since you cannot use standard ADO.Net drivers with BDP. On the other hand, BDP has useful additional features and can be used as a standard ADO.Net data source. For compatibility with existing code Delphi 8 retains several additional database libraries, so you easily get at data in Paradox, Dbase or Interbase format.
The high-end Architect edition of Delphi includes Enterprise Core Objects (ECO), a feature which enables model-driven development. The idea is that you design and maintain your application as a UML model, letting ECO generate the code, including the necessary database tables. It's a promising technology, although still in its early days.
Getting started with Delphi 8 is not as easy as it should be. It has the appearance of a rushed release, and documentation is skimpy. The product badly needs a developer's guide, as well as a more detailed reference.
Even so, as a technical accomplishment it is most impressive.
The more awkward question is whether it is a compelling alternative to earlier versions of Delphi or, indeed, to Microsoft's .Net tools. Not everyone wants to build .Net applications and, if your priorities are fast performance and deployment without the burden of a runtime layer, the old Delphi still wins. Borland recognises this by including Delphi 7 alongside the new version.
Borland will find it harder to tempt new users, although the support for UML and model-driven development is an important advantage. Whereas the original Delphi easily outclassed Visual Basic, there is little to choose between Delphi 8 and Microsoft's C#.
Contact: Borland 0118 924 1400
www.borland.co.uk
System requirements:
- Windows 2000 or above
- Pentium III 850MHz or higher
- 512MB of Ram
- 600MB of disk space
Price details:
RRP: Pro £787.25 (£670 ex VAT)
Enterprise £1,962.25 (£1,670 ex VAT)
Architect £2,350 (£2,000 ex VAT)
See also:
Better collaboration tools are the only route to superior software, argues Borland's David Intersimone 03 Aug 2004All Developer


