Delphi Programming: Build Compact Applications
Delphi, known officially as Embarcadero Delphi, is a proprietary programming language and software development kit (SDK) from Embarcadero Technologies.
It is primarily used to build Windows applications but it can also be used to build desktop, mobile, web, and console applications to run on OS X, iOS, and Android operating systems.
Delphi is distributed along with C++Builder as part of a professional integrated development environment (IDE) called RAD Studio.
RAD Studio packages up Delphi and a variety of other software development tools including a code editor with built-in code completion and error checking, an integrated debugger, support for various types of source control, and a lot more.
What is Delphi?
Delphi is a strongly-typed high-level programming language based on Object Pascal that supports object-oriented programming. It can also incorporate code written in assembly and other low-level languages, giving Delphi indirect access to machine hardware.
Its primary strength is that it compiles incredibly quickly, meaning that Delphi applications with a relatively large codebase can be compiled and run on a machine with limited resources.
Development of Delphi over time has always emphasized backward compatibility. However, full backward compatibility has not been maintained due to the addition of compatibility-breaking features in newer versions of the language.
History of Delphi
Delphi was developed by Borland Software Corporation as a successor to Turbo Pascal. Ander Hejlsberg, the original developer of Turbo Pascal, served as the chief architect for the development of Delphi which was initially released in 1995 as a tool for building Windows applications.
Borland developed Delphi through the year 2006, at which point the company decided to sell Delphi and a number of other software products in order to refocus the new direction of the company.
A suitable buyer wasn't located quickly enough and, rather than sell Delphi outright, Borland decided to roll Delphi and a few other products into a newly-formed subsidiary called CodeGear.
In 2008, CodeGear was purchased by Embarcadero Technologies who themselves were later acquired by Idera in 2015. However, Idera decided to keep the Embarcadero brand around and Embarcadero Delphi is still actively supported and developed.
The name Delphi has a unique origin. The name was coined by Borland developer Danny Thorpe. Initially, Delphi was just supposed to be a temporary code name for the project that would replace Turbo Pascal.
The idea for the name came from the Greek myth of Pythia, who was commonly known as the Oracle of Delphi.
Since the project was expected to be used to build many applications that interfaced with the Oracle database, it only made sense to name the project Delphi. After all, "If you want to talk to [the] Oracle, go to Delphi."
While the name Delphi was clever and original, Borland management was keen to use something a bit more descriptive as the official name and settled on Borland AppBuilder.
However, Novel AppBuilder was released just before Borland AppBuilder and Borland was forced to come with a new name at the last moment, and the Delphi codename was elevated to official name status.
Delphi is under very active development. New versions of the IDE are released approximately every six months and support for a new platform is typically added with every other release.
Embarcadero publishes a product roadmap update every six months with a surprisingly detailed explanation of the planned feature additions to be included in future versions of the software.
If you want to learn Delphi there are many tutorials and texts that can help you accomplish that. We've identified five of the best free online resources and five of the best-reviewed books to get you started.
Free Online Videos and Tutorials
Embarcadero Technologies Community website produces a blog that publishes product news as well as tutorials for all Embarcadero products.
In particular, look for articles by Pawel Glowacki, which tend to focus on Delphi programming, and articles by Marco Cantu, who typically writes about rapid application development and also publishes a regular roundup of noteworthy blog posts from throughout the Delphi and Embarcadero world.
Delphi Basics links to a variety of tutorials designed for Delphi beginners as well as a useful run time library reference. The design of the site is a bit dated, but the information it contains is still solid and useful.
LearnDelphi.tv, produced by Alister Christie, offers more than one hundred free instructional videos about Delphi. The videos are largely stand-alone in nature and do not build on each other, but they do provide a wealth of easy-to-digest useful information.
LearnDelphi.net was a website that offered a series of free videos for Delphi students. The website is no longer available but all of the videos are still available on YouTube organized into two playlists: Learn Delphi 2010 — The Basics and Learn Delphi 7 — Getting Started.
A Beginner's Guide to Delphi Programming is a free online course designed for beginning programmers and organized into 18 chapters.
It's published on the About.com platform at delphi.about.com, where you'll find many additional blog posts and tutorials to help you along your Delphi education journey.
There are many Delphi books. However, these five are relatively recent publications that have earned solid reviews from the Delphi programming community:
Coding in Delphi (2014) by Nick Hodges is all about learning to write great Delphi code. It doesn't spend a lot of time on IDE issues, but instead focuses squarely on writing code.
More Coding in Delphi (2015) by Nick Hodges builds on the concepts presented in Coding in Delphi to help developers get the most out of their Delphi code.
Delphi Cookbook, 2nd Edition (2016) by Daniele Teti is a text oriented toward Delphi programmers with a bit of experience under their belts who want practical information about building cross-platform applications quickly.
MVVM in Delphi (2016) by John Kouraklis is a text for experienced Delphi developers who want to build modern applications for Windows systems based on the Model View ViewModel paradigm.
Object Pascal Handbook (2015) by Marco Cantu is a handbook to the Delphi programming language written by a recognized Delphi expert.
Delphi is a high-level programming language distributed by Embarcadero Technologies as part of RAD Studio, an IDE for professional developers. It is primarily used to build applications for Windows systems but can be used to build applications for a variety of operating systems.
Delphi is a mature product, having been around for more than 20 years, yet it is still being actively developed with new features being added to the language regularly.
Further Reading and Resources
We have more guides, tutorials, and infographics related to coding and development:
C++ Developer Resources: this article will get you going with one of the most popular object-oriented programming languages.
F# Programming: learn about one of the newer .NET programming languages.
The History of Search Engines: search engines have come a long way over the last two decades. Find out all about their long history.
What Code Should You Learn?
Confused about what programming language you should learn to code in? Check out our infographic, What Code Should You Learn?
It not only discusses different aspects of the languages, it answers important questions such as, "How much money will I make programming Java for a living?"