News & Views / September 1995

Delphi and VB Turn 32

Tom R. Halfhill

Visual development tools from Borland and Microsoft will soon let you create 32-bit programs that take advantage of the new features and UI (user interface) elements in Windows 95. In mid-September, Microsoft (Redmond, WA) plans to release 32-bit Visual Basic 4.0. Borland International (Scotts Valley, CA) says it will release a 32-bit version of Delphi within 90 days of the commercial availability of Windows 95. These products add stronger support for client/server development and OLE integration. Another 32-bit bonus is Windows NT compatibility. Windows NT 3.5 can be both the host and the target of VB 4.0 and Delphi.

Although the 32-bit code these tools generate will not run on 16-bit Windows 3.1 or Windows for Workgroups, Microsoft and Borland will continue to support their 16-bit versions. Both VB 4.0 and Delphi make the migration to 32-bit Windows development relatively simple. In many cases, you can recompile existing 16-bit code.

Perhaps the biggest obstacle to Windows 95 migration will be the transition to OLE-based custom controls. You can't use 16-bit VBXes (Visual Basic custom controls), which played a major role in VB's success, to build 32-bit software. Instead, you'll use 32-bit OLE controls (formerly called OCXes) that improve on VB's component architecture. Fortunately, many third-party developers have started migrating their VBXes to the OLE model.

Borland's new version of Delphi, when used with Microsoft's Control Development Kit, can create custom controls. However, VB 4.0 cannot do this. This gives Delphi an advantage over VB.

Because VB 4.0 still relies on a run-time interpreter, Delphi will also maintain its performance lead. VB's interpreter is the same Object Basic engine that's found in Microsoft Office's VBA (VB for Applications), but interpreted VB programs generally are not as fast as programs created with Delphi's Object Pascal compiler. In fact, the new version of Delphi will share Borland C++'s 32-bit optimizing compiler.

Although VB cannot build OLE controls, both VB 4.0 and the new version of Delphi will let you create OLE automation objects. These are stand-alone code libraries that expose their routines to other OLE-aware programs.

In VB, you create these objects with a new type of module called a class module, containing as few as three lines of code. Public variables in this module become properties, and public subroutines and functions become methods. Other OLE-aware programs can browse these modules, modify their properties, and call their methods. This lets VB create distributed objects for three-tiered client/server systems. You can isolate business rules in OLE objects, separated from both the front-end client application and the back-end enterprise server.

Also new to VB 4.0 is an add-in architecture that's similar to Adobe Photoshop plug-ins. Previously, outside developers had to hack VB to add design-time utilities, such as code formatters and debugging tools. Microsoft now formalizes that architecture by letting OLE-based add-ins appear on a VB menu.

A new IF...THEN statement in VB conditionally compiles blocks of code. If a program calls functions available only in the full Win32 API (e.g., OpenGL graphics), you can tell VB to ignore that code when targeting the Win16 API.

Client/server developers will appreciate the new 32-bit database engines in Delphi and VB. Delphi will have 32-bit asynchronous I/O, new drivers for DB2, deferred updates for transactions on multiple tables, and the ability to execute transactions against local dBase and Paradox files. The new Enterprise Edition of VB 4.0 will include the Jet 3.0 database engine and other client/server features.

Of all the 32-bit improvements, however, perhaps the most important one is the move to 32-bit OLE controls. Unlike VBXes, which are closely tied to the VB architecture, OLE controls will be supported by a number of development tools. This will give visual programmers much more power at their disposal.

Visual Development Tools Turn 32

Screen shots.
Visual SourceSafe, a source code management tool that Microsoft recently acquired from One Tree Software, helps programming teams using the Enterprise version of Visual Basic 4.0 create complex, distributed applications.

The new 32-bit Delphi lets you create programs that have Windows 95 UI (user interface) elements, such as tabbed dialog boxes. For maximum performance, these features are implemented as Delphi-native controls, not OLE controls. Also, note the Pentium-Safe FDIV compiler option.

Copyright 1994-1998 BYTE

Return to Tom's BYTE index page