Share on Facebook Share on Twitter Email
Answers.com

Embarcadero Delphi

 
Wikipedia: Embarcadero Delphi
Embarcadero Delphi
Delphi 2009 Screenshot.jpg
Delphi 2009
Developer(s) Embarcadero Technologies
Stable release Delphi 2010 (14) / 2009-8-25; 2 months ago
Preview release Not available
Operating system Microsoft Windows
Available in English, French, German, Japanese
Development status Active
Type Integrated Development Environment
License Embarcadero EULA
Website www.embarcadero.com/products/delphi

Embarcadero Delphi, formerly CodeGear Delphi and Borland Delphi, is a software development environment for Microsoft Windows applications originally developed by Borland and now owned and developed by Embarcadero Technologies.

Delphi is mainly used for the development of desktop and enterprise database applications, but it is a general-purpose software development tool suitable for most software projects. Web applications are also possible due to the inclusion of several libraries. Delphi is distributed in various versions with different features and prices: Professional, Enterprise and Architect.

The most recent iteration of the Win32 range is Delphi 2010, released in August 2009.

Contents

History

The Delphi programming language is the native Windows successor of the MS-DOS-based Turbo Pascal for Windows and Borland Pascal's Object Pascal.

Distinguishing features

Delphi uses the Pascal-based programming language called Object Pascal, and compile Delphi source code into native x86 code. They include the VCL (Visual Component Library), support for COM independent interfaces with reference counted class implementations, and support for a large number of third-party components. Interface implementations can be delegated to fields or properties of classes. Message handlers are implemented by tagging a method of a class with the integer constant of the message to handle.

A strong emphasis is placed on database connectivity and Delphi offers a rich database component set. The Visual Component Library (VCL) contains a large library of database aware controls, and database access components.

Advantages

Delphi is a strongly typed high-level programming language, relatively easy to use and originally based on the well structured language Pascal. Delphi, in contrast to Pascal, was not primarily designed for education purposes. In addition to high-level language features Delphi also supports low level programming by allowing assembler parts and the notation of direct CPU opcodes is also possible. The language's object orientation features only class- and interface-based polymorphism, making programs written in Delphi more clearly laid out than programs written in some other languages that allow and use multiple inheritance. Metaclasses are the first class objects. Objects are actually references to the objects (as in Java) which Delphi implicitly dereferences, so there's usually no need to manually allocate memory for pointers to objects or similar techniques needed in some other languages. There are dedicated reference counted string types (as well as null-terminated strings).

Strings can be concatenated by using the '+' sign, rather than using functions. For those dedicated string types, no manual memory management is necessary as the memory manager handles this. The improved memory manager introduced with Borland Developer Studio 2006 now provides functions to track down memory leaks.

The language is suitable for Rapid Application Development (RAD) and comes with an integrated IDE. The Delphi products all ship with a large framework called VCL (Visual Component Library) including most of its source code. Third-party components (usually available with full source code) are available on the market as well as tools to enhance the IDE or for other Delphi related development tasks. The IDE includes a GUI for localization and translation of created programs which may be deployed to a translator at no additional cost. (Some developers prefer to use 3rd party products for this purpose as they often have more functionality.) The VCL framework maintains a high level of source compatibility between versions which means one can upgrade existing source code easily in most cases to a newer Delphi version. 3rd party libraries either need updates from the vendor or if source code is available a simple recompilation with the newer version may be sufficient. The VCL was an early adopter of Dependency injection or Inversion of Control. The VCL is a sophisticated "re-usable" component model, extensible by the developer. With class helpers one can introduce new functionality to core RTL and VCL classes without changing the original source code of the RTL or VCL.

The quick optimizing single pass compiler can compile to a single executable, thus simplifying distribution and eliminating DLL version issues. The creation of DLLs and ActiveX DLLs or COM Automation servers is also possible, and developers can even create Windows services using Delphi.

The Delphi IDEs since Delphi 2005 increasingly support advanced refactoring features such as Method Extraction, etc.[1] and the possibility to create UML models from the source code or to modify the source through changes made in the model.

Delphi has large communities on Usenet and the web (e.g. news://newsgroups.codegear.com) which help solving problems of individual developers. Many Codegear employees actively participate in those communities. A voluntary team (TeamB) also helps out.

Disadvantages

No native 64-bit support

Delphi creates 32-bit native applications only. It is not possible to write 64-bit native Windows applications, which is required to use more than 4 GB of memory. In addition, you can not write plug-ins for 64-bit 3rd party applications and services, like the Windows Explorer. Support for 64-bit applications has been on the Delphi roadmap for some years, but has been postponed several times. The current roadmap [2] shows the Commodore project, bringing 64-bit support, but does not state an arrival date.

Not cross platform

Delphi is, in itself, not a cross-platform tool. The latest Delphi release contains Delphi Prism which can be used to develop .NET applications. A cross platform, codenamed Project X, is shown on the latest roapmap [3].

Backward compatibility

Each new release of Delphi attempts to keep as much backwards compatibility as possible. This allows users to build legacy code without worrying about any broken interfaces or functionality. However, some developers feel that the attention to backwards compatibility has held back the evolution of the Delphi language, and has led to a somewhat dated design in the standard class libraries (VCL/RTL).

Version History

Delphi 1

Turbo Pascal and Borland Pascal were low-cost 16-bit native code compilers. They went through a number of revisions over the years, and were used mainly to produce programs to run on text displays. When the use of graphical user interfaces became viable with Microsoft Windows 3.1, Delphi, using augmented Borland Pascal as its underlying language, was introduced. Delphi was one of the first of what came to be known as Rapid Application Development (RAD) tools when released in 1995 for the 16-bit Windows 3.1.

Delphi 2

Delphi 2, released a year later, supported 32-bit Windows environments, and a variant using C++ as the underlying language, C++ Builder, followed a few years later.

The chief architect behind Delphi was Anders Hejlsberg, who had developed Turbo Pascal. He moved to Microsoft in 1996 to work on C#.

Delphi 3

Delphi 4

Kylix

In 2001 a Linux version named Kylix was released. It was criticised as being of low quality and did not sell well, and was abandoned after version 3.

Delphi 5

Delphi 6

Attempts to support both Linux and Windows for cross-platform development were made, and a cross-platform version of the VCL known as CLX shipped in 2002 with the release of Delphi 6. The CLX technology effort has faded, and with the failure of Kylix, the CLX was abandoned too.

Delphi 7

Delphi 7, released in August 2002, became the standard version used by more Delphi developers than any other single version. It is one of the most appreciated IDEs created by Borland because of its stability, speed and low hardware requirements and remains actively used to this date. Delphi 7 added support for Windows XP Themes, and added more support for building Web applications. It was also the last version of Delphi which can be used without Activation.

Delphi 8

Delphi 8, released December 2003, was a .NET-only release that allowed developers to compile Delphi Object Pascal code into .NET CIL. The IDE was rewritten to accommodate for .NET development. The IDE changed to a docked interface similar to Microsoft's Visual Studio.NET. Delphi 8 was highly criticised for its low quality and the fact that is was no longer possible to create native applications.

Delphi 2005

The next version, Delphi 2005 (Delphi 9, also Borland Developer Studio 3.0), included the Win32 and .NET development in a single IDE, reiterating Borland's commitment to Win32 developers. Delphi 2005 includes design-time manipulation of live data from a database. It also includes an improved IDE and added a for ... in statement (like C#'s foreach) to the language. However, it was criticized by some for its bugs; both Delphi 8 and Delphi 2005 had stability problems when shipped, which were only partially resolved in service packs.

Delphi 2006

In late 2005 Delphi 2006 (Delphi 10, Borland Developer Studio 4.0) was released and combined development of C# and Delphi.NET, Delphi Win32 and C++ (Preview when it was shipped but got stable in Service Pack 1) into a single IDE. It was much more stable than Delphi 8 or Delphi 2005 when shipped, and improved even more with the release of service packs and several hotfixes.

On February 8, 2006 Borland announced that it was looking for a buyer for its IDE and database line of products, which include Delphi, to concentrate on its ALM line. The news met with voluble optimism from the remaining Delphi users.

On September 6, 2006 The Developer Tools Group (the working name of the not yet spun off company) of Borland Software Corporation released single-language versions of Borland Developer Studio, bringing back the popular Turbo name. The Turbo product set includes Turbo Delphi for Win32, Turbo Delphi for .NET, Turbo C++, and Turbo C#. Each version is available in two editions: Explorer—a free downloadable version—and Professional—a lower-priced (US$899 for new user, US$399 for update) version which opens access to thousands of third-party components. Unlike earlier Personal editions of Delphi, new Explorer editions can be used for commercial development.

On November 14, 2006 Borland announced that rather than selling the development tools group it would spin it off into an independent subsidiary company named CodeGear.[4]

Delphi 2007

Photo of Delphi 2007 box as released by CodeGear in spring 2007.

Delphi 2007 (Delphi 11), the first version by CodeGear, was released on March 16, 2007. The Win32 personality was released first, before the .NET personality of Delphi 2007 which is based on .NET Framework 2.0 was released as part of the CodeGear RAD Studio 2007 product. New features included support for MS Build and enhancements to the Visual Component Library for Windows Vista, but the C#Builder feature was dropped since this release since sales of this weren't as high as expected due to Visual Studio also offering C#. The Windows Form designer for Delphi .NET was also dropped in D2007 because it is part of the .NET framework and the API to use it had been changed so drastically by Microsoft in .NET 2.0 that updating the IDE would have been a major undertaking. Nowdays Delphi.NET has been replaced by Delphi Prism, a combination of RemObjects mostly Delphi compatible .NET compiler, Microsofts Visual Studio Shell (a version without C# and VB support) and some Embarcadero technologies like dbExpress. Prism is in so far cross platform capable as it supports the Mono .NET libraries. CodeGear in Delphi 2007 also introduced DBX4 as the next version of dbExpress. For the first time Delphi could be downloaded from the Internet and activated with a license key. Internationalized versions of Delphi 2007 shipped simultaneously in English, French, German and Japanese. RAD Studio 2007 (code named Highlander), which includes .NET and C++Builder development, was released on September 5, 2007.

Delphi 2009

Delphi 2009 (Delphi 12, code named Tiburón), added many new features such as completely reworking the VCL and RTL for full Unicode support, and added generics and anonymous methods for Win32 native development. Support for .NET development was dropped from the Delphi IDE. A new product, Delphi Prism, was offered for .NET development in its place. Delphi Prism is a Visual Studio language plug-in, and does not include a RTL or VCL for porting code.

Borland sold CodeGear to Embarcadero Technologies in 2008. Embarcadero is retaining the CodeGear division created by Borland to identify its tool and database offerings, and Embarcadero has decided to identify its own database tools under the DatabaseGear moniker.

Delphi 2010

The latest version, Delphi 2010 (Delphi 14, number 13 was skipped), was released on August 25, 2009. It includes support for Windows 7, gestures, a source code formatter, debugger visualizers and the option to also have the old style component palette in the IDE.

Name

Delphi was originally a confidential research project at Borland which evolved into a product that was to be called AppBuilder.

Shortly before the first release of Borland's AppBuilder, Novell AppBuilder was released, leaving Borland in need of a new name. After much struggle, the name Delphi prevailed.[5]

Developer Danny Thorpe chose the Delphi codename in reference to the Oracle at Delphi. One of the original goals of Delphi was to provide database connectivity to programmers as a key feature and a popular database package at the time was Oracle database; hence, "If you want to talk to [the] Oracle, go to Delphi". As development continued, the name grew on them and there was growing support within Borland for the name Delphi.

Related software

Delphi for PHP

Delphi for PHP is an IDE for PHP. It provides true RAD functionality. It features Delphi or Visual Basic like form designer, integrated debugger (based on Apache web server). It also includes a VCL library ported to PHP. Support for Web 2.0 features like AJAX, makes it a unique IDE.

This product was announced on March 20, 2007, and is based on Qadram Q studio, which is now wholly owned by CodeGear.

Delphi Prism

Delphi Prism is an IDE for Oxygene programming language (previously known as Chrome). Oxygene is RemObject's programming language for .NET development.

Free Pascal and Lazarus

Free Pascal is an open source Pascal compiler which supports Delphi code and works on many operating systems.

Lazarus is a RAD IDE which uses the Free Pascal Compiler. It is developed for and supported by the Free Pascal compiler and runs among others on Windows, Linux and OS-X.

Notes

See also

References

  • Template:Citation http://jobs.skype.com/2006/07/ui developer for windows.html

External links


Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
 
 

 

Copyrights:

Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "Embarcadero Delphi" Read more