Making Every Application Development Project a Success with Delphi 4
How the latest innovations in programmer productivity reduce the complexity of developing first-class Windows applications.
Executive Summary
With over one million copies shipped, Delphi is now a global standard in software development. Its success stems from the fact that application development projects employing Delphi are more likely to come in on time and on budget. Delphi makes projects successful, which makes software development managers and their developers successful too.
The success of Delphi can be attributed to a number of factors:
- Delphi can be used on a wide range of projects, making Delphi developer skills highly transferable.
- Delphi makes building complex applications simple, yet still gives the developers full control over all aspects of development.
- Delphi applications can scale from the desktop to the enterprise and Internet.
- End users enjoy using applications built in Delphi because they are fast, modern, and easy to use.
- Developers appreciate using Delphi and businesses appreciate the results.
Delphi makes all this happen because it provides a unique combination of visual tools, the world's fastest native code compiler, object-oriented component architecture and library, scalable database architecture, and a full complement of advanced development tools.
New Delphi 4 continues the tradition of innovation in developer productivity with a number of new features:
- A new ergonomic User Interface, including an AppBrowser, CodeExplorer, Advanced Project Management, Class Completion Wizard, and ActionLists.
- New debugging views and process control features to speed the job of finding bugs.
- New programming features, including Dynamic Arrays, Method Overloading, and 64-bit Integers.
- New support for Windows 98, including the new ControlBar component, Docking, and Intellimouse support.
- New support for developing Windows NT Services.
- New Support for Oracle 8 along with maintained aggregates and a flexible new Grid control.
- One-step, single-source, COM and CORBA component development.
With all these new features added, Delphi 4 delivers a unique advantage to Developers and Development Managers. In short:
- Delphi 4 defines developer productivity
- Delphi 4 delivers the finest Windows and BackOffice applications
- Delphi 4 can get to any data, any time, anywhere
- Delphi 4 goes beyond Windows to ease Distributed and Internet Application Development
Introduction
Since its debut in 1994, Delphi has been an astounding success. Today, over one million copies of Delphi have been purchased. Delphi applications are deployed in the majority of the world's companies, and the demand for Delphi developers has never been greater.
This paper covers the aspects of Delphi that allow developers to deliver first-class Windows applications in record-breaking time, focusing on the features that are newly available in Delphi 4. The Enterprise and Distributed Application capabilities of Delphi (and there are many) are reviewed in this paper, but are covered in greater detail in the Inprise white paper entitled Distributed Enterprise Application Development with Delphi 4.
The secrets of Delphi success
Delphi is successful because it makes software developers and their managers successful. Development teams are continually under pressure to fulfill new application development and application change requests. As time goes on, applications become larger and more complex to manage. At the same time, new networking and operating system technologies are evolving. Developers must master these new technologies and at the same time deliver applications more quickly to keep themselves and their companies competitive.
Delphi keeps software developers ahead of the development game because:
- Delphi delivers a versatile tool suite so that one skill set can be used to develop any type of application, from the Desktop to the Enterprise, from a Decision Support application to an NT service.
- Delphi includes support for the very latest operating systems and enterprise architectures, radically simplifying them to reduce learning time, and thus enabling Delphi developers to be the first to deliver on the very latest technologies.
- Delphi is written in Delphi. This means that before developers put Delphi to test on their own projects, they know that the code and tools are robust, having already undergone the most rigorous testing.
Why more Delphi projects succeed
A successful development project must be delivered to spec on time and on budget. It must be robust, easy to use, and built in a way that is easy to modify and extend. A successful development project also has a development team with high morale and pride in their work. Delphi delivers all the attributes required to help a project succeed:
- A Visual Development Environment to speed easy-to-use and compelling applications to deployment in record time.
- A powerful object-oriented Visual Component Library (VCL) for rapidly assembling and modifying highly functional and robust applications that can employ the latest technologies and deploy on the latest platforms.
- The world's fastest native code compiler that generates the fastest applications in less time than it takes to load a pseudo-code interpreter.
- Powerful debugging facilities to take the pain out of debugging, resulting in fewer bugs, more stable code, happier end users, and happier developers.
- Sophisticated database facilities for accessing, displaying, and processing data from anywhere at anytime.
Innovations in Delphi 4
With every new release of Delphi, INPRISE folds in innovations that keep developers ahead of the curve. It is this focus on innovation that keeps Delphi ahead. These innovations have included:
- The first combination of a true compiler and true visual development environment.
- The first two-way code generation tools.
- The first full one-step support for ActiveX.
- The first high-performance database architecture.
- The first cross-standards Internet support.
Delphi 4 introduces a number of new features that enhance every phase of the development cycle:
- An ergonomically improved user interface with exclusive breakthroughs in user-interface design.
- Advanced project management and code browsing capabilities that dramatically reduce the pain of managing complex projects and speed movement through code.
- Powerful new debugging facilities to trap more errors more quickly.
- New programming language features, including ActionLists, a leap forward in user interface development and maintenance.
- Unrivalled support for Windows 98, Windows NT, and Oracle8.
- Full one-step COM and CORBA component development exclusively enabling the same component to be both COM and CORBA standards compliant.
- Interoperability with Java code.
Version 4 is the next leap forward in the Delphi revolution. Developers already benefiting from earlier versions of Delphi will find upgrading to this release very rewarding. Developers not yet using Delphi will find using version 4 to be their first step on the path to more successful development projects.
Delphi 4 defines productivity
Delphi 4 takes the complexity out of developing software, enabling developers to ship applications and respond to changes more quickly.
Application complexity is the barrier that prevents rapid application deployment and maintenance. Complexity is manifested in a number of ways:
- size of code;
- number of forms, queries data sources, and components;
- the number of developers on a project;
- the number of API calls required to develop even a simple interface to a technology such as a new Operating system or a Web Server, Transaction Server, or Application Server.
Only Delphi can keep developers in the Project Success Zone.
Most tools can handle simple jobs well. Only Delphi can keep application development easy as the applications become less trivial.
Using a combination of Visual Tools and Object Orientation, Delphi breaks through application complexity barriers, leaving developers to focus on implementing the important business aspects of applications, rather than fussing with low-level API syntax, project administration, and code navigation.
Now Delphi does even more to make developers productive.
New Delphi 4 User Interface Enhancements
The basis of productivity in any application is the user interface. The Delphi user interface is designed to make every developer's actions quick and easy to perform. Nearly all aspects of the environment are customizable, making it intuitive for beginners and ergonomic for experienced Delphi developers.
Version 4 now includes full support for Docking Windows and Forms. This means that code windows, forms, and debug windows can be easily grouped and rearranged to ensure a perfectly arranged desktop during every project phase.
Delphi 4 pioneers Tabbed Docking Windows. Developers can group many windows into a single tabbed window to maximize on-screen real estate without compromising accessibility.
If an Intellimouse is installed, Delphi will make use of it, allowing precision code scrolling.
Since Delphi is written in itself, many developers use the environment as an excellent model of how to design a first class user interface.
The new user interface features in the Delphi environment make using Delphi more productive for beginners and expert developers alike.
The new Delphi 4 Advanced Project Manager
Applications are now assembled from more and more component elements: source code, forms, and queries, DLLs, ActiveX components, Help Files ... this list goes on. Keeping track of each component, its dependencies, options, and version is critical to the integrity of the project, yet a huge burden on developer productivity.
The multiple targeting Advanced Project Manager means that components, DLLs, and executable files can all be rebuilt at the same time, from the same source code, and the version will never be out of sync.
The new Advanced Project Manager means that developers spend more time programming and less time administering projects.
AppBrowser
The AppBrowser is innovative technology just released from INPRISE's research and development labs in time for Delphi 4. AppBrowser uses advanced background parsing to understand the inherent relationship between all elements of code (such as a method's calls, its definition, and its implementation). It then intelligently hyperlinks them behind the scenes, allowing the developer to navigate through source code with a single click of the mouse, just as if surfing Web documents.
The AppBrowser makes moving through code as easy as surfing the Net, by intelligently hyperlinking related code.
CodeExplorer
Another exclusive productivity innovation in Delphi 4 is the CodeExplorer. The CodeExplorer maintains a persistently live 'Table of Contents' for a project and then displays it in an intuitive hierarchical view, making it easy for a developer to get a high-level view of application design and then drill down to explore items of interest in more detail.
The CodeExplorer's, at-a-glance application architecture view makes it easy for developers to grasp onto and keep control of the design and implementation of even the most complex projects.
ClassCompletion Wizard
Delphi is renowned for its powerful code generation tools. Other tools use 'black box' code generators to automate coding, but provide limited scope for developers to edit and customize the resulting code. Delphi two-way tools provide no such limitation, giving developers total control.
The new ClassCompletion Wizard automates the development of new classes, using Delphi two-way background parsing technology to keep the Wizard and source code in sync at all times.
The class completion wizard makes it easy for new developers to build components and reduces tedious repetitive coding for experienced developers.
ActionLists
ActionLists are possibly the most productive innovation in user interface development since the introduction of visual tools. Since multiple user interface elements (Hotkeys, Toolbar buttons, Menu items, pop-up menus) can be used to generate the same command (or action) on different application objects, developers can find themselves managing the vast number of many-to-many connections between the user interface and application logic.
Changing the behavior of a simple user command can mean trawling through the whole application looking for user interface elements that generate the command. ActionLists manage these complex relationships, leaving the developer to focus on business application logic
ActionLists deliver a breakthrough in user interface design. For the first time, user interface elements can be separated from application logic, resulting in reduced complexity and lines of code along with increased reusability and application stability.
Delphi 4 uses advanced debugging techniques to accelerate software deployment
All the elements of Delphi work together to ensure that bugs are minimized during development and any that do crop up can be rapidly tracked down and eliminated. Thus, the introduction of bugs into a Delphi application is less likely than with other tools, resulting in quality applications deployed in a shorter time.
Delphi 4 introduces a number of new features that can help to track down bugs more quickly:
A view into every corner of a running application
Delphi provides sophisticated views to help developers look at running applications from many angles and find bugs wherever they may be hiding.
- Module view. The new module view is a three-paned view that shows detailed information about the different DLL and EXE modules that are loaded, and the current process that is being debugged. The developer can get immediate low-level debug information from within a single window.
- CPU View. Delphi 4 includes a view of what's happening underneath the source code, at the CPU register level. Developers can now see the exact effect that each Delphi command has, making it ideal for implementing low-level projects, integrating assembly code, or simply understanding more about how the compiler and CPU operate.
- Inspector. The new inspector is an intelligent view into all application elements, including arrays, classes, constants, and pointers. The inspector detects the type of data being viewed and then intelligently morphs its appearance and number of tabs to show the current contents in the most intuitive way (for example, inspecting a class results in the values being split into three tabs: data, methods, and properties). The Inspector is a powerful way to look into and understand the current state of any part of the application.
Delphi debugging views make it easier to spot the hardest-to-find bugs.
Total control over application execution
Applications execution is becoming more and more complicated to trace, especially with multi-threaded applications or applications that work in a distributed environment. Delphi 4 provides a number of controls to harness the debugging of even the most complex application.
- Multi-process Debugging. With a new Thread View it's easy to examine all the currently executing threads, giving the developer the power to set and change the current process. Using multi-process debugging, the developer can avoid having to build execution trace logic into source code, saving time and delivering a more realistic debugging scenario.
- Remote-process Debugging. Delphi can debug applications that are running anywhere in the world, where a TCP/IP connection and valid access rights exist. Developers can now test applications in their deployment environments, debug applications with distributed COM and CORBA components, collaborate with developers on other sites and offer better off-site support to their customers.
- Event logging. In an event driven, multi-process application, tracking the sequence of application event execution can be the only way to track down some elusive bugs. Delphi 4 now provides a fully configurable event log, allowing the developer to toggle traces on all high- and low-level application events. Event logging means that developers can also leave an application running unattended without losing sight of how it executed.
- DataWatch Breakpoints. Developers can now ask Delphi to stop on the condition of any data item being changed. Since data can be changed from many different points within the source code, data watch breakpoints make it easier to track hard-to-find problems related to incorrect data values or pointers.
Delphi gives detailed control over the execution of even the most complex applications making it easy to quickly isolate problem areas.
Delphi 4 employs the latest programming language features
to make coding simpler and more efficient
Delphi uses ObjectPascal, a truly object-oriented language that facilitates full object-oriented development without being intimidating to beginners, or restricting to professionals. Any task that can be achieved in C++ can be done in Delphi, and usually in a less complex and more direct way.
Delphi 4 introduces some new language features to make Object Pascal even more flexible in a wide variety of programming situations.
Dynamic Arrays
Dynamic arrays give developers the flexibility of using arrays without having to specify the number of elements, just the data type and dimensions. Delphi uses advanced memory management to handle Dynamic Arrays, making it easy for developers to manipulate data, with less coding.
When it comes to managing data, Dynamic Arrays make Delphi developers even more productive.
Method Overloading
Delphi 4 now allows Objects to contain more than one method with the same name. The methods are distinguished by different parameters. This makes Delphi objects more flexible and interoperable with other objects. This is particularly important when building applications that are using enterprise objects or components from third-party sources.
Method overloading makes Delphi applications more flexible and interoperable.
64-bit Integers
Integer arithmetic is essential for coding numerically accurate applications without rounding errors. (Using Real Number data types never ensures accuracy) Delphi now supports 64-bit integers, giving developers the power to build accurate applications that support very large numbers.
The Delphi 64-bit integers make it the ideal choice for developing financial, scientific, and engineering applications.
Delphi 4 delivers the finest Windows and BackOffice applications
Delphi 4 makes it faster and easier for end users to work with Windows applications
Delphi empowers developers to create first-class applications. These applications use the very latest in User Interface technology to make applications easier to use and end users more productive. Delphi also includes full support for Microsoft BackOffice technologies, making it easy to build applications that tap the full power of NT, MTS, SQL Server, and Internet Information Server (IIS).
Windows 98 Applications
Delphi 4 provides full support for the new user interface elements introduced with Windows 98. By using Delphi 4, developers will be able to automatically build first-class applications that stand out from the crowd. All of the Delphi code generation tools have been upgraded to use these new controls, giving developers a Windows 98 application by default. Some of the new components include:
- Scrollable Page Control
- Flat Scrollbars
- MonthCalendar
Delphi 4 also supports the new multiple monitor capabilities of Windows 98.
Delphi 4 automatically embeds full Windows 98 support into a Delphi application, with no developer effort.
ControlBar Component
With the new ControlBar component, Delphi developers can now build first-class applications with the sophisticated Office 97 application look and feel. End users of these applications will benefit from complete control over the placement of these toolbars, while developers can use the ControlBar as a container for any standard Delphi component.
With the new ControlBar component it's easy to build feature-rich applications that are easy to use.
Docking Windows
All Delphi window components have been updated to be dockable windows. Using traditional methods, the development of a dockable user interfaces is very complex. Delphi makes it as easy as setting the dockable property of a window to be true. If the docking actions need to be modified, then the developer can simply build methods for the new docking events that have been surfaced in the window components.
Delphi Dockable Windows and Forms deliver highly sophisticated and impressive user interface for virtually no developer effort.
Intellimouse support
The success of the Intellimouse means yet another piece of hardware for developers to support. Delphi 4 applications will automatically detect and use an Intellimouse, without the Developer needing to add any code. The result is an easier-to-use application.
The built-in Delphi 4 Intellimouse support delivers easier-to-use applications for no developer effort.
Delphi provides the best support for Windows NT Services
Services are applications that run in the background and automatically launch with the start up of the operating system. Until now, using this powerful operating system feature has meant negotiating a complex API. Now, Delphi 4 has opened up services to all developers by providing two new wizards, components, and a unique visual Service designer.
Its advanced support for rapid development of Services makes Delphi 4 the default choice for building new Windows NT applications.
The most sophisticated Database and Decision Support
applications are deployed using Delphi 4
Recent releases of Delphi have delivered a number of benefits for developers of data-oriented or decision support applications. These advances have been characterized by:
- High-performance native SQL access (faster than ODBC) to Oracle, Sybase, Informix, DB2, SQL Server, and InterBase databases, as well as direct support for local and networked dBASE, Paradox, Access, FoxPro, and ASCII formats.
- A wealth of database components and controls for data access, analysis and display, including multidimensional grids and pivots, graphing and reporting, combined with intuitive database wizards and visual design tools.
- Full support for client/server and multi-tier distributed database applications through application servers and distributed component models.
Delphi 4 now delivers even more for database and decision support application developers.
Full Oracle 8 Support
Delphi 4 now includes complete support for developing client applications for Oracle 8. These features include:
- Abstract Data Types
- VARRAY (Variable Length Arrays)
- Nested Tables
- REFs (Object Pointers)
- BFILE (External File References)
Delphi 4 brings the productivity of Delphi to Oracle Developers making it the best choice for developing Oracle 8-enabled client applications.
Maintained Aggregates
New Maintained Aggregates mean that implicit information about a collection of data can be stored and accessed along with it. This makes it significantly easier for developers to work at an 'information-level' rather than with raw data, making development and execution of decision-support applications faster, and the analysis of distributed information less cumbersome.
Delphi support for Maintained Aggregates makes it excellent at developing Decision Support applications.
Delphi 4 goes beyond Windows to ease distributed and Internet application development
While Delphi is very popular as a high-productivity Windows development tool, it has also found considerable success among developers delivering Enterprise-deployed multi-tier applications. This success is again based upon the ability of Delphi to simplify complex application development. In particular, Delphi delivers a number of features for Enterprise developers:
- An application architecture that can respond quickly to new business requirements and information sources
- Built-in PVCS Team Development Support
- Full support across industry standards, database, and distributed component architectures that insulates the developer against choosing the wrong route
Delphi 4 can get to any data, any time, anywhere, making it ideal for scaling to Enterprise projects and integrating with legacy applications.
The Delphi database architecture makes it easy to access data in whatever format, wherever it may lie. All of this can be achieved by using a consistent set of visual tools and database components. Delphi also takes the pain out of addressing the critical issues for Enterprise application developers:
- Ensuring robust and secure transactions
- Efficiently handling multiple concurrent database connections in a fault tolerant manner
- Providing the fastest possible data access and transfer performance
The robust Delphi Enterprise Data Architecture makes Delphi 4 the first-choice tool for delivering applications that go beyond the desktop.
One-step COM and CORBA, Java Interoperability, and Inprise MIDAS make Distributed application development easier.
COM and CORBA are evolving as standard component models for building distributed applications. This causes significant challenges for developers:
- The APIs and protocols for COM and CORBA are very complex, making it hard for developers to get up to speed with distributed application development.
- Neither COM nor CORBA has yet evolved as a de facto standard, so developers must either double their efforts and develop for both, or bet their application's future on a single standard.
- The architecture of COM and CORBA makes it difficult to retrofit existing applications to make them interoperable with languages such as Java.
Delphi overcomes these problems by providing exclusive one-step COM and CORBA component development. Any Delphi component can be instantly made both COM- and CORBA-enabled. This means that developers can support both standards without having to learn the APIs. Delphi delivers distributed enterprise applications in record time that can interoperate with other applications--including those written in Java.
The MIDAS Application Server also provides an easy way for developers to centrally manage their application logic. MIDAS delivers distributed thin-client applications that are robust and secure, as well as being easy to develop, manage, and deploy. Delphi also supports Microsoft's Transaction Server (MTS) and the X/Open distributed XA architecture.
One-step COM and CORBA, and MIDAS mean that Delphi developers are the most effective developers of Enterprise applications.
Delphi 4 enables fully-featured distributed Internet application development
Delphi developers can also use their existing skills to build high-powered interactive Internet and Web-based applications. These applications have the benefit of being very easy to manage and deploy. For the Internet developer, Delphi includes:
- Over 17 different drop-in components to take the complexity out of using Sockets, UDP, TCP, SMTP, POP3, NNTP, HTTP, FTP, and HTML.
- Delphi includes a WebBroker technology that is platform-neutral and supports both ISAPI and NSAPI. Developers can easily support both server standards using a single uncomplicated code base.
Delphi makes it easy to build Web-based applications.
Summary
There are many reasons why Delphi is so successful. Probably the most significant reason is that projects written in Delphi succeed. The key reasons for this are:
- Delphi developers can achieve much more in a shorter amount of time and at lower cost.
- Applications can scale without becoming too complex to manage.
- Applications look great, are easy to use, and run very fast.
- Delphi applications are built to manage change, increasing their longevity and decreasing the overall cost of maintaining an organization's application infrastructure.
Delphi 4 introduces a number of innovations to make developers even more productive:
- New ergonomic User Interface including AppBrowser, CodeExplorer, Advanced Project Management, Class Completion Wizard, and ActionLists.
- New debugging views and process control features to speed the job of finding bugs.
- New programming features including Dynamic Arrays, Method Overloading, and 64-bit Integers.
- New support for Windows 98, including the new ControlBar component, Docking, and Intellimouse support.
- Support for developing Windows NT Services.
- New Support for Oracle 8 along with Maintained Aggregates.
- One-step, single-source, COM and CORBA component development.
There is little doubt that when it comes to developing the finest Windows and BackOffice applications, Delphi is the tool that defines productivity.
Back to Top
White Papers
Home Page