Delphi (software): Difference between revisions

Content deleted Content added
Cleaned up some language, added couple references
primary sources
 
Line 1:
{{Short description|General-purpose programming language and a software product}}
{{Unreferenced}}
{{for|the macromolecular electrostatics modeling software package|DelPhi}}
{{Infobox software
| name = Delphi
| logo = Embarcadero_Delphi_10.4_Sydney_Product_Logo_and_Icon.svg
| screenshot = Screenshot of Delphi 10.4 IDE with VCL designer and Dark Theme.png
| programming language = Mostly Delphi (Object Pascal)
| caption = Screenshot of Delphi 10.4, with the visual form editor being used to create an application
| author = [[Borland]], [[CodeGear]], [[Embarcadero Technologies|Embarcadero]]
| developer = [[Embarcadero Technologies]]
| released = 1995
| latest release version = {{wikidata|property|edit|reference|P548=Q2804309|P348}}
| latest release date = {{start date and age|{{wikidata|qualifier|P548=Q2804309|P348|P577}}}}
| operating_system = Runs on [[Windows]];<ref>{{Cite web | url=http://docwiki.embarcadero.com/RADStudio/Sydney/en/Installation_Notes#Operating_System_Requirements | title=Installation Notes - Operating System Requirements | access-date=2020-09-05 | archive-date=2020-08-06 | archive-url=https://web.archive.org/web/20200806012405/http://docwiki.embarcadero.com/RADStudio/Sydney/en/Installation_Notes#Operating_System_Requirements | url-status=live }}</ref>{{Primary source inline|date=August 2025}} targets [[Windows]], [[Linux]], [[macOS]], [[Android (operating system)|Android]], [[iOS]]
| genre = [[Software Development]], [[Graphical user interface builder|Designer]], [[Integrated development environment|IDE]], [[Compiler]], [[Runtime library|RTL]]
| license = [[Freemium]]
| website = {{URL|https://www.embarcadero.com/products/delphi}}
}}
 
'''Delphi''' is a [[general-purpose programming language]] and a software product that uses the Delphi dialect of the [[Object Pascal]] [[programming language]] and provides an [[integrated development environment]] (IDE) for [[rapid application development]] of desktop, [[mobile application|mobile]], [[web application|web]], and [[console application|console]] software,<ref name="Buchanan2003">{{cite book|author=William Buchanan|title=Mastering Delphi Programming|url=https://books.google.com/books?id=2AgnBQAAQBAJ&pg=PP10|date=4 February 2003|publisher=Palgrave Macmillan|isbn=978-1-137-17356-0|pages=10–}}{{Dead link|date=January 2024 |bot=InternetArchiveBot |fix-attempted=yes }}</ref> currently developed and maintained by [[Embarcadero Technologies]].
[[Image:Delphi3-4-6.JPG|Right|thumb|350px|Delphi has been released in many versions, including older versions which have been released in magazines for non-profit application use]]</div>
 
Delphi's compilers generate [[native code]] for [[Microsoft Windows]], [[macOS]], [[iOS]], [[Android (operating system)|Android]] and [[Linux]] ([[X86-64|x64]]).<ref>{{cite web|title=Performance Comparison from Delphi 2010 to XE6 (Part 2)|date=12 May 2014 |url=http://blogs.riversoftavg.com/index.php/2014/05/12/performance-comparison-from-delphi-2010-to-xe6-part-2/|publisher=Riversoft AVG|access-date=9 March 2016|archive-date=26 July 2015|archive-url=https://web.archive.org/web/20150726170712/http://blogs.riversoftavg.com/index.php/2014/05/12/performance-comparison-from-delphi-2010-to-xe6-part-2/|url-status=live}}</ref><ref name="auto">{{cite web|title=The Delphi Geek: Built For Speed|url=http://www.thedelphigeek.com/2010/06/built-for-speed.html|access-date=9 March 2016|archive-date=23 March 2016|archive-url=https://web.archive.org/web/20160323012544/http://www.thedelphigeek.com/2010/06/built-for-speed.html|url-status=live}}</ref><ref>{{cite web|title=Discussion on Hacker News about Delphi being alive|url=https://news.ycombinator.com/item?id=7614236|publisher=Hacker News|access-date=9 March 2016|archive-date=2 July 2016|archive-url=https://web.archive.org/web/20160702153911/https://news.ycombinator.com/item?id=7614236|url-status=live}}</ref>
<i>For the language Borland Delphi is programmed in, see [[Object Pascal]].</i>
 
Delphi includes a code editor, a visual designer, an integrated debugger, a [[Version control|source code control]] component, and support for third-party [[Plugin (computing)|plugins]]. The code editor features [[Code Insight]] ([[code completion]]), Error Insight (real-time error-checking), and [[Code refactoring|refactoring]]. The visual forms designer has the option of using either the [[Visual Component Library]] (VCL) for pure Windows development or the [[FireMonkey]] (FMX) framework for cross-platform development. Database support is a key feature and is provided by [[FireDAC]] (Database Access Components). Delphi is known for its fast compilation speed, native code, and developer productivity.{{Citation needed|reason=There are no citations in this paragraph and the last sentence is written like an endorsement.|date=November 2021}}
'''Borland Delphi''' is a software development package created by [[Borland]]. The 10th and latest version, Delphi 2006 supports the Delphi programming language ([[Object Pascal]]) and [[C++]] for the 32 bit [[Microsoft Windows]] platform, and Delphi and [[C Sharp programming language|C#]] for the [[Microsoft .NET]] platform.
 
Delphi was originally developed by [[Borland]] as a [[rapid application development]] tool for Windows as the successor of [[Turbo Pascal]]. Delphi added full [[object-oriented programming]] to the existing language, and the language has grown to support generics, [[Anonymous function|anonymous methods]], [[Anonymous function#Closures|closures]], and native [[Component Object Model]] (COM) support.
Delphi's most popular use is the development of [[desktop]] and [[Business|enterprise]] [[database]] applications, but as a general-purpose development tool it is capable of, and is used for, most types of development projects.
 
Delphi and its [[C++]] counterpart, [[C++Builder]], are interoperable and jointly sold under the name RAD Studio. There are Professional, Enterprise, and Architect editions, with the higher editions having more features at a higher price. There is also a free-of-charge Community edition, with most of the features of Professional, but restricted to users and companies with low revenue.<ref>{{Cite web |title=Delphi: App Development Product Editions |author= |website=Embarcadero |date= |access-date=13 March 2021 |url=https://www.embarcadero.com/products/delphi/product-editions |archive-date=14 March 2021 |archive-url=https://web.archive.org/web/20210314162551/https://www.embarcadero.com/products/delphi/product-editions |url-status=live }} With download link for Delphi Feature Matrix</ref>{{Primary source inline|date=August 2025}}
The Delphi product is distributed as various suites: Personal, Professional, Enterprise (formerly Client/Server) and Architect.
 
== History Features==
Delphi supports [[rapid application development]] (RAD). Prominent features are a visual designer and two [[application framework]]s, [[Visual Component Library]] (VCL) for Windows and [[FireMonkey]] (FMX) for cross-platform development.
Delphi was one of the first of what came to be known as ''RAD'' tools, for [[Rapid Application Development]], when released in [[1995]] for the 16-bit [[Windows 3.1]]. Delphi 2, released a year later, supported 32-bit Windows environments, and a [[C++]] variant, [[C++ Builder]], followed a few years after.
[[Image:Borland_Delphi_2006.png|Right|thumb|350px|Delphi 2006]]
The chief architect behind Delphi, and its predecessor [[Turbo Pascal]], was [[Anders Hejlsberg]] until he was headhunted in [[1996]] by [[Microsoft]], where he worked on [[Visual J++]] and subsequently became the chief designer of [[C Sharp programming language|C#]] and a key participant in the creation of the Microsoft .NET Framework.
 
Delphi uses the [[Pascal (programming language)|Pascal]]-based programming language [[Object Pascal]] created by [[Anders Hejlsberg]] for Borland (now IDERA) as the successor to Turbo Pascal. It supports native [[cross-compilation]] to many platforms including Windows, Linux, iOS, and Android.
In [[2001]] a Linux version known as [[Kylix programming tool|Kylix]] became available. However, due to low quality and subsequent lack of interest, Kylix was abandoned after version 3.
 
To better support development for Microsoft Windows and interoperate with code developed with other software development tools, Delphi supports independent interfaces of [[Component Object Model]] (COM) with [[reference counting]] class implementations, and support for many third-party components. [[Interface (computer science)|Interface]] implementations can be delegated to fields or properties of classes. Message handlers are implemented by tagging a [[Method (computer programming)|method]] of a [[Class (computer programming)|class]] with the integer constant of the message to handle.{{Citation needed|date=November 2021}}
Support for Linux and Windows cross platform development (through Kylix and the CLX component library) was added in [[2002]] with the release of Delphi 6.
 
[[Database]] connectivity is extensively supported through VCL database-aware and database access components.
Delphi 8, released [[December 2003]], was a [[.NET]]-only release that allowed developers to compile Delphi Object Pascal code into .NET [[Microsoft Intermediate Language|MSIL]]. It was also significant in that it changed its IDE for the first time, from the multiple-floating-window-on-desktop style IDE to a [[look and feel]] similar to Microsoft's Visual Studio.NET.
 
Later versions have included upgraded and enhanced runtime library routines, some provided by the community group [[FastCode]].
Although Borland fulfilled one of the biggest requests from developers (.NET support), it was criticized both for making it available too late, when a lot of former Delphi developers had already moved to C#, and for focusing so much on backward compatibility that it was not very easy to write new code in Delphi. Delphi 8 also lacked significant high-level features of the [[c sharp|C#]] language, as well as many of the more appealing features of Microsoft's [[Visual Studio]] IDE. (There were also concerns about the future of Delphi Win32 development. Because Delphi 8 did not support Win32, Delphi 7.1 was included in the Delphi 8 package.)
 
===Characteristics===
The next version, Delphi 2005 (Delphi 9), 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 uses a [[Strongly-typed programming language|strongly typed]] [[high-level programming language]], intended to be easy to use and originally based on the earlier Object Pascal language. [[Pascal (programming language)|Pascal]] was originally developed as a general-purpose language "suitable for expressing the fundamental constructs known at the time in a concise and logical way", and "its implementation was to be efficient and competitive with existing FORTRAN compilers"<ref>{{cite web|url=http://www.math.bas.bg/bantchev/place/pascal/recollections.pdf|title=Recollections About the Development of Pascal|access-date=2016-01-12|archive-date=2016-05-12|archive-url=https://web.archive.org/web/20160512232508/http://www.math.bas.bg/bantchev/place/pascal/recollections.pdf|url-status=live}}</ref> but without low-level programming facilities or access to hardware. Turbo Pascal and its descendants, including Delphi, support access to hardware and low-level programming, with the facility to incorporate code written in [[assembly language]] and other languages. Delphi's [[Object-oriented programming|object-orientation]] features only class- and interface-based [[Polymorphism (computer science)|polymorphism]].<ref name="WangTan2006">{{cite book|author1=Lingfeng Wang|author2=Kay CHen Tan|title=Modern Industrial Automation Software Design|url=https://books.google.com/books?id=H93R1EE7rL8C&pg=PA113|date=20 January 2006|publisher=John Wiley & Sons|isbn=978-0-471-77627-7|pages=113–}}</ref> Metaclasses are first class objects. Objects are references to the objects (as in [[Java (programming language)|Java]]), which Delphi implicitly de-references, so there is usually no need to manually allocate memory for pointers to objects or use similar techniques that some other languages need. There are dedicated reference-counted string types, and also null-terminated strings.
 
Strings can be concatenated by using the '+' operator, rather than using functions. For dedicated string types, Delphi handles memory management without programmer intervention. Since Borland Developer Studio 2006, there are functions to locate [[memory leak]]s.
In late [[2005]], Delphi 2006 was released and federated development of C# and Delphi.NET, Delphi Win32 and C++ into a single IDE. It was much more stable than Delphi 8 or Delphi 2005 when shipped, and improved even more after the service packs and several hotfixes.
 
Delphi includes an integrated IDE. The Delphi products all ship with a run-time library (RTL) and a [[Visual Component Library]] (VCL), including most of its source code. Third-party components (sometimes with full [[source code]]) and tools to enhance the IDE or for other Delphi related development tasks are available, some free of charge. The IDE includes a GUI for localization and translation of created programs that may be deployed to a translator; there are also third-party tools with more features for this purpose. The VCL framework maintains a high level of source compatibility between versions, which simplifies updating existing source code to a newer Delphi version. Third-party libraries typically need updates from the vendor but, if source code is supplied, recompilation with the newer version may be sufficient. The VCL was an early adopter of [[dependency injection]] or [[inversion of control]]; it uses a reusable component model, extensible by the developer. With class helpers, new functionality can be introduced to core RTL and VCL classes without changing the original source code of the RTL or VCL.
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 [[Application Lifecycle Management|ALM]] line. The news met with voluble optimism from the remaining Delphi users.
 
Delphi supports a wide range of third-party database access components that provide native connectivity to major database systems. These include specialized libraries for Oracle, SQL Server, MySQL/MariaDB, PostgreSQL, SQLite, and InterBase/Firebird. Some components, like [https://www.capterra.com/p/250231/Delphi-Data-Access-Components/ DAC], offer universal data access solutions supporting multiple databases and cloud services such as Salesforce and FreshBooks. These libraries are regularly updated to remain compatible with the latest IDE versions (e.g., RAD Studio 12), operating systems (e.g., macOS Sonoma, iOS 17, Android 13), and database engines (e.g., Oracle 23, SQL Server 2022, PostgreSQL 16).
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'' moniker. 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''&mdash;a free downloadable version&mdashand ''Professional''&mdash;a relatively cheap (US$399) 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.
 
The compiler is [[Optimizing compiler|optimizing]] and is a [[One-pass compiler|single-pass compiler]]. It can optionally compile to a single [[executable]] which does not require [[Dynamic-link library|DLL]]s. Delphi can also generate standard DLLs, [[ActiveX]] DLLs, [[Component Object Model|COM]] automation servers and [[Windows services]].
On [[November 14]], [[2006]], Borland announced the cancellation of the sale of its Development tools; instead of that it would spin them off into an independent company named CodeGear.<ref>{{cite web | author=David Intersimone | title=Press Release: Borland forming CodeGear to focus exclusively on developer productivity |url=http://bdn.borland.com/article/33819| accessdate=2006-11-28}}</ref>
 
The Delphi IDEs since Delphi 2005 increasingly support [[refactoring]] features such as method extraction and the possibility to create [[Unified Modeling Language|UML]] models from the source code or to modify the source through changes made in the model.
==Main distinguishing features==
 
Delphi has communities on the [[World Wide Web|web]], where also its employees actively participate. And Delphi is using in collaboration with FireDAC components.
The main features that distinguish Delphi and [[Kylix programming tool|Kylix]] from other IDEs are:
*The Pascal-based programming language
*The [[Visual Component Library|VCL]]/[[CLX]] (Visual Component Library)
*A strong emphasis on database connectivity
*A large number of third party components.
*Delegation of [[interface (computer science)|interface]] implementation to a field or property of the class
*Implementation of message handlers by tagging a method of a class with the integer constant of the message to handle
*[[Component object model|COM]] independent interfaces with [[reference counting|reference counted]] class implementations
*Can be compiled into native [[x86]] code or managed [[.NET Framework|.NET]] code
 
===Backward compatibility===
==Advantages==
 
Delphi is one of the languages where backward compatibility is close to 100%. Although each new release of Delphi attempts to keep as much [[backward compatibility]] as possible to allow existing code reuse, new features, new libraries, and improvements sometimes make newer releases less than 100% backward compatible.
Delphi exhibits the following advantages:
 
Since 2016, there have been new releases of Delphi every six months, with new platforms being added approximately every second release.<ref>{{cite web|title=List of Delphi language features and version in which they were introduced/deprecated|url=https://stackoverflow.com/questions/8460037/list-of-delphi-language-features-and-version-in-which-they-were-introduced-depre|publisher=Stack Overflow|access-date=9 March 2016|archive-date=28 February 2016|archive-url=https://web.archive.org/web/20160228200427/http://stackoverflow.com/questions/8460037/list-of-delphi-language-features-and-version-in-which-they-were-introduced-depre|url-status=live}}</ref>
*[[Rapid Application Development]] (RAD)
*Based on a well-designed language - high-level and strongly typed, with low-level escapes for experts
*A large community on [[Usenet]] and the [[World Wide Web|web]] (e.g. news://forums.borland.com and [http://info.borland.com/newsgroups/ng_delphi.html Borland's web access to Delphi newsgroups])
*Can compile to a single executable, simplifying distribution and reducing DLL versioning issues
*Many VCL and third-party components (usually available with full [[source code]]) and tools (documentation, debug tools, etc.)
*Quick optimizing compiler and ability to use assembler code
*Multiple platform native code from the same source code
*High level of source compatibility between versions
* [http://crosskylix.untergrund.net/ CrossKylix] - a third-party toolkit which allows you to compile native Kylix/Linux applications from inside the Windows Delphi IDE, hence easily enabling dual-platform development and deployment
* [http://crossfpc.untergrund.net/ CrossFPC] - a sister project to CrossKylix, which enables you to cross-compile your Windows Delphi applications to multi-platform targets - supported by the [[Free Pascal]] compiler - without ever leaving the Delphi IDE
* Class helpers to bridge functionality available natively in the Delphi RTL, but not available in a new platform supported by Delphi
*The language's [[object orientation]] features only class- and interface-based [[Polymorphism in object-oriented programming|polymorphism]]
 
==Disadvantages=Frameworks===
*Limited cross-platform capability for Delphi itself. Compatibles provide more architecture/OS combinations
*Access to platform and third party libraries require header files to be translated to Pascal. This creates delays and introduces the possibilities of errors in translation.
*There are fewer published books on Delphi than on other popular programming languages such as C++ and C#
*A reluctance to break any code has lead to some convoluted language design choices, and [[orthogonality]] and predictability have suffered
 
Delphi offers two frameworks for visual application development, VCL and FireMonkey (FMX):
==Microsoft hirings==
* [[Visual Component Library]] (VCL) is the framework for developing pure Windows applications. VCL is a long-standing framework, included in the first release of Delphi and actively developed ever since then.
* [[FireMonkey]] (later abbreviated FMX), was released in 2011, as part of Delphi XE2, together with an additional set of built-in compilers for non-Windows platforms. FireMonkey is a cross-platform framework for Windows, macOS, iOS, Android and Linux (x64). The GUI parts of FireMonkey are largely based on Direct3D and OpenGL. FireMonkey is not compatible with VCL; they are two separate frameworks. FireMonkey applications do, however, allow easy sharing of non-visual code [[Unit (Software Development)|units]] with VCL applications, enabling a lot of code to be ported or shared easily between the platforms.
 
===Interoperability===
* [[Anders Hejlsberg]], the main architect of [[Delphi]] and [[Turbo Pascal]], was hired by [[Microsoft]] in 1996, where he has since led the design of both the [[Java programming language|Java]] dialect [[J++]] and [[C Sharp|C#]], the most popular language for [[Microsoft Windows|Windows']] [[.NET Framework|.NET]] platform. Chuck Jazdzewski, who was chief scientist and architect of Borland's Delphi technology, left Borland and joined Microsoft in 2004[http://www.eweek.com/article2/0,1895,1485307,00.asp]. [[Danny Thorpe]], the chief scientist at Borland Software Developer Tools Group, likewise left Borland and joined Google in 2005 only to later join in Microsoft In 2006. [http://blogs.msdn.com/dthorpe/archive/2006/04/14/576171.aspx].
 
Delphi and its [[C++]] counterpart, [[C++Builder]], are interoperable. They share many core components, notably the IDE, the VCL and FMX frameworks, and much of the [[runtime library]]. In addition, they can be used jointly in a project. For example, C++Builder 6 and later can combine source code from Delphi and C++ in one project, while packages compiled with C++Builder can be used from within Delphi. In 2007, the products were released jointly as RAD Studio, a shared host for Delphi and C++Builder, which can be purchased with either or both.
==Clones and alternatives==
Starting with Rio, there is also interoperability with Python.
 
=== Sample "Hello World" program ===
There are several [[Object Pascal]] compilers out there, but there are also products that try to clone the whole framework provided by Borland Delphi.
{{See also|Object Pascal#Delphi_and_Free_Pascal_version}}<syntaxhighlight lang="delphi">
program ObjectPascalExample;
 
type
Some of these can get Delphi code running in ways not possible with Delphi (such as supporting different operating systems, free distribution and educational use, and allowing examination of the compiler source) and allow for some vendor independence. These are generally used educationally and to get the server parts of Delphi apps running on non-mainstream operating systems; most had Linux support years before [[Kylix programming tool|Kylix]].
THelloWorld = class
procedure Put;
end;
 
procedure THelloWorld.Put;
*[http://www.bloodshed.net/devpascal.html Bloodshed Dev-Pascal] A very polished graphical 32-bit Windows editor (though not RAD) as a frontend for both [[GNU Pascal]] and [[Free Pascal]].
begin
*[[Lazarus (software)|Lazarus]] [http://lazarus.freepascal.org] is an effort to build a RAD on top of [[Free Pascal]]. The internal classes hierarchy can base itself on several [[Widget toolkit|graphical toolkits]]. The main toolkits are [[GTK+|GTK1]] and [[Windows API|Win32]], and GTK2 and Windows CE have already come a long way. [[Qt (toolkit)|Qt]] is also partially supported. Occasionally people want .NET and [[wxWidgets]], but an apparent lack of interest prevents the implementation of these toolkits.
Writeln('Hello, World!');
*[http://crossfpc.untergrund.net/ CrossFPC] - a free toolkit to integrate the [[Free Pascal]] compiler, targeting various OS and hardware platforms, into the Windows Delphi IDE. See more about it from [http://www.codecomments.com/Kylix/message541921.html this mailing list discussion].
end;
*[http://sibyl.netlabs.org OpenSibyl] is another effort to build a RAD on top of Free Pascal. However it is geared towards OS/2, and still in initial stages.
*[[Virtual Pascal]] is a x86 32-bit Turbo Pascal and Delphi compatible compiler mainly aimed at OS/2 and Windows, though it developed a DOS+Extender and an experimental Linux cross-compiler too. The compiler is stuck on the level of about Delphi V2, and the site hasn't changed significantly in two years, and development of Virtual Pascal has stopped.
 
var
== Products developed with Delphi ==
HelloWorld: THelloWorld; { this is an implicit pointer }
 
begin
There are many products developed with Delphi. The most well-known ones are (grouped by areas):
HelloWorld := THelloWorld.Create; { constructor returns a pointer to an object of type THelloWorld }
HelloWorld.Put;
HelloWorld.Free; { this line deallocates the THelloWorld object pointed to by HelloWorld }
end.
</syntaxhighlight>Note that the object construct is still available in Delphi.
 
==History==
* Borland products: Borland Delphi, Borland [[C++ Builder]], Borland [[JBuilder]] versions 1 & 2
{{Hatnote|See [[History of Delphi (software)]] for details on the progression of language and IDE development from 1995 to the present.}}
* Database management: [[MySQL]] Tools (Administrator, Query Browser, Migration Toolkit)
* Image viewers: [[FastStone Image Viewer]], [[FuturixImager]]
* Internet messaging: [[Skype]] (VoIP and IM), [[The Bat!]] (e-mail client), [[PopTray]] (e-mail check tool), [[FeedDemon]] (RSS/Atom feed viewer), [[XanaNews]] (newsgroup reader), [[Xnews]] (newsgroup reader)
* Music production: [[FL Studio]] (formerly FruityLoops)
* Software development: [[Dev-C++]] (IDE), [[Help & Manual]] (help system authoring), [[Inno Setup]] (installer engine)
* Web authoring: [[Macromedia HomeSite]] (HTML editor), [[TopStyle|TopStyle Pro]] (CSS editor), [[Macromedia Captivate]] (screencast)
* Web browsers (MSIE shells): [[Avant Browser]], [[Netcaptor]]
* Utilities: [[Spybot - Search & Destroy]] (anti-spyware), [[Total Commander]] (file manager), [[Copernic Desktop Search]], [[PowerArchiver]]
 
== TheUses namein schools ==
In 2016, Delphi was named the language of choice for teaching programming in [[South Africa]]n schools as a subject of information technology (IT).<ref>{{Cite web |author=Staff Writer |title=Embarcadero Delphi named developer language of choice for South African schools |url=https://mybroadband.co.za/news/software/157199-embarcadero-delphi-named-developer-language-of-choice-for-south-african-schools.html |date=2016-02-03 |access-date=2022-03-17 |language=en-US |archive-date=2022-03-31 |archive-url=https://web.archive.org/web/20220331204240/https://mybroadband.co.za/news/software/157199-embarcadero-delphi-named-developer-language-of-choice-for-south-african-schools.html |url-status=live }}</ref>
Delphi was originally a confidential research project at [[Borland]] which evolved into a product that was to be called AppBuilder.
 
==Roadmaps==
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; 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.
Embarcadero used to publish "roadmaps" describing their future development plans. The last one was published in November 2020.<ref>{{cite web|url=https://blogs.embarcadero.com/rad-studio-november-2020-roadmap-pm-commentary/|title=RAD Studio November 2020 Roadmap PM Commentary|date=17 November 2020 |publisher=blogs.embarcadero.com|access-date=2020-11-27|archive-date=2020-11-28|archive-url=https://web.archive.org/web/20201128221819/https://blogs.embarcadero.com/rad-studio-november-2020-roadmap-pm-commentary/|url-status=live}}</ref>{{Primary source inline|date=August 2025}} Version 10.5 referred to in the November 2020 roadmap was renamed 11.0.
Starting with Delphi 11, Embarcadero decided to no longer publish formal roadmaps. Instead, possible new features are now presented in a loose order through blog entries and online webinars. An important role has Marco Cantú (product manager) with his [https://blogs.embarcadero.com/author/marcocantuembarcadero-com/ blog].{{cn|date=August 2025}}
 
==Related software==
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..<ref>{{cite web | author=David Intersimone | title=Borland History: Why the name "Delphi?" |url=http://bdn.borland.com/article/20396| accessdate=2006-11-28}}</ref>
* Borland Enterprise Studio, a precursor to RAD Studio, is a software development suite that includes support for multiple languages. Borland Enterprise Studio for Windows supports Delphi.<ref>{{Cite web |url=http://www.borland.com/estudio/ |title=Borland Enterprise Studio |access-date=2002-02-05 |archive-url=https://web.archive.org/web/20020205084110/http://www.borland.com/estudio/ |archive-date=2002-02-05 |url-status=live}}</ref>
* [[Borland Kylix]]: Similar to Delphi, but for Linux, released in 2001. This was the first attempt to add Linux support to the Delphi product family.<ref>{{Cite web |url=https://edn.embarcadero.com/article/26771 |title=Kylix is here! |access-date=2020-09-05 |archive-date=2019-09-04 |archive-url=https://web.archive.org/web/20190904154032/http://edn.embarcadero.com/article/26771 |url-status=dead}}</ref> Kylix used the new CLX cross-platform framework (based on [[Qt (software)|Qt]]), instead of Delphi's VCL. Kylix was discontinued after version 3. Today Linux support is integrated into the main Delphi product and uses the FireMonkey cross-platform framework.
* [[InterBase]] is an embeddable SQL database that integrates natively to Delphi and C++Builder for client/server or embedded development. Its distinguishing features reduced administration requirements, commercial-grade data security, disaster recovery, and change synchronization. It is also accessible by all major languages and platforms in the market with database connection protocols like ODBC, ADO, ADO.NET and even with Java by JDBC/ODBC Bridge or Java type 4 connectors.
* [[JBuilder]] was a tool for Java development based on Eclipse since version JBuilder 2007.
* [[RadPHP]] (later replaced with HTML5 Builder) was an [[Integrated development environment|IDE]] for [[PHP]] that provided true RAD functionality. It has a form designer similar to that of Delphi or [[Visual Basic]], and an integrated debugger based on the [[Apache HTTP Server|Apache]] web server. It also includes a [[Visual Component Library|VCL]] library ported to PHP. Unlike other IDEs, it supports Web 2.0 features such as [[Ajax (programming)|Ajax]]. Delphi for PHP was announced on March 20, 2007, renamed in October 2010 to RadPHP, and is based on Qadram Q studio. Embarcadero acquired Qadram in January 2011.
* Delphi Prism (later renamed Embarcadero Prism) derived from the [[Oxygene (programming language)|Oxygene language]] (formerly named Chrome) from RemObjects. It ran in the Microsoft Visual Studio IDE rather than RAD Studio. It was licensed and rebranded by Embarcadero to replace Delphi.NET when that product was discontinued.
* [[Free Pascal]] is an open-source Pascal [[Cross-platform software|cross-platform]] [[cross-compiler]] that supports most of Delphi's Object Pascal code. Free Pascal also has its own language extensions, multiple compiler [language syntax] modes, and supports 18+ operating systems and 9+ processor architectures.<ref>{{cite web |url=http://www.freepascal.org/ |title=Free Pascal Homepage |publisher=freepascal.org |access-date=2016-04-27 |archive-date=1999-01-25 |archive-url=https://web.archive.org/web/19990125095436/http://www.freepascal.org/ |url-status=live}}</ref> [[Lazarus (IDE)|Lazarus]] is a cross-platform RAD IDE that uses the Free Pascal compiler.
 
===Notable third-party libraries===
==Documentation==
* [[FastCode]] – Enhanced [[runtime library|runtime libraries]] and memory manager.
* [[OpenWire (library)]] – Data flow, events, and state synchronization component library.
* [[Teechart]] – Charting library.
 
==References==
Delphi developer documentation from Borland:
{{Reflist |30em}}
 
==Further reading==
* [http://info.borland.com/techpubs/delphi/ Delphi Developer's Guide]
{{Refbegin}}
* Object Pascal Language Guide
* {{Cite book
**[http://info.borland.com/techpubs/delphi/delphi5/ Delphi 5 "Object Pascal Language Guide"]&nbsp;&nbsp;([ftp://ftp.borland.com/pub/delphi/techpubs/delphi5/oplg.zip PDF], [ftp://ftp.borland.com/pub/delphi/techpubs/delphi5/d5oplr.zip Windows Help])
|last=McConnell
**[http://community.borland.com/soapbox/techvoyage/article/1,1795,10280,00.html Object Pascal Style Guide]
|first=Steve
More from [http://info.borland.com/devsupport/delphi/downloads/ Delphi Developer Support] section ([ftp://ftpc.borland.com/pub/delphi/techpubs/ FTP archives]).
|author-link=Steve McConnell
|title=[[Code Complete]]
|year=1993
|publisher=Microsoft Press
|isbn=1-55615-484-4
}}
{{Refend}}
 
==ReferencesExternal links==
* {{Official website}}
<div class="references-small" style="-moz-column-count: 2; column-count: 2;">
<references/>
</div>
 
{{Pascal programming language family}}
== External links ==
{{Integrated development environments}}
{{wikibookspar|Programming|Delphi}}
{{GUI builders}}
 
[[Category:CodeGear software]]
* [http://www.borland.com/delphi/ Borland Delphi] official site
[[Category:Delphi (programming language)| ]]
* [http://delphi.icm.edu.pl/ Delphi Super Page]
* [http://www.drbob42.com/ Dr. Bob's Delphi, C++Builder and JBuilder Programming Clinic]
* [http://www.delphi-jedi.org/ Project JEDI]
* [http://www.torry.net/ Torry's Delphi Pages]
 
[[Category:Pascal programming language family]]
[[Category:Imperative programming languages]]
[[Category:Procedural programming languages]]
[[Category:Algol programming language family]]
[[Category:.NET programming languages]]
[[Category:Object-oriented programming languages]]
[[Category:Borland]]
[[Category:Integrated development environments]]
[[Category:BorlandPascal software(programming language)]]
[[Category:Pascal (programming language) compilers]]
[[Category:Debuggers|DelphiPascal (programming language) software]]
[[Category:User interface builders]]
 
<!-- Hidden categories below -->
[[ar:دلفي]]
[[Category:Articles with example Pascal code]]
[[bg:Delphi]]
[[da:Delphi]]
[[de:Borland Delphi]]
[[es:Delphi]]
[[eo:Objektema Paskalo]]
[[fr:Delphi (langage)]]
[[ko:델파이 프로그래밍 언어]]
[[id:Borland Delphi]]
[[it:Delphi]]
[[nl:Delphi (ontwikkelomgeving)]]
[[ja:Delphi]]
[[ro:Borland Delphi]]
[[ru:Object Pascal]]
[[sk:Delphi (programovací jazyk)]]
[[sl:Delphi (programski jezik)]]
[[fi:Delphi]]
[[sv:Delphi (programspråk)]]
[[ta:போர்லாண்ட் டெல்பி]]
[[tr:Delphi programlama dili]]
[[zh:Delphi]]