Fog Creek Software
Discussion Board




Delphi vs. Visual studio

hello all
this is my 1st post here.

I was a delphi prgrammer but a year back switched to c#. Now sometime i thought delphi was better (more RAD) than studio .NET & sometime i thought the opposite.
I'm more comfortable with the c# language rather than pascal but delphi is the super RAD.

so you guys pls give me some more ideas in comparison of these 2 really grt thing.

(please visit  http://www.aiub.edu  This is 1 of the first successful project of .NET in my country)

thank you.
- sudipta

sudipta
Tuesday, October 08, 2002

The page cannot be displayed...

Phil
Tuesday, October 08, 2002

Try the subtly different http://www.aiub.edu/ instead!

Phil Rodgers
Tuesday, October 08, 2002

Not an easy thing to answer... I have great time using both vs.net and Delphi.
But what comes in mind in the poor VB6 and (to less extent) VC6 users used had to put up with. While we where using Delphi we got so much more for our dollar that it is so sad to think about all those VB6/VC6 users that spend alot of time and efforts living in a broken dream.
I suspect that in order to remain competitive we about to see new and improve delphi each year from boralnd , so people would still think it is worth thier money over the "safer" approch of using VS.NET .

Yoni Stoffman
Tuesday, October 08, 2002

One of the things that many people over look when talking about what platform to develop on is community support , as a VB programmer that switched to Delphi I think the community does a excellent  job.  TeamB help out with the newsgroups and more, Delphi developers really are passionate about the product. If you need help people are on hand. Yes I could be developing my project in VB, VB.net, C# , C++ (both Builder and MS)  but if I have the choice I will chose Delphi every time.

Chris Thompson
Tuesday, October 08, 2002

I have used only Visual Studio so I really cannot compare it with Delphi. But from what I heard there is going to be a .net version of both delphi and Borland C++ Builder.

Cheers
Kannan

Kannan Kalyanaraman
Tuesday, October 08, 2002

This article:

http://news.com.com/2100-1001-954958.html

is very impressive. It seems that Borland is trying to stay between the heated "J2EE x .Net" discussion, bringing a solution that could attract developers from both worlds.

Don´t know how much of this will come to reality, but after seeing Kylix, I believe there is no limit for Borland´s development team.

Chester
Tuesday, October 08, 2002

I have been using Borland's products since Turbo Pascal days.
I had a new project do to just when Borland Builder came out so I used it for the project. I was able to develop after a day or 2 of playing around with it. Then I gave Delphi a try and I was able to use it after installing it.
I switched jobs and was forced to use Visual Studio (6.0).
Hated it.
For one I had to buy a book to figure out how to use it. VB part was acceptable but MSC++ was not.
Both product were OK after learning them but Borland's products seem much more intuitive to use.
If given a choice I would pick Borland every time.

So on scale of 1 to 10

MSVS 5
Borland 8

Andrew Rokicki
Tuesday, October 08, 2002

Actually there are a number of reasons for going one way or another. I have used Delphi since version 1, but I also use Visual Studio for some projects. Here are some of my observations:

-- Visual Studio .NET requires a huge distribution, if the target machine doesn't have .NET pre-installed. Delphi can compile your code into complete stand-alone applications, often less than a MB.

-- Writing your own Delphi components or customizing the ones that come with Delphi is easy. The Professional (and up) versions of Delphi come with [almost] complete source code to the runtime library. No better way than to learn from the source.

-- Delphi comes with a lot of components right out of the box.

-- Delphi has a very active community of developers who distribute useful components, including source code. So you have a lot of code to look at and learn from. Look at the Delphi Super Page http://delphi.icm.edu.pl/ and Torry's Delphi pages http://www.torry.net/index.htm to get an idea. (My own components are available at http://www.felinity.com/f_lib/index.html ).

-- Delphi code is portable to Linux, but it is not as easy as you might think, unless you are starting from scratch with the Delphi cross platform components.

So far, mostly in favor of Delphi, but...

-- Delphi is showing some growing pains. I haven't looked at the latest (version 7) yet, but I was not particularly impressed with D6. All previous upgrades had been huge improvements. D6 was the most expensive upgrade and showed the least improvement over previous versions. One of the key brains behind Delphi (Anders Heijlsberg) defected to Microsoft some time ago and I think it shows (in Delphi).

-- Borland is pushing their own Muddleware solutions with Delphi, which I am not particularly impressed with.  C# has much better XML integration.

-- If you need to access any third party C libraries, then you will usually have to translate the header files into Delphi yourself. (Note: this does not apply if you are using ActiveX components. Delphi does a good job of importing type libraries automatically and writing COM style applications is pretty easy.)

So which would I choose? When Delphi first came out, there was no contest. Delphi was the more productive environment and its runtime performance was better by an order of magnitude. Since then, the gap has narrowed. I think I am still more produtive in Delphi, simply because I have a lot of code to fall back on. But if you have the luxury of starting from scratch, you may find .NET more attractive. It carries very little legacy baggage.

Some questions you might ask: What does your team (or client) need? How much more productive do you have to be, to make up for the hit you take learning a new language and environment? If you need a large team, can you find enough people who know Delphi? And finally, can Borland keep up with Microsoft and the technology du jour?

The interesting thing is that you may not have to choose between .NET and Delphi. Borland is working on a .NET compiler, and a preview release is part of D7.

Karsten Schneider
Tuesday, October 08, 2002

My take on this:

I first got "serious" about windows programming on a Master on C++ programming for windows where we used Borland Builder (3 IIRC) and MSVC (5?) (it was in 97/98). At first we did a little API programming, and then we went to Builder.... I was spoiled since! ;) The months we spent on MSVC were "painfull" compared to Builder. Since then I was sold on the RAD approach, the Borland way. Of course, the "Visual" in MSVC has been quite a joke, at least utill fairly recently.

Now, when I got my hands on VS .Net, I thought it was Buidler redux! Of course, the fact that the language (C#) and the IDE are the work of Anders Heijlsberg shows! After all, he was the one behind Delphi! ;)
So, I see .NET as starting witha very nice (IMO) base library and IDE, a clean language... and a good hand at the helm. Remember the differences between Delphi 1 to 5? and Builder 3 - 6? I guess that, if they don't try to "overload" the product with everything and the kitchen sink, or to twist it to further MS's goals (I don't see very clearly where "making the filesystem a DB" is going to help... execpt that you'll have to pay for MS SQL Server just to read your data! ;)

My few cents...

Javier Jarava
Tuesday, October 08, 2002

I guess, like most programming questions I've run across, the answer is "it depends." VS.NET, right now, is a server solution because only servers and developers have the framework installed--and not that many servers.

If you're writing desktop applications of any type, you're going to be writing in anything except .NET. If you want to KEEP writing desktop apps, or move into server applications, the .NET framework is a good thing to study.

Just don't let those Delphi skills fade away. They should be even more useful when we're all writing to the same application framework. And I still haven't answered the question . . .

I think, all else being equal,  the Delphi development environment is the more productive. It might just be because I've been using Borland IDEs forever.

Earl Dunovant
Tuesday, October 08, 2002

so the bottomline is -

for web apps .NET is the way to go.
but for desktop apps still nothing can beat delphi.
i think u'll agree with me :).


thank u all for ur nice posts.


-sudipta

sudipta
Wednesday, October 09, 2002

Actually, Delphi is an excellent choice for web apps. I intend to continue working with it. I'm studying C# in order to become familiar with the .NET framework, which I think is inevitable.

If you have Delphi Studio 7, though, you not only get its command-line .NET compiler, you get the opportunity to download a tool that integrates it into the IDE. It's experimental, but I'm going to give it a shot. If I can learn the framework (which is critical--much like learning the Win32 API is critical regardless of what specific tool you use to program is) without leaving Object Pascal behind even for a moment, that would be my preference.

Earl Dunovant
Wednesday, October 09, 2002

This seems to be the Windows as we know it vs the .Net as MS envisages it debate.

Language is no longer going to be an issue with .Net. The VS IDE is very functional and C# is in many ways a Delphi++.

Even, your customers (and the world at large at the moment) does not care or want to know about VS or Delphi or Interbase or MS SQL. They will probably not even care about the huge .Net run-time as long as everything works and the price is right. This I think is the real issue for customers.

At the moment with Delphi we can create a web or client server application (say Open Source Interbase or PostGres)and deploy it relatively freely. Your customer will probably need to have workstation Windows licences (and you could save more by making the database server a Linux box).

.Net  well and truely ties you into a MS environment. Tried connecting to Interbase from .Net? SQL Server is well and truely supported - but there is a client cost on every workstation. ADO.Net Web apps - will they run on Apache? No. More server licence costs to install 200 server (or what-have-you) to have IIS running.

The cost of the .Net run-time environment is the real cost to customers of us (developers) choosing VS, C# and .Net.

Borland needs to think hard of a .Net alternative that allows an equivalent of the the .Net environment to run on Linux/Apache/Interbase.

Richard King
Saturday, October 12, 2002

C# is C++ stripped of really annoying pitfalls, and spruced up with the best idea from Delphi ;-)

Seriously, you can write great apps in both C# and Delphi - yet, C# currently locks you (and your customers) to .NET, while with Delphi, you can pick and choose between straight Win32 API, .NET, or even Linux (with Kylix).

Delphi gives you more choice and freedom, plus I really prefer the Pascal language and the Pascal school of thought: catch bugs as early as possible in the process, and don't give programmer's too much freedom. If a programmer wants to do crazy stuff, he should be *knowingly* disable some safe guards - better than not knowing what he's doing and running into runtime errors and exceptions.

Marc Scheuner
Wednesday, October 16, 2002

*  Recent Topics

*  Fog Creek Home