.Net Language Question (but not really programming...)
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)My 2c on the issue, which you should take with a grain of salt... When you talk about C++, I think mostly of three issues: managed vs. unmanaged code MFC vs. .NET performance of natively compiled code vs. JIT code And secondary is development time, XML documentation, security, and distribution issues. I also see C++/CLI as somewhat butchering the "purity" of the C++ language. For that reason, if I need the performance of C++/unmanaged code, I'll write a C++ DLL and use DllImport to access the methods. I think this actually provides a better architecture because I'm forced to think more in terms of an API, exposing methods, and the interface between the two languages, which I think results in a better architecture. But maybe not--I find the language hacks in C++ to be really ugly, it just feels wrong. For most things, I couldn't imagine coding in C++ to use the .NET framework. I think that the .NET framework is a better implementation than MFC, so for UI development, I personally prefer .NET. Things like declarative programming (a personal bias) is a lot easier to do in .NET, and I also view C# as the language that will be moving into the future. Regarding:
James R. Twine wrote:
.Net is supposed to offer a kind of language independence
Well, I think more to the point, for me at least, is the potential of having the code optimized for the platform and processor at runtime rather than at build time. I'm quite happy with C# and if I were to use another .NET language, there would have to be justification with regards to what benefits it has to me, as a programmer, and to my customer. There's Python, Fortran, I think Pascal, Boo (I think), and other languages out there that will generate IL, but is there a measurable benefit to using those? Depending on the job, what's the right tool, right? Reading Nish's comments about Avalon though, it's pretty clear that the System.Windows.Forms namespace is going to be obsoleted when Avalon is released. So, it becomes even more important to understand the entanglement of the language with the framework. Do I think C++/CLI is gaining momentum? Honestly, I have no idea, but I do think it's more of a marketting ploy to get people that don't want/need to move to C# to buy into the managed code concept, regardless of the language or framework! So as developer, the core decision to make first, in my thinking is, do you want to work in a managed JIT application architecture? Depending on
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)James R. Twine wrote:
it appears that C# has become the de facto .Net language
Nope. VB.NET seems to be much more used than C#.
James R. Twine wrote:
is C++/CLI gaining enough (if any) momentum?
No.
James R. Twine wrote:
Are enough people using it
No.
James R. Twine wrote:
and are the rest getting a good enough feeling about it
No.
James R. Twine wrote:
Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)?
Technically speaking - yes. C++/CLI offers the easiest interoperability with native code, easiest managment of non-memory resources, and the C++/CLI compiler produces the best IL. However, it was released too late, the name is horrible (most people consider CLI to be "command line interface"), and the marketing support from MS is weak. Also, the level of VS support for it is worse than for VB or C#.
James R. Twine wrote:
I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#?
If by "metal" you mean CLI, they are pretty much the same. None of them allows inlining IL, for instance.
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)James R. Twine wrote:
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles.
depends who you ask. MS issues examples in VB.net first, and other languages later(if at all) because according to thier market research VB.net has a larger market share. The fact that VB.net users are less capable of porting from anyhting else is also a factor. It seems most of hte 'power devs' are using C# however. The difference probably comes down to who was using VB6 or C++ in the preNET era.
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)We use C++/CLI. I think you should use c#.
-
James R. Twine wrote:
it appears that C# has become the de facto .Net language
Nope. VB.NET seems to be much more used than C#.
James R. Twine wrote:
is C++/CLI gaining enough (if any) momentum?
No.
James R. Twine wrote:
Are enough people using it
No.
James R. Twine wrote:
and are the rest getting a good enough feeling about it
No.
James R. Twine wrote:
Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)?
Technically speaking - yes. C++/CLI offers the easiest interoperability with native code, easiest managment of non-memory resources, and the C++/CLI compiler produces the best IL. However, it was released too late, the name is horrible (most people consider CLI to be "command line interface"), and the marketing support from MS is weak. Also, the level of VS support for it is worse than for VB or C#.
James R. Twine wrote:
I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#?
If by "metal" you mean CLI, they are pretty much the same. None of them allows inlining IL, for instance.
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
Nemanja Trifunovic wrote:
However, it was released too late, the name is horrible (most people consider CLI to be "command line interface"), and the marketing support from MS is weak.
Are those really good reasons too stay away from it?
Nemanja Trifunovic wrote:
Also, the level of VS support for it is worse than for VB or C#.
That's a huge understatement.
-
We use C++/CLI. I think you should use c#.
espeir wrote:
We use C++/CLI. I think you should use c#.
OK - but for what reason(s)? Lacking language-specific support for .Net features? IDE support for the language? Developer support for the language? Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!) -
Nemanja Trifunovic wrote:
However, it was released too late, the name is horrible (most people consider CLI to be "command line interface"), and the marketing support from MS is weak.
Are those really good reasons too stay away from it?
Nemanja Trifunovic wrote:
Also, the level of VS support for it is worse than for VB or C#.
That's a huge understatement.
espeir wrote:
Are those really good reasons too stay away from it?
You tell me :)
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
-
espeir wrote:
We use C++/CLI. I think you should use c#.
OK - but for what reason(s)? Lacking language-specific support for .Net features? IDE support for the language? Developer support for the language? Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)Overall, I like C++/CLI as a language. Mixed mode programming is pretty easy and straightforward, so if you're writing something that requires a lot of native code mingled with managed code it's a good thing. However, VS2005 simply does not support development as fluidly in C++/CLI as it does in c#. Here are a couple of examples off of the top of my head: -Intellisense :(: In c# it works wonderfully. In C++/CLI it works about half the time. In c#, when you begin typing, intellisense immediately pops up, whereas in C++/CLI, you have to use "this->" in order for intellisense to pop up with information about the current object. Plus there's that annoying "updating intellisense" nonsense that locks the IDE for minutes at a time. To my knowledge that does not happen with c#. -The Designer: It breaks. I sometimes get a "catostrophic error" in the designer just by removing a space or two from the designer-created code. It's also annoying that when events are added, the generated code is added to the header file (instead of just the definition). The code it creates can also be very messy. -Signing: In c#, you just go to properties and tell it to sign the assembly. in C++, you have to use some external tools non-straightforward tools to get it to work. -ClickOnce support: It looks kind of cool. But that's only in theory for me as, despite following some blogged directions (as none are really provided for a C++/CLI app) I haven't been able to get it to work properly. With c#, you pretty much press a button. I really have no problems with the language itself. For me it's entirely the IDE that gets under my skin.
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)I've been involved in porting a large Java app to the .NET framework. The Java app had lots and lots of native interop via JNI (java native invocation services, Java's fugly way of calling native code). I first tried P/Invoke, and what a pain to do. I ended up writing a little C++/CLI dll that easily communicates with native and sends the data back over into managed land with almost no effort. I was impressed. :cool: Also, the speed of calling native code via C++/CLI is far faster than using P/Invoke from C#; Nish has written an article on this. That said, I agree with the others; C++/CLI is a pretty good language and quite useful in my scenario, but the IDE support is far worse than C# IDE support. I wouldn't start a .NET project from scratch in it; for that I'd use C#. However, I would certainly use it again if I need lots of native interop.
Tech, life, family, faith: Give me a visit. I'm currently blogging about: Moral Muscle The apostle Paul, modernly speaking: Epistles of Paul Judah Himango
-
James R. Twine wrote:
it appears that C# has become the de facto .Net language
Nope. VB.NET seems to be much more used than C#.
James R. Twine wrote:
is C++/CLI gaining enough (if any) momentum?
No.
James R. Twine wrote:
Are enough people using it
No.
James R. Twine wrote:
and are the rest getting a good enough feeling about it
No.
James R. Twine wrote:
Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)?
Technically speaking - yes. C++/CLI offers the easiest interoperability with native code, easiest managment of non-memory resources, and the C++/CLI compiler produces the best IL. However, it was released too late, the name is horrible (most people consider CLI to be "command line interface"), and the marketing support from MS is weak. Also, the level of VS support for it is worse than for VB or C#.
James R. Twine wrote:
I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#?
If by "metal" you mean CLI, they are pretty much the same. None of them allows inlining IL, for instance.
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
Nemanja Trifunovic wrote:
Nope. VB.NET seems to be much more used than C#.
I have some doubts about that. In my research I see that C# is used more than VB.NET. I have been trying hard to find some proof of that. Here are the reasons for my doubt: 1. Most of the books which have VB.NET version and C# version did not have good sale of the VB.NET version e,g. Chris Sells Programming windows forms. 2. The programming language popularity (which is contriversial) index which I posted last time show VB.NET popularity less than C# 3. I have seen a few projects which started in VB.NET but moved to C#.
-
Nemanja Trifunovic wrote:
Nope. VB.NET seems to be much more used than C#.
I have some doubts about that. In my research I see that C# is used more than VB.NET. I have been trying hard to find some proof of that. Here are the reasons for my doubt: 1. Most of the books which have VB.NET version and C# version did not have good sale of the VB.NET version e,g. Chris Sells Programming windows forms. 2. The programming language popularity (which is contriversial) index which I posted last time show VB.NET popularity less than C# 3. I have seen a few projects which started in VB.NET but moved to C#.
Rama Krishna Vavilala wrote:
Nemanja Trifunovic wrote: Nope. VB.NET seems to be much more used than C#. I have some doubts about that. In my research I see that C# is used more than VB.NET. I have been trying hard to find some proof of that.
My source:[^] " while I can't publicly state the actual numbers, I can tell you that there are many times more Visual Basic developers than C++ and C# developers.".
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
-
Rama Krishna Vavilala wrote:
Nemanja Trifunovic wrote: Nope. VB.NET seems to be much more used than C#. I have some doubts about that. In my research I see that C# is used more than VB.NET. I have been trying hard to find some proof of that.
My source:[^] " while I can't publicly state the actual numbers, I can tell you that there are many times more Visual Basic developers than C++ and C# developers.".
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
-
Rama Krishna Vavilala wrote:
Nemanja Trifunovic wrote: Nope. VB.NET seems to be much more used than C#. I have some doubts about that. In my research I see that C# is used more than VB.NET. I have been trying hard to find some proof of that.
My source:[^] " while I can't publicly state the actual numbers, I can tell you that there are many times more Visual Basic developers than C++ and C# developers.".
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it.
Note that Tom writes that "there are more VB developers than C++ and C# developers." However, it is a tad of a leap to read that as "there are more VB**.NET** developers than C++/CLI and C# developers." He also mentions that there are more VB articles partly due to the fact(?) that VB developers are less likely to read a C# or C++-based article than the other way around, and then loads what he said by writing "I'll leave trying to surmise why this is true to the reader." This basically sounds like they (MS) are writing for/to the lowest common denominator (thus increasing the total number of readers), but not necessarily that VB rules the .Net world. Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!) -
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)The support for C++/CLI in Visual Studio 2005 is utterly lame compared to the support for C#, the amount of sample code for all but the most trivial operations is non-existant, the documentation stinks and Microsoft doesn't promote it. I am sure there are people within Microsoft who think C++/CLI is great--my own testing of it found it sometimes did result in faster managed code, sometimes significantly faster, than C#--but Microsoft itself appears not to care a whit. My own experience is that many of the productivity gains developers claim with C# are the nice additions to editing code (note the word many--I'm not saying all.) By contrast, C++ is treated as the ugly step-child by VS 2005 and C++/CLI even worse. Frankly, if the reverse were true, I'm sure people would be asking if C# was worth it. (I think even .NET would be taken less seriously, especially if Microsoft had significantly improved MFC back with VS 2002/2003.) Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!) -
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)It all depends on your company. If your company is full of C or C++ programmers, then you will probably use C#. Under .net, both C# and vb.net produce virtually identical MSIL (intermediate language), so there is really no fundamental reason to choose one over the other. That leaves the choice to personal preference, which will usually be whatever you are more familiar with. I can say that C++ is no longer popular. The choice for any new projects is between C# and vb.net. --Chris
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)With regards to momentum I don't think it's really relevant. C++/CLI (wish it had a simpler name C##?) has a niche which I think raises it above considerations of momentum. Importing some win32 api functions is one thing but when you get to the point where you need to expose a managed api to a high performance native system you accept no substitutes. As to C# being de facto, it's a funny situation. I feel that way too yet I always seem to run into VB developers and hear about VB in person. So the reality and the media disagree in my area. At first I thought that Visual Basic was the CLS compliant language. No unsigned ints, no signed bytes, no pointers. But it wasn't until very recently that I finally realized that I had it backwards. C# IS the least common denominator. Pointers aside there are probably more VB-specific language features than C# features. They aren't always significant but for about 50% of the common scenarios there's a C# way, a VB translation of that way, and a VB specific way. So naturally if you want a code sample to be stripped to its barest you'd put it in C#. As far as being closer to the metal, it's all IL and I've disassembled enough methods to see that in the end equivalent code (if you know what that is) is generally equivalent in on the IL side. I don't honestly think you can be closer or fit better with .NET. You really fit or you don't. Besides the Microsoft Languages C++/CLI; C#; and Basic there are a host of dozens of other non MS .NET languages which we shouldn't discount. But if I had to describe a nich for each of them I'd argue that C++ is the high performance lowest level systems engineering language. Basic and C# are both Application programming languages however there are cases where you can use some of the darker C# features to squeeze an extra ounce of performance out of some method that'll be in a tight loop (though I am more likely to write the method in IL than use the heathen language!). If you need hardcore productivity, deadline tomorrow at noon, all-nighter prototyping then Basic shines there. This doesn't mean these languages are stuck in these roles (I personally think that C++/CLI is so awesome it almost negates C# and it makes me ashamed to have ever uttered the words Managed Extentions for C++) Only that that's where the language devs priorities are. Last but not least, as a .NET developer you have the easiest language transitions on the planet. You have almost no excuse for not being partially multilingual (not like you have to learn a new librar
-
Got a question for all of the .Net people out there. In my experience so far, it appears that C# has become the de facto .Net language - people tend to think that C# is the way to do .Net development (which is a bit strange, because .Net is supposed to offer a kind of language independence). Even most of the development magazines that I read (MSDN and Visual Studio, for example) are almost exclusively C#-oriented when it comes to .Net articles. With that in mind, is C++/CLI gaining enough (if any) momentum? Are enough people using it, and are the rest getting a good enough feeling about it, for it to be taken seriously as a .Net language in the eyes of others? Are there any .Net-specific benefits to using C++/CLI over C# or any other .Net language, like VB.Net (or vice-versa)? I remember very early .Net articles talking about C# as the language that was "closest" to the .Net metal. Is the still the case, or is C++/CLI even closer to the metal than C#? Thanks! Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)This is not to add fuel to the fire, but it is good for me to hear that someone else thinks that C# and VB.Net are interchangable. My thought is that VB is so underrated and the main reason that people drift towards C# is because they have come from the C, C++ camps.
-
espeir wrote:
We use C++/CLI. I think you should use c#.
OK - but for what reason(s)? Lacking language-specific support for .Net features? IDE support for the language? Developer support for the language? Peace! -=- James
If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong!
Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road!
DeleteFXPFiles & CheckFavorites (Please rate this post!)One Reason: Ease of programming! I am (used to be??) a C++ developper, but had to do a project in C#. The switch to C# was extermely easy, prabably easier then the switch back to C++ (you get used to the new language constructs and the oh so dreaded garbage collector) Arend
-
This is not to add fuel to the fire, but it is good for me to hear that someone else thinks that C# and VB.Net are interchangable. My thought is that VB is so underrated and the main reason that people drift towards C# is because they have come from the C, C++ camps.
Yeah C# and vb are pretty much interchangable. There are some miniscule differences in the il they generate (which has to do with what it is supposed to do with it) but other than that its pretty much a line-per-line equivalence :) like one of the differences is with equality comparision... string equality under vb dictates that "" = nothing, but not under C#. oh and vb gives the option of having implicit declarations and the such... Might work for learning, but it gets annoying to find bugs - just turn option explicit & option strict on as the project defaults and its good to use :cool: People who make a fuss about it will throw an fit about little differences like that, but... all in all, it won't affect much - they are almost identical. As for reasons people don't like using vb... Many people grew up with cish languages... C/C++, java, etc... So yeah, its much easier for them to use C# - its what they are used to. vb would involve learning less familiar keywords. Also, vb has improved much over time... some people are still comparing new products to old old versions... like vb 6... 4... 1... Qbasic... OLD VB CLONES THAT DON'T WORK RIGHT (stares at some people)