Borland Delphi 2005 review
Gone are the days when you could create business and commercial applications using only a code editor and a compiler. Today’s programmers need tools that write much of the code for them using visual designers and wizards. They also need help finding their way around the code and rooting out errors. Microsoft dominates the market for Windows development tools, due in part to the reassuring fact that its tools are the same ones used to create Windows and Office. Borland is now Microsoft’s only major competitor in this arena, and Delphi 2005 is the latest generation of its flagship product.
Borland competes by creating tools that are easier to use and make developers more productive. The Delphi 2005 integrated development environment (IDE), also known as the Borland Developer Studio (BDS), is packed with productivity features, starting with the editor, which uses highlighting to help you write valid code. Error Insight is like a grammar checker, highlighting errors with a red wavy underline. Help Insight hint windows pop up when you hover the mouse over a name, showing its definition, giving links to relevant help text or suggesting the reason for an error. A Structure View pane displays your project as a tree view, making it easy to navigate through it, or you can place bookmarks in your code and jump back to them with a couple of mouse clicks.
New code-refactoring features help you rename all occurrences of a symbol in a selected block of text, or turn a block of code into a reusable method. You can insert Pascal variable and field definitions without moving to a different part of the source file – a real time-saver – while the ability to turn hard-coded text into resource strings will ease the pain of preparing a project for localisation. The IDE keeps multiple generations of a source file in a History folder and provides a tool to compare two files and highlight the changes. Many solo developers will find this an adequate version control system, but Delphi integrates with Borland’s StarTeam for team development.
These new features come at a cost. While you’re typing, the IDE does a lot in the background, so it needs greater CPU power and more memory to match the responsiveness of earlier versions. Borland’s minimum hardware specification is barely usable, and even the recommended minimum is borderline if you don’t want the IDE to freeze up at intervals and Windows to complain about low virtual memory. Delphi 2005 also takes two minutes to load, while earlier versions took a few seconds. That’s the price of progress.
Delphi 2005 is the successor to no fewer than three Borland products: Delphi 7 (for Win32), Delphi 8 (for .NET) and C#Builder 1. You can now develop applications for Win32 or .NET using Object Pascal, or .NET applications in C#, from within the same IDE. Borland claims that VB .NET applications can also be developed in the BDS if you already have the Microsoft compiler, and C++Builder may be an add-in in the future. Borland has licensed the C# compiler, WinForms designer and other SDK tools from Microsoft, so there are no worries about compatibility. However, this does mean that there’s no reason for choosing Delphi over Microsoft Visual Studio for C# development if you have no interest in Object Pascal.
Borland’s proprietary dialect of Pascal is both one of Delphi’s strengths and one of its weaknesses. It’s an excellent object-oriented language, but its syntax is fussy and C++ is more widely known. Microsoft stole a march on Borland when it recruited Delphi’s chief architect Anders Hejlsberg and developed C#, a brand new language with the advantages of Object Pascal but with syntax virtually identical to Java. However, C# has nothing to compare with Delphi’s Visual Component Library (VCL), which is the strongest argument for developing .NET applications in Delphi. C# uses WinForms, the native framework of .NET, as can Delphi if you want to. But it’s rumoured that WinForms is an interim solution that will be replaced by something better for Avalon, the graphical subsystem for Longhorn. VCL on the other hand has already migrated from Windows 3 to Win32 and now to .NET, and been ported to Linux, so migration to Avalon shouldn’t be a problem. VCL could prove a better choice if you want to avoid substantial redevelopment for Longhorn.