Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. .Net Language Question (but not really programming...)

.Net Language Question (but not really programming...)

Scheduled Pinned Locked Moved The Lounge
csharpquestionc++visual-studio
22 Posts 15 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J James R Twine

    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!)

    J Offline
    J Offline
    Judah Gabriel Himango
    wrote on last edited by
    #11

    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

    1 Reply Last reply
    0
    • N Nemanja Trifunovic

      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.

      R Offline
      R Offline
      Rama Krishna Vavilala
      wrote on last edited by
      #12

      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#.


      My Blog

      N 1 Reply Last reply
      0
      • R Rama Krishna Vavilala

        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#.


        My Blog

        N Offline
        N Offline
        Nemanja Trifunovic
        wrote on last edited by
        #13

        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.

        R J 2 Replies Last reply
        0
        • N Nemanja Trifunovic

          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.

          R Offline
          R Offline
          Rama Krishna Vavilala
          wrote on last edited by
          #14

          I had seen that but he says there are more Visual Basic Developers. I don't have any doubts that there are more Visual Basic Developers which includes VB6. My doubts are about VB.NET developers. I see that for .NET development companises are using C# over VB.NET.


          My Blog

          1 Reply Last reply
          0
          • N Nemanja Trifunovic

            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.

            J Offline
            J Offline
            James R Twine
            wrote on last edited by
            #15

            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!)

            1 Reply Last reply
            0
            • J James R Twine

              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!)

              J Offline
              J Offline
              Joe Woodbury
              wrote on last edited by
              #16

              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

              1 Reply Last reply
              0
              • J James R Twine

                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!)

                R Offline
                R Offline
                Rage
                wrote on last edited by
                #17

                James R. Twine wrote:

                Are enough people using it

                Ah, everyone may use it ? I thought that was a language they had developped only for Nish to play with :) ~RaGE();

                1 Reply Last reply
                0
                • J James R Twine

                  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!)

                  C Offline
                  C Offline
                  chrismueller consulting
                  wrote on last edited by
                  #18

                  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

                  1 Reply Last reply
                  0
                  • J James R Twine

                    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!)

                    A Offline
                    A Offline
                    ad_green
                    wrote on last edited by
                    #19

                    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

                    1 Reply Last reply
                    0
                    • J James R Twine

                      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!)

                      M Offline
                      M Offline
                      machman1
                      wrote on last edited by
                      #20

                      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.

                      X 1 Reply Last reply
                      0
                      • J James R Twine

                        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!)

                        A Offline
                        A Offline
                        Armimema
                        wrote on last edited by
                        #21

                        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

                        1 Reply Last reply
                        0
                        • M machman1

                          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.

                          X Offline
                          X Offline
                          Xoy
                          wrote on last edited by
                          #22

                          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)

                          1 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • World
                          • Users
                          • Groups