Visual Studio Development Bookmark and Share   
 index > Installing and Registering Visual Studio Express Editions > Visual Basic vs Delphi
 

Visual Basic vs Delphi

what are the main differences between the two - and more specifically which one is better/more popular?   

chris house  Tuesday, May 17, 2005 1:45 PM
As far as the differences--

- Delphi is "lower-level." It compiles to native code, allows you to easily use native Win32 APIs, and in some cases will be faster.

- VB is designed to be an easy-to-use language for getting simple apps to work ASAP. It isn't and never has been very good at complex apps or anything even remotely low-level. (Try implementing MD5 in VB, or try supporting a binary network protocol.). VB is a "Turning-complete" language, so it can be done, but what a pain. That said, if you are asking this question, you are probably not going to be doing anything like this.

- VB is more popular by far. I have heard (though not from necessarily reliable sources) that VB6 was the most popular development language for Windows business applications by a huge longshot. Now that VB.net helps to alleviate some of VB6's terrible problems (mostly performance related), it will likely become even more popular.

- Delphi doesn't require a huge framework to be installed for applications to work. When you distribute a Delphi application, you can assume it will work on the platform. With VB, if the user doesn't have the .NET framework installed (and not just any .NET framework--but a version as new or newer than your development platform), then the app simply won't work until it is installed.

- Ironically, VB may be more cross-platform, since VB compiles down to Microsoft's java-ripoff language "CLR," which can be run (with exceptions) on non-Windows platforms using Mono. There's a Linux version of Delphi called Kylix (or something like that), but you can't just copy a project straight over and expect it to work.

- Personally, I am not exactly a big fan of the way the VB syntax works--it tends to encourage very bad coding style that won't do when using more sophisticated languages like C, but I particularly can't stand Pascal, so I consider VB the lesser of two evils. This is purely a personal preference though. As an earlier poster stated, he really likes how Pascal works. Many people do.

It is probably easier to compare C# or even C++ to Delphi. Delphi is probably better for making large, complex apps, but .NET languages are more popular and are often easier to use than lower-level languages.
If you are a beginning programmer, I would recommend that you use something like C# or Java more than Delphi, but I'd use Delphi over VB.
If you don't care about becoming a good programmer and just want to get some applications up and running, VB is definitely the way to go.
Finally, if you are interested in knowing how things work internally, try C, then assembler. Knowledge in both of those is all but required for being a top programmer in any language (C because most OSes and low-level APIs are written in it, assembler because, ultimately, ALL software is written in it).

Hope this vague post helps. Good luck!

Sivar  Wednesday, May 18, 2005 8:49 AM
Hi,


I think this forum is a little bit "biased" if your gonna ask that question here. (This is a Microsoft Forum!)Big Smile

Well, it depends, if your referring to VB 6 vs. Delphi then I would have to go to Delphi coz (IMO) I'm an ex-pascal programmer (1996) Big Smile and I really love the language structure of Pascal. But if I'm to choose over VB.Net adn Delphi, then I would wholeheartedly choose VB.Net coz its more structured right now than delphi... And plus, its created by microsoft! (the creator of the .net framework and windows on which your application would run)Big Smile

Note: All of this is just based on my own opinion... so just chill-out Big Smile

cheers,


Paul June A. Domag
Paul Domag  Tuesday, May 17, 2005 4:15 PM
I'd say Visual Basic.
Also you must note that the creator of delphi himself is now with Microsoft and is the creator of the C# programming language.

Regards,
Vikram
Vikram  Tuesday, May 17, 2005 6:40 PM
As far as the differences--

- Delphi is "lower-level." It compiles to native code, allows you to easily use native Win32 APIs, and in some cases will be faster.

- VB is designed to be an easy-to-use language for getting simple apps to work ASAP. It isn't and never has been very good at complex apps or anything even remotely low-level. (Try implementing MD5 in VB, or try supporting a binary network protocol.). VB is a "Turning-complete" language, so it can be done, but what a pain. That said, if you are asking this question, you are probably not going to be doing anything like this.

- VB is more popular by far. I have heard (though not from necessarily reliable sources) that VB6 was the most popular development language for Windows business applications by a huge longshot. Now that VB.net helps to alleviate some of VB6's terrible problems (mostly performance related), it will likely become even more popular.

- Delphi doesn't require a huge framework to be installed for applications to work. When you distribute a Delphi application, you can assume it will work on the platform. With VB, if the user doesn't have the .NET framework installed (and not just any .NET framework--but a version as new or newer than your development platform), then the app simply won't work until it is installed.

- Ironically, VB may be more cross-platform, since VB compiles down to Microsoft's java-ripoff language "CLR," which can be run (with exceptions) on non-Windows platforms using Mono. There's a Linux version of Delphi called Kylix (or something like that), but you can't just copy a project straight over and expect it to work.

- Personally, I am not exactly a big fan of the way the VB syntax works--it tends to encourage very bad coding style that won't do when using more sophisticated languages like C, but I particularly can't stand Pascal, so I consider VB the lesser of two evils. This is purely a personal preference though. As an earlier poster stated, he really likes how Pascal works. Many people do.

It is probably easier to compare C# or even C++ to Delphi. Delphi is probably better for making large, complex apps, but .NET languages are more popular and are often easier to use than lower-level languages.
If you are a beginning programmer, I would recommend that you use something like C# or Java more than Delphi, but I'd use Delphi over VB.
If you don't care about becoming a good programmer and just want to get some applications up and running, VB is definitely the way to go.
Finally, if you are interested in knowing how things work internally, try C, then assembler. Knowledge in both of those is all but required for being a top programmer in any language (C because most OSes and low-level APIs are written in it, assembler because, ultimately, ALL software is written in it).

Hope this vague post helps. Good luck!

Sivar  Wednesday, May 18, 2005 8:49 AM
Also, I would just like to add that Delphi now has a version for .NET.
David M. Kean  Wednesday, May 18, 2005 11:50 AM
Two completely different questions.  To answer the second question first, there is no doubt that VB has been, is, and will continue to be more widely used than Delphi.  I used to write a lot of Delphi/Object Pascal database systems, just because it was very elegant and reliable and I loved it; but over the last few years, Delphi has lost a lot of its popularity, not that it was ever one tenth as popular as VB.  During that same time I switched those kinds of projects over to VB just because of the vastly greater market for those development skills.  (And by the way, I have always used C++ also, for certain projects.)  This is the situation in the USA.  In Europe, Delphi gets a much better market share, for some reason unknown to me; but I think Delphi is less commonly used even outside the USA.

Now, as to the first question, that depends entirely on the purpose to which you're putting Delphi or VB.  If you're going to write traditional Win32 type applications, and you want the greatest runtime speed and reliability, then Delphi is probably somewhat better technically than VB6 for that purpose -- assuming you really don't care that ninety-five percent of hiring development shops in the USA would choose VB over Delphi, and a VB programmer over a Delphi programmer!  But for .NET programming, I would definitely go with VB if forced to choose between those two development products.  There is a Delphi .NET development product, and it's probably competent, but I think the nature of the relationship between Microsoft and .NET makes any choice outside Visual Studio a bit questionable in a strategic sense.

Steven Randolph  Wednesday, May 18, 2005 8:00 PM
Back in 80s I had to take a basic class - didn't know what the heck it was. In fact, the only time my program ran error-free was when I included a ' at every line.

Then one day I realize that Basic was just algebra for the PC and that was when I cracked it. Borland's Pascal was far better and easier to use. But then came Visual Basic for DOS, then Windows - it was apparent that was the way to go.

But I prefer Assembler any day over C. While it's true that with assembler you had to write a lot of code, you got intimate with the CPU and that made it easy. But as I understand it, you can't buy Assembler anymore... MASM or TASM?

But the great mystery to all this is... why is one language faster than the other?
In the end, they are all machine language. It seems to me the problem lies in the
compiler. I would think by now compilers would be optimized for efficiency.
zdrae  Friday, December 02, 2005 3:05 PM
Which is better, apples or bananas?

Which is better... Ford or Chevy?

They each have their own strengths and weaknesses.  You have to decide which you want.

As for the comments about VB.Net being less of a language than C#.  I find that juvenile.  The CLR makes both languages nearly identical.  The rest is just syntax

http://geek-dev.com/107/csharp-vs-vbnet-its-just-syntax
edburdo  Friday, December 02, 2005 6:56 PM
Ya man , that is true


I was a VB Programmer , and i loved the language because it was easyyyyy , and very simple .

But , i moved to Delphi 7 , because i saw alot of powerful programes , programmed by Delphi , like Skype

Here you are , some of Delphi advantages :

1- Delphi has alot of powerful tools
2- Delphi has a very powerful Help System ( And it doesn't take alot of my hrd space too )
3- Delphi Apps can run on any Windows Version , not need any frameworks
4- Delphi is fast
5- Delphi has a 1% dangerous errors
6- Delphi has alot of DeBugging tools
7- Delphi can work with ActiveX , just like VB
8- Delphi name was " VB Killer " !
9- Delphi has 50% of VB.NET advantages , and the main Delphi tools have alot of Proprties
10- Delphi can work with Assembly , XML ...

What you waiting for ?
Download delphi right now

at the end ... Delphi ------ If you are a beginner , then go to VB.NET 2005 OR C#.NET
Dev Ala2 VB  Sunday, April 27, 2008 7:31 PM
your is spelled "you're". Difficult to take your comments seriously if you can't spell basic English
rocker99  Wednesday, September 16, 2009 1:20 PM

You can use google to search for other answers

Custom Search

More Threads

• Registration Key Does Not Work
• possible to use MSDE in visual basic express?
• Extending the asp.net web applications starter Kits using c#
• Create User Problem?
• How to start a SQL Server Project with express editions?
• ASP.NET AJAX Enabled Web Site Application
• Strange behaviour when accessing Excel VBA after installing VB 2005 Express edition
• Cant create a new project in MS Visual C++ express edition
• System.Runtime.Serialization.SerializationException
• VS on Itanium