-
Why people prefer VB.NET or C# instead of Delphi?
I have read a lot and still can't understand why people prefer VB.NET or C# instead of Delphi? And why Delphi is losing popularity?
1) Delphi is easy to understand (not like C++ or ASM).
2) Because it is easy to understand, you can reduce coding time and build applications faster (not like C++ or ASM).
3) Delphi has less limitations than VB.NET or C#.
4) Delphi is not .NET based.
5) Applications written in Delphi runs faster than VB.NET or C# applications.
6) It is much harder to decompil Delphi applications, not like VB.NET or C# applications.
At the moment I think that Delphi is something between C# and C++ or maybe I'm totally wrong?
Delphi isn't Microsoft product, is it the case why people prefer VB.NET or C# instead of Delphi?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Delphi has MASSIVELY less exposure than any .NET language. That, alone, might be the cause of the choice. There are plenty of Microsoft shops out there, and TONS of .NET jobs out there, but how many Delphi shops are there, and how many Delphi jobs?
Throughout history, especially tech history, it has not been the case that the best competitor always won, so you need look no farther than that. However, I would address your points like this:
#1) Delphi is easier to understand than ASM? I should bloody well hope so. There's a reason that ASM is not a very popular language for RAD. The same could be said, to a lesser extent, about C++. Both of those languages are all about speed and not so much about ease of use. Delphi was never intended to be a head to head competitor to either.
#2) Again, so what. Why would you compare development time to either C++ or ASM. If you are writing in either of those languages, development time is not a driving interest. You are generally after the absolute fastest possible speed....or you are writing low level device drivers.
#3) Like what? Less limitations? How about fewer opportunities to get paid for your efforts? That seems like the biggest limitation driving most of this, but I'd be interested to hear what other limitations you see that .NET languages have that Delphi doesn't have, other than the next three points you list.
#4) How is that a benefit? Delphi isn't pasta based, either, but that just means that I don't intend to try it with spaghetti sauce and cheese.
#5) Can this be compared accurately, or is it just marketing hype? Has anybody ever written a well-coded app in both Delphi and one of those .NET languages? In the end, all languages end up as machine code. I'd be more than a bit surprised if you could make a blanket statement that one high-level language created better machine code than another high-level language, so where does this point even come from?
#6) That's not a concern for 99% of people writing in .NET languages. Heck, it isn't even a concern for 99% of people writing in C++ or ASM. Most people write for internal apps (which have little concern for decompilation), hobbies (which have little concern for anything), trivial (it could be stolen, but who would bother), or other (such as me, where everything I write is technically public domain, so don't bother decompiling, just ask for the source code).
Most people want to put food on the table, and aren't particularly partisan about the language they use. Quite often, it is the employer who tells them which language they will be using, and they have no particular reason to complain. Look at the fact that C# developers, on average, earn more than VB.NET developers. Considering that the two languages create the same IL, and the languages have almost entirely converged, by now, there is no rational reason for this disparity, yet it persists, and because it persists, there will be an emphasis on C# simply because you can make more cash that way.
Another point you might consider is: What is the cost for a Delphi development environment. Both C# and VB have pretty complete free versions available, so the cost of learning, trial, and even real use, can be $0. What is it for Delphi?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
- Delphi's compiler generate Native Code that's mean more speed no JIT (just-in-time compilation).
- VB.NET and C# depends greatly on .NET framework, anything that is not found in the .NET framework will be difficult to implement. Delphi doesn't require a huge framework to be installed for applications to work. Your compiled result is your application.
- Delphi binds its RTLibraries (very light ones) directly to WinAPI (which essentially does .Net as well but on one more additional-managed layer).
- More power with semi-manual memory management (which in many cases is a plus, where on .Net side GC (garbage collector) does not allow you enough freedom or flexibility, apart being non-deterministic in lot of situations...).
- In C#, all the 3rd party components have to be included and some even have to be registered in the GAC (That on its own is a problem).
- In .NET for example, you just never know when the GC (garbage collector) will trigger or if a framework update will break your code/security causing your application to no longer work.
P.S. Not everything is about the money.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Delphi hasn't exactly had the best of histories... changing ownership several times... there was more than once when it's future was in doubt. And that's probably what did it in. The other aspect about it, is what shaggy mentions... cost of entry... I'd love to get into Delphi - I cut my teeth on Pascal, it's predecessor - but I don't have the money to plunk down on an IDE just to play with it.
-tg
edit - ps - sometimes yes, it is all about the money....
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Well, I'm 16 Years old and have been programming in delphi 7(last unmanaged version ?) at school and vb.net at home, so I think I'm a good person to compare them.
- First of all, the .net standard library dwarfs anything delphi can muster
- Declaring all the variables at the top of a procedure is not logical, and makes code harder to read.
- The IDE is ****
- Debugging is a pain I.E. Very vague error messages. No code highlighting or indentation. Exceptions are also not very informative.
- The only thing I like about delphi is it's windows(module/class) because it contains almost all windows API declarations.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
BlindSniper
Well, I'm 16 Years old and have been programming in delphi 7(last unmanaged version ?) at school and vb.net at home, so I think I'm a good person to compare them.
- First of all, the .net standard library dwarfs anything delphi can muster
- Declaring all the variables at the top of a procedure is not logical, and makes code harder to read.
- The IDE is ****
- Debugging is a pain I.E. Very vague error messages. No code highlighting or indentation. Exceptions are also not very informative.
- The only thing I like about delphi is it's windows(module/class) because it contains almost all windows API declarations.
But what about Delphi XE2 ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Must be nice to have a job that pays well enough that you can afford to play around with something like that... I looked at the price of it... geezes! It's no wonder Delphi can't gain any traction... it's only for the big boys...
-tg
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
techgnome
Must be nice to have a job that pays well enough that you can afford to play around with something like that... I looked at the price of it... geezes! It's no wonder Delphi can't gain any traction... it's only for the big boys...
-tg
Yes, I agree, looking from financial side it is disadvantage...
But what you think about technical side of Delphi comparing it to C# or VB.NET ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
I See Delphi as stuck between two worlds, can't develop applications as fast as vb.net, and it is also slower than C++ or ASM, so why is it here ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
BlindSniper
I See Delphi as stuck between two worlds, can't develop applications as fast as vb.net, and it is also slower than C++ or ASM, so why is it here ?
I think that coding time with Delphi is somewhere between VB.NET and C#.
Talking about application speed Delphi is slower than C++, but faster than VB.NET or C#.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
If you are in .NET, application speed isn't your primary concern. If speed is your concern, then C++ is a better language. After all, if that is your criteria, why settle for a half measure?
You initially asked why people prefer .NET or C# to Delphi, and that was what I was answering. I have written in C++, VB6, and .NET (along with a few strange, proprietary, languages). I haven't tried Delphi, and based on the price TG alluded to, I don't think I ever will. After all, my job is in .NET, so that's what I will be using for work, and it isn't up to me. Does that mean that I prefer .NET? No, it doesn't really mean anything, nor can I even compare to Delphi, but neither can I justify buying it, since it would have to come out of my own pocket and only be for hobby/personal use. That's probably what drives most people. Arguing about the merits of a language are pointless if you don't get to choose which language you use.
As for my hobby, which is robotics, what tools does Delphi have for interfacing with robots? MS has the Robotics Lab (which I haven't used), and there is an excellent robotics brain that has a robust library of .NET classes for interacting with it. Given that the tools are .NET, would it make any sense to use a different language?
However, let me mention, again, my reply to point #5: How are you testing performance? What test would you cite to show that a well coded Delphi app runs faster than a well coded .NET app? I can think of one obvious test, because I don't like the way that .NET performs integer addition, which Delphi may very well do better, but that's an extremely narrow test. Don't go on about JIT, either, because the compiled code is compiled. The cost is paid only once, not every time you run the program.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
I am like you, I don't know why either. I tried .Net and could not make a DLL you can only call one, I tried to make an ISAPI app and found that it has to be a ASPX plugin into IIS of some kind. I am baffled why people use .Net.
What is also strange is that they seem not to care what Delphi is.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Shaggy Hiker
what tools does Delphi have for interfacing with robots
The robots driver?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
I am like you, I don't know why either. I tried .Net and could not make a DLL you can only call one, I tried to make an ISAPI app and found that it has to be a ASPX plugin into IIS of some kind. I am baffled why people use .Net.
What is also strange is that they seem not to care what Delphi is.
Perhaps you were doing something wrong.... I create DLLs all the time... the system I work on is completely driven by them.
-tg
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
techgnome
Perhaps you were doing something wrong.... I create DLLs all the time... the system I work on is completely driven by them.
-tg
I would bet those are not DLL's you are creating, say for example can you make a DLL in .net then use that DLL in C++ or use it in a language that existed prior to .net?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
In that regards, you're correct... they are not STANDARD C-style DLLs... they are .NET Assemblies... but they can also be marked as being "COM Aware" so that, yes, you can register them on a system and use them as an ActiveX Component. And that's hardly justification for saying that you can't create DLLs with it... VB6 has the same problem then... your assumption is that there is one and only one kind of DLL... that's like saying there's only one kind of car. It's just not true.
-tg
-
Re: Why people prefer VB.NET or C# instead of Delphi?
I coded in Delphi versions 3 to 5 and loved it but in todays world of programming Visual Studio is the best choice between the two (heck I don't event know if Delphi is still being sold, is it?)
-
Re: Why people prefer VB.NET or C# instead of Delphi?
tg, there is only one kind of DLL. COM and .net Assemblies are DLL's. The windows OS only deals with Executables and DLL's, period. It knows nothing of .Net or even COM, it simply runs executables and provides a mechanism to load DLL's. .Net assemblies are implemented as DLL's and so is COM. .Net has isolated you from the OS.
If an application, like a web server, maybe photoshop plugins, or the OS itself requires a DLL (not COM or assembly) - it cannot be provided by .net.
The truth is, .Net cannot make native windows apps. Your .net application is not a windows application, rather there is a .net host application that runs your application.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
kevininstructor
I coded in Delphi versions 3 to 5 and loved it but in todays world of programming Visual Studio is the best choice between the two (heck I don't event know if Delphi is still being sold, is it?)
First, here is the link to Delphi (http://www.embarcadero.com/products/delphi)
Next, did you know Skype is written in Delphi?
Next, did you know the developer of C# was the creator of Delphi and that .Net inherited a lot from Delphi? In fact Visual Studio was transformed to be more like Delphi.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Lauriux1
I have read a lot and still can't understand why people prefer VB.NET or C# instead of Delphi? And why Delphi is losing popularity?
I believe it is Ignorance. Its a sad thing and somewhat unbelievable.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
tg, there is only one kind of DLL. COM and .net Assemblies are DLL's. The windows OS only deals with Executables and DLL's, period. It knows nothing of .Net or even COM, it simply runs executables and provides a mechanism to load DLL's. .Net assemblies are implemented as DLL's and so is COM. .Net has isolated you from the OS.
If an application, like a web server, maybe photoshop plugins, or the OS itself requires a DLL (not COM or assembly) - it cannot be provided by .net.
The truth is, .Net cannot make native windows apps. Your .net application is not a windows application, rather there is a .net host application that runs your application.
That's one of the things I love about .Net, as long as I write an application that targets a version of the .Net Framework, I don't need to care about Windows patches (or newer versions of Windows) breaking my app because MS handles that by updating the .Net FW.
If I were to write a native application, a Windows patch tomorrow could break it and I would have to go back and modify my app, to work both before and after the patch. That can get messy.
This is also part of why Java became so popular (which is what .net is entirely based on) you, as the developer, don't have to keep up with all of the OS patches and whatever the next OS will have, a different company handles that for you, so you can focus on what you need to, which is your application(s).
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
JuggaloBrotha
I don't need to care about Windows patches (or newer versions of Windows) breaking my app because MS handles that by updating the .Net FW.
I have applications that were developed 10 years ago that still work on current windows. So I don't agree with you there. Its more, .net versions have a lifetime and will stop being supported. Basically your application is split in 2, the part you made and the runtime environment which you don't control. MSoft is more flippant about supporting .net than they are about supporting the OS. A native app has more assurance that it will run in a windows environment than a .net app.
From experience, I have had 2 server applications on the same box go down because of a .net framework issue that could not be resolved and we had to get a new box and rebuild. The applications that did not go down were the native ones I made in Delphi.
Native apps simply have less to go wrong and there is also a much simpler and anxiety free deployment.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Plus even those of us who don't want it get to pay the monthly Windows ".Net tax" as 20 to 200 MB of patches are pushed out to fix the security holes in the multiplying-like-rats Frameworks.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Delphi came out because AH got upset when VB and Windows became so popular that his creaky old DOS TurboPascal fell into disuse. As we know from history it was touted as an upcoming "VB Killer" though it never reached anything but marginal acceptance.
When that fell flat he went to Microsoft and helped create the MSJVM and VJ++ that got Microsoft sued, and still causes us pain ever since.
He went back with the chip still on his shoulder and recreated this as .Net with an army of lawyers to keep him out of trouble. VB people were not allowed at the .Net party, though VFP people who also had it in for VB were welcomed openly.
The resulting travesty was VB.Net, a kind of hick country cousin of C#.
.Net is not "based on Java" at all, though it stole many of the concepts.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
What is up with this thread? The thing started well over a year ago, was dormant for most of its life, then some bomb thrower shows up and gets it going again, but there's no substance.
If you don't like .NET then don't use it.
@dilettante: You're pretty much wrong about who was and was not allowed at the .NET party when it comes to VB. I got to hear about it from the guy that called the meeting, who isn't a fan of .NET, either, but he was a whole lot more practical about it all. There wasn't any apparent animosity, it was just a business decision based on the typical business reasons: An estimate of the situation based on what information was at hand and guesses about the future direction.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
dilettante
The resulting travesty was VB.Net, a kind of hick country cousin of C#.
Don't agree, C# went through a degree of frameworks in order to incorporate all the vb.net functionality. IF there is travesty then it's the entire .net framework (that i hate but am bound to use).
Look i hate windows and Micro$oft as the next guy but if i were to use Delphi i should just stick with good ol' C++ .
I hate them(windows) but i am bound of using them because of the job opportunities and because my hatred ratio for Apple solutions goes over the limit of hatred (aka megahate).
Anyhow i would love to participate on an anti microsoft thread but unfortunately we got these forum rules that won't let me cheer up on how i hate microsoft.
Note, I should also make a request to be allowed to create an anti windows8 thread. The most idiotic thing ever created, after windows ME. Haha i just recalled our admin installing the new windows 2012 server with a smile on his face...The smile went away as he mistakenly decided a command prompt installation and later on, trying to find the start button. Lolololol!
So ok i've changed my mind, i will go for Delphi on this one. Go Delphi!!
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
What is also strange is that they seem not to care what Delphi is.
Should we ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
Should we ?
Should you?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Lets be honest... not really.
As Shaggy averred to, I program to make money. There's no (or not much) money in Delphi while there's plenty in .Net and C#.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
FunkyDexter
I program to make money.
I program to make programs.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
I program to make programs.
VB.Net can make programs just fine so why should I care about Delphi ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
VB.Net can make programs just fine so why should I care about Delphi ?
Maybe the confusion is in the standard we base our choice of tool on. Mine is that I want to use the best tool and that has many sub factors (deployment, speed, reliability in production(dependencies for example), language features, ...), some others decide based on employment - meaning the boss chooses. When one person argues about technology the other could care less. So, if someone uses VB I would predict that they don't use it for technological reasons and that whatever reason I say why you should use Delphi would be irrelevant to you.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
So, if someone uses VB I would predict that they don't use it for technological reasons and that whatever reason I say why you should use Delphi would be irrelevant to you.
"technological reasons"
What does that mean ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
Maybe the confusion is in the standard we base our choice of tool on. Mine is that I want to use the best tool and that has many sub factors (deployment, speed, reliability in production(dependencies for example), language features, ...), some others decide based on employment - meaning the boss chooses. When one person argues about technology the other could care less. So, if someone uses VB I would predict that they don't use it for technological reasons and that whatever reason I say why you should use Delphi would be irrelevant to you.
That's a pretty good post. Frankly, there are plenty of examples where the innovative lost out to something less impressive for the simple reason that everybody embraced the less impressive for one reason or another. Still, the situation that I dread is getting back to the situation in the late 80s-early 90's where there was no most popular platform and everybody had to write for multiple platforms using multiple tools. Many developers couldn't afford to do that, or didn't want to, so they targeted one platform or another. For the consumer, if there was something you really wanted to use, but it wasn't written for your hardware...sucks to be you.
Perhaps the world should come together around something open like Linux, but I don't see that happening. For whatever reason, the world has currently come together around Windows, with a few percentage off on other platforms. That makes it easy to choose the platform to target. It looks like mobile is going to coalesce around Android, though that could still change. Still, if it happens, there isn't a clear winner when it comes to tools for writing for Android. As far as writing for Windows, there are a few clear winners for different scenarios, and Delphi isn't one of them. Perhaps the technology is superior, perhaps the IDE is stellar, but it is still a marginal language and experience should show that once marginal, languages tend to stay right there.
I program to make programs, too. It only became my employment years later. .NET has all the features, and I've had no issues, so I see no particular reason to change. The fact that I now work in a .NET shop means that changing isn't even an option, though.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
I program to make programs
Really? I don't. I program to add value. I add value to the business I work in and, in return, they give me some of that value back in the form of a salary. If I cease to add value then I cease to be employed. Even my home spun projects are only as useful as the benefit they offer.
My previous answer was deliberately flippant because the post of yours I was responding to was flippant but if you want an argument with a little more substance: I've been in the position of deciding which technology to take forward several times. Every single time I've made the choice of a main player because the cost to a business of choosing a niche player is too great.
Is Delphi faster than .Net? Dont know, don't care. Is it easier to program in? Don't know, don't care. Is it easier to deploy delphi apps to some linux based desktops which the business doesn't currently use but theoretically may do at some undisclosed point in the future? Don't know, don't care.
But is it easier for me to hire a talented .Net programmer? Yes, definitely. Do I have more confidence that .Net will continue to be supported in the future? Yes, definitely. Assuming .Net does become obsolete am I confident that a company on the scale of Microsoft will offer some alternative with a reasonably painless transition path for programmers to follow and am I confident that the vast bulk of .Net programmers will follow that path thus continuing to provide me with a substantial recruitment and expertise pool? Yes, definitely.
I make the decisions I do not on the basis that it's the right choice for me as an individual but rather because it's the right choice for the business I represent.
If you bought a betamax video in the 80s you were buying the best technology available. But you'd still have been buying a technologically inferior VHS in the 90s if you wanted to actually get any benefit from having a video player.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
"technological reasons"
What does that mean ?
I noticed that when there is a question or argument about Delphi that there seem to be 2 sides, one side says Delphi is good and lists technical reasons like the person who started this thread then the other side are those talking about availability of jobs. Rarely you will see a technical comparison between Delphi and .Net, you just see 2 sides fighting over 2 different things.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
FunkyDexter
Really? I don't. I program to add value. I add value to the business I work in and, in return, they give me some of that value back in the form of a salary. If I cease to add value then I cease to be employed. Even my home spun projects are only as useful as the benefit they offer.
I am ending the quote there, I could quote the whole thing but I just want to quote enough to know what my post is replying to.
Your position is based on anxiety and fear. Fear of not finding a programmer, fear of losing support. You even pointed out you did not care if Delphi was faster than .Net or easier to program in.
I see a lot of this attitude and I wonder what is going on in the world, where fear dominates.
Its an individual problem but I have a conspiracy theory that MSoft is taking advantage of it. See MSoft is seen as something sure, they know they have that edge and they can play that edge. All they have to do is make a competitor look unstable in order to win, and thats what they did to Borland. MSoft is a cannibal, they live off the achievements of other companies then put those companies out of business then MSoft itself stagnates till they find another business to eat.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
I noticed that when there is a question or argument about Delphi that there seem to be 2 sides, one side says Delphi is good and lists technical reasons like the person who started this thread then the other side are those talking about availability of jobs. Rarely you will see a technical comparison between Delphi and .Net, you just see 2 sides fighting over 2 different things.
What is the size of the pool of people who are thoroughly fluent in both .NET and Delphi, and are objective enough to be able to do a real comparison between the two? I know of nobody who could reasonably claim to be in that set. The Delphi supporters I know seem to have moved to Delphi specifically because they have a grudge against MS, often stemming from the fact that MS switched from classic VB to .NET. That makes their point of view highly suspect.
As far as I can tell, there are two groups of people: Those who went to Delphi out of bitterness with MS, and therefore have a reason to tout Delphi as being better, but who also don't have sufficient experience in .NET to be able to compare the two well, and those who are in .NET and have never used Delphi and therefore lack sufficient experience in Delphi to compare the two well.
This thread started with a post based on a fermented mix of partisanship and ignorance. It has continued along those lines as all holy wars do. Find some people who have equally strong experience with both languages, and who are not biased against MS or Delphi, and their information would be interesting. Aside from that, this whole thread is about Delphi partisans trying to prove that people should switch away from something they are happy with to something different. That's an absurd argument, as people only move from their current course if they have some reason to do so. The whole thread can be summed up in this way:
Person 1: I think Delphi is better than .NET.
Person 2: Then use it.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Shaggy Hiker
but who also don't have sufficient experience in .NET to be able to compare the two well
Thanks Shaggy for your post. I am a strong Delphi supporter but I am not biased. I gave .Net a chance from a technical perspective and it only strengthened my support of Delphi. I don't need to be elaborately experienced in .Net to make a correct choice, there are just some key points to consider and not the whole mammoth of .Net. There was one point about .Net that I saw better than Delphi and that it has the ability to compile for the specific CPU it is running on, Delphi has to make a general compile and this can make .Net faster. In fact I would consider .Net for computationally intensive tasks, I don't have a bias towards Delphi that would cause me to evade .nets strengths. My arguments for Delphi are strictly technical, thats how I compare them and I do so without prejudice.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
I noticed that when there is a question or argument about Delphi that there seem to be 2 sides, one side says Delphi is good and lists technical reasons like the person who started this thread then the other side are those talking about availability of jobs. Rarely you will see a technical comparison between Delphi and .Net, you just see 2 sides fighting over 2 different things.
Well I can't speak to that since I've never used Delphi so I'd leave that to those who have experience with it. ;)
Quote:
Originally Posted by
billegge
Its an individual problem but I have a conspiracy theory that MSoft is taking advantage of it. See MSoft is seen as something sure, they know they have that edge and they can play that edge. All they have to do is make a competitor look unstable in order to win, and thats what they did to Borland. MSoft is a cannibal, they live off the achievements of other companies then put those companies out of business then MSoft itself stagnates till they find another business to eat.
Just wow....This is really getting old. "MS the big evil corporation"...You seemed like a reasonable individual until now. Do you and the other countless people spouting this have any clue how this comes across ? Think guys in tin-foil hats. MS is successful because they did more things right than they did wrong. .Net is one of those things they did right. If you ever used .Net you'd see why it is such a big deal. The .Net Framework itself is extremely powerful and their flagship IDE for development of .Net programs leaves little in wanting.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
Thanks Shaggy for your post. I am a strong Delphi supporter but I am not biased. I gave .Net a chance from a technical perspective and it only strengthened my support of Delphi. I don't need to be elaborately experienced in .Net to make a correct choice, there are just some key points to consider and not the whole mammoth of .Net. There was one point about .Net that I saw better than Delphi and that it has the ability to compile for the specific CPU it is running on, Delphi has to make a general compile and this can make .Net faster. In fact I would consider .Net for computationally intensive tasks, I don't have a bias towards Delphi that would cause me to evade .nets strengths. My arguments for Delphi are strictly technical, thats how I compare them and I do so without prejudice.
Actually, everybody is biased. If you prefer A over B, then you have a bias. Perhaps the only people who are not biased would be those who hate both A and B with a white-hot passion, but that's just a different kind of bias. It's how we work, and it's actually necessary for our being able to function. You simply don't have enough time to fully compare two things as complex as a pair of programming languages in anything close to a comprehensive fashion, so you look at a few things and let bias do the rest. If you didn't work this way, you'd still be standing in your bedroom trying to decide what to wear until you starved to death.
The point is more to recognize your bias than to deny it. After all, your bias is just as likely to be right, anyways. In my case, I started with ASM and C++. The advantages of C++ over ASM were pretty clear. I then got into VB for work (VB5...sort of), and saw the advantages of that over C++, especially back in the pre-ANSI days where every C++ compiler did something different because none were fully compliant. That left me biased towards VB, but there were things I strongly disliked about VB. The biggest thing, oddly enough, was that it didn't really do Object Oriented. Secondarily was the inability to handle threading.
Once .NET came out, my bias for VB kept me from even looking at it for a couple years. Eventually, I found a problem that VB6 couldn't handle (PDA programming), so I was forced to .NET. At that point, I realized that it had all the features I wanted, and a FAR better IDE, too. It really is OO, it supports multithreading quite well, and so on. There are still some drawbacks, such as the fact that all mathematical calculations are equal. That shouldn't be. Integer division should be FAR slower than integer addition, but in .NET it is not. Therefore, .NET puts a limit on how much performance optimization you can do. However, .NET has no problem calling dll functions written in C/C++, so there is a way around that limitation, if needed.
So, I have it all and I have my bias, too. There may very well be tools out there that are better. Some folks on here are pusing Android and getting away from Windows and any such language. Perhaps they are right. But I have excellent tools to construct the programs I want to the level I want to construct them (unless MS really does drop all graphics such as XNA from .NET), which is a pretty high level. What possible reason would I have to not go with my preference? That's a bias, to be sure, but is it wrong?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
Well I can't speak to that since I've never used Delphi so I'd leave that to those who have experience with it. ;)
Just wow....This is really getting old. "MS the big evil corporation"...You seemed like a reasonable individual until now. Do you and the other countless people spouting this have any clue how this comes across ? Think guys in tin-foil hats. MS is successful because they did more things right than they did wrong. .Net is one of those things they did right. If you ever used .Net you'd see why it is such a big deal. The .Net Framework itself is extremely powerful and their flagship IDE for development of .Net programs leaves little in wanting.
Reference http://en.wikipedia.org/wiki/Anders_Hejlsberg
You have never used, and I will guess, you never seen Delphi nor know its origins and thus do not know the origins of .Net. That greatness you give to .Net belongs to Delphi, what you are seeing is a copy of Delphi. File New... NT Service, Application, Console application, ActiveX library, Web Application, DLL Library, .. in neat little icons - sound familiar? Thats Delphi since its beginning. Anders Hejlsberg built Delphi, then MSoft took all the talent from Borland through offering huge sign on bonuses - millions - then .Net was started by Anders which came out to be a merge of Java and Delphi. I would really call .Net the Delphi version of Java.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
Just wow....This is really getting old. "MS the big evil corporation"...You seemed like a reasonable individual until now.
http://goo.gl/DXtQo
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Shaggy, had you went to Delphi instead of VB you would have had everything you wanted. It was better than VB and had the power and speed of C++.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
Shaggy, had you went to Delphi instead of VB you would have had everything you wanted. It was better than VB and had the power and speed of C++.
Everything...except a job.
By the way, why do you say it was better than VB? So far, a few people (such as the, now-absent, OP) have stated this, but they don't point to anything in particular. There have been some vague statements about speed, but that's meaningless. Very few people ever write anything where speed matters. I have written one or two things, but not many things, and speed wasn't really all that important to the few things I wrote, either. Speed mostly matters for some types of graphics, which I almost never use (except for my recent foray into XNA).
Frankly, I see so few flaws in .NET that I'm not sure what the comparison would be.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
Shaggy, had you went to Delphi instead of VB you would have had everything you wanted. It was better than VB and had the power and speed of C++.
Out of 2 pages of posts, I've seen you say this numerous times, yet you haven't even began to show any proof or findings of anything you've said. No syntax or construct comparisons, no performance comparisons, no benchmarks, nothing.
I could claim vb6 is far superior to .Net all I want, but it's just hearsay until someone actually shows findings that vb6 really is better than .Net, which is all I'm getting from all of your "Delphi is better" comments, it's just hearsay, no sustenance to back any of it up.
For the record, I find .Net to be far better than vb6, I just used vb6 vs .Net as an example.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
billegge
You have never used, and I will guess, you never seen Delphi nor know its origins....
I had an encounter in my teens with its ancestor, Pascal. At the time I was writing code in QuickBasic Extended. I remember very clearly how superior it was to QuickBasic. I had the source code for a map editor for Wolfenstein which was written in Pascal. The functionality this map editor had could not be replicated in QuickBasic. If we were talking about this in those times, you would hear no argument from me. But we have come a very long way since then.
Quote:
Originally Posted by
billegge
That greatness you give to .Net belongs to Delphi, what you are seeing is a copy of Delphi. File New... NT Service, Application, Console application, ActiveX library, Web Application, DLL Library, .. in neat little icons - sound familiar? Thats Delphi since its beginning. Anders Hejlsberg built Delphi, then MSoft took all the talent from Borland through offering huge sign on bonuses - millions - then .Net was started by Anders which came out to be a merge of Java and Delphi. I would really call .Net the Delphi version of Java.
Consider Linux which evolved from Unix.
Consider Winsock which is based on Berkley's sockets on Unix.
Consider OS/2 and Windows shares the same code base.
Consider JavaScript in modern browsers was created my the makers of the ancient Netscape Navigator web browser.
Consider Delphi itself is a modern descendant of Pascal which was not created by Anders Hejlsberg but by Niklaus Emil Wirth.
My point is, what you're saying is common practice in the industry. Nothing would get done if everyone tried to re-invent the wheel. Every piece of popular software today has cannibalized parts from older proven software. Pascal is proven. I'm not gonna argue that.
Btw...The greatness of .Net belongs to Anders Hejlsberg not Delphi. .Net and Delphi are ideas made material. It just happens that .Net won out.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
one side says Delphi is good and lists technical reasons like the person who started this thread then the other side are those talking about availability of jobs
I'd mostly agree with that except I'd argue that the second site is talking about business pragmatism rather than just the availability of jobs. It's a subtle difference but an important one since it's the business that will usually decide on which tech is used rather than the job-hunter.
The point you seem to be missing is that the former's arguments don't matter. Having the best technology is great... in a toy. A Ferarri is a wonderful thing to own... but Toyota post much larger profits every year than Ferarri do. From a business perspective what you want is large user bases not technical niceties. So if you want to program toys in Dephi, go ahead.
And by the way, none of this is based in fear, it's based in pragmatism.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Comparing Toyota to Ferrari, tsk tsk :cry: :p
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Billegge I'm familiar with Delphi and would love to hear your technical case for its use today over Java, C#, C++, Python, Ruby. I'd also love to hear any corresponding case you may have for VCL or FireMonkey over .Net/Mono or Qt. Embarcadero themselves fail to make it on their web page (absolutely no comparison to other products).
Keep in mind that the next issue after technical merits comes whether it can justify its price tag, with it being possible to develop in all of the languages listed above for free. That means Delphi needs to bring $1000+ more value to the table.. and that's before we want to do things like access client/server databases, which can add another $500 to the price tag.
And then we can get into what you don't seem to want to talk about, which is the environment/ecosystem - jobs, books, courses, third party libraries, conferences, etc. available for Delphi vs. .Net, Java, the scripting languages, etc.
You may find that Delphi isn't really the answer to all our problems you suggest it is. You may discover it doesn't hold much value outside of a few niche areas today.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Hey!
Delphi doesn't require a huge framework to be installed for applications to work. Your compiled result is your application. In C#, all the 3rd party components have to be included and some even have to be registered in the GAC (That on its own is a problem).
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
christinemiller414
Hey!
Delphi doesn't require a huge framework to be installed for applications to work. Your compiled result is your application. In C#, all the 3rd party components have to be included and some even have to be registered in the GAC (That on its own is a problem).
Delphi requires a "huge" OS to be installed....what's your point exactly ?
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Personally I have never looked into Delphi and have not known anyone who uses it at all. I have used a few languages in my day but mostly versions of Basic. Aside from the various versions of Basic I have built apps with Turbo Pascal, Turbo C, Visual C++, C# and a few scripting languages. In terms of Basic I have used Timex Basic, Commodore Basic, IBM Basic, GWBasic, VBDos, VB3,4,5,6, VB.Net 2003,2005,2008,2010 and others include C# 2003,2005,2008,2010.
Since most of my coding has been done in a form of Basic over the years it is just easier to code most things in some version of Basic. I typically only go to another language when the project calls for it.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
Delphi requires a "huge" OS to be installed....what's your point exactly ?
Apart from that, the latest versions of Delphi produce executables that are enormous because they also compile all the libraries needed for the Unicode support. There's no way you can remove the Unicode stuff from the final exe, even if you don't use it. That's why I'm still sticking with an old version of Delphi that produces executables that are much smaller in size.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
esposito
Apart from that, the latest versions of Delphi produce executables that are enormous because they also compile all the libraries needed for the Unicode support. There's no way you can remove the Unicode stuff from the final exe, even if you don't use it. That's why I'm still sticking with an old version of Delphi that produces executables that are much smaller in size.
Actually I didn't know that. I was being cheeky with that comment. I was trying to illustrate that crying about runtimes is practically the same as crying about needing to install an OS on your PC. No application is truly free of runtime constraints. I mean if you get a new PC with a blank HD, you don't complain about having to install Windows so why complain about installing runtimes.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
Niya
Actually I didn't know that. I was being cheeky with that comment. I was trying to illustrate that crying about runtimes is practically the same as crying about needing to install an OS on your PC. No application is truly free of runtime constraints. I mean if you get a new PC with a blank HD, you don't complain about having to install Windows so why complain about installing runtimes.
Yes, I had figured that out that you were being sarcastic and my comment was meant to emphasize that, if on the one hand the Delphi executable does not need any runtime files, on the other hand it is so big that it gets you as upset as the .Net Framework does.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Err..I see. You were being cheeky too lol.
My point still stands. The .Net framework is part of the OS. Complaining about its size makes no sense at all since the rest of the OS overshadows it, you might as well complain about all those pesky Dlls in System32, you know, the ones that Windows installs so it can work. Delphi making small EXEs is neutral in any debate about weather its better or worse than .Net.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
The bigger exe would be an issue for many, should be for all. In the case of the runtimes say you have 100 exes on your PC that use the RT the RT is large but the exes are small where those that compile the RT into the exe need no RT but the exes are large and you end up using 90x more HD space for the same 100 programs. Not to mention that it takes longer to download each and every one of them.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
I used Delphi (version 1-5) for many years, .NET is better now.
-
Re: Why people prefer VB.NET or C# instead of Delphi?
Quote:
Originally Posted by
christinemiller414
Hey!
Delphi doesn't require a huge framework to be installed for applications to work. Your compiled result is your application. In C#, all the 3rd party components have to be included and some even have to be registered in the GAC (That on its own is a problem).
It's very rare that anything HAS to be installed in the GAC. For a simple client app, NEVER. Installing something in the GAC is a way to make it available to multiple applications. You could just as easily give each of those applications their own copy the DLL. Even if you do want to install something in the GAC, why is that a problem? Any installer can do that without breaking a sweat.