Friday, August 1, 2008

Introducing Delphi


My earliest exposure to the world of programming came accidentally while I was toying with what I assumed was a desktop publishing package like Pagemaker. I knew a little about programming which was limited to drawing Mandelbrot sets in GWBASIC or copying files in DOS.Before I could realize that what I was working on was not a graphic management tool but a programming platform, I had already compiled at least 1 small program by just dropping components on form. When I look back in time now, I am amazed at what even the first version of Delphi allowed the programmer to do without writing tedious lines of code and in a time when even Microsoft Visual Basic was an infant.



Borland Delphi is a component-based RAD tool and an object-oriented programming language which was earlier known as Object Pascal, its Pascal base makes it a high-level and a strongly typed language that compiles code into native x8086 code unlike most popular languages.what this means is that, with Delphi, it is possible to create a simple program that can be run on any Windows machine without requiring the user to install any "virtual machine", "run-time engine","framework" or even dlls. The robustness in the IDE is added by the VCL (Visual Class Library), the object-oriented class library consisting of a huge number of visual and non-visual classes that can be used by the developers to create objects descending from the superclass TObject. Apart from the VCL there is a large number of third-party libraries available for use. For more low level programming Delphi allows use of inline Assembly code and compiles them into native executable code.

Delphi is also one of the best platforms for database development. Delphi's Database Connection and  Data-Aware components make creation of client application in a client/server application, a child's play. In fact, the brand name itself suggests the role database development has played in evolution of the IDE. Oracle, the most popular database of the time, had been named such after the famous Oracles of ancient Greece which were supposed to foretell the visitor's future. The most famous of the Grecian Oracles was the Oracle of Apollo at Delphi. Since database connectivity was one of the primary goals of the RAD that the guys at Borland had been working on, the term they decided on was "Delphi", as it is said, "If you want to talk to [the] Oracle, go to Delphi". However, Delphi is much more than a tool for designing a database front end, it can be used in almost all scenarios. Every now and then one comes across rumors which would have us believe that "Delphi is dead", but if we were to take these rumors as the truth, Delphi should have just vanished almost 10 years back. The folks at Borland (and now CodeGear) deserve a pat on their back for not only coming up with a great development platform but also for keeping it alive and kicking. Unlike Microsoft, which abandoned Visual Basic in favor of dot.NET, Borland continued to support Delphi by incorporating the latest technologies in the IDE instead of launching a completely different product. The recent versions of Delphi have inbuilt support for popular programming languages like C++ and C#. Delphi for .NET feature added in 2005 version was successful and the later versions contain an entire personality called Delphi for .NET. CodeGear has also released a product called Delphi for PHP which aims to combine the ease and power of Delphi with the flexibility of PHP providing the developer with a real powerful tool for web development. Another major and innovative functionality that Delphi now boasts of is the Enterprise Core Object technology. ECO is a modeling tool that allows developers to create class diagrams and define relationships between classes visually. It is one of the first RAD tools to integrate a UML editor and functionality for developers.

If I go on about the advantages Delphi provides over other RAD tools I wouldn't know where to end :p But if Delphi were really that cool how come it is so less popular ? This is a question that even I would want to pose to the marketing guys in Borland/ Codegear. It widely accepted among Delphi enthusiasts that Borland has never been able to market its products well , in fact there are instances when one wonders if these guys really don't want their product to be sold. However, no matter what its makers and competitors do there always is a group of Delphi lovers who would remain loyal to it forever. For nearly 2 years I have been using other technologies and I am pretty pressed for time too, but even that doesn't stop me from going back to Delphi every once in a while. I finished installing RAD Studio 2007 yesterday and have just about started exploring it. More on this later....

No comments: