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. Why is .NET so popular? (Serious Question)

Why is .NET so popular? (Serious Question)

Scheduled Pinned Locked Moved The Lounge
csharphelpquestionc++java
146 Posts 75 Posters 60 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 Joe Woodbury

    I love writing assembly, just can't find an excuse too. I really do believe assembly should be learned by all CS students very early on. It sheds a whole lot of light on what's really going on with the computer and makes you very jaded about claims of new technology (since you know that it's all just assembly in the end.)

    P Offline
    P Offline
    Pete OHanlon
    wrote on last edited by
    #37

    Joe Woodbury wrote:

    I really do believe assembly should be learned by all CS students very early on

    Hear hear. I did 68000 assembly at Uni, and loved it. I still have a real fondness for it.

    I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

    Forgive your enemies - it messes with their heads

    My blog | My articles | MoXAML PowerToys | Onyx

    1 Reply Last reply
    0
    • L l a u r e n

      you really think .NET is good for web??? do you mean the c# language or the .NET runtime? if you mean c# then sure it's a nice language and works well for many tasks including web if you mean, however, .NET is good for web then i would respectfully say you are talking from the wrong end of your body ... .NET is the antithesis of what the web is about and consequently sucks at it ... the web is not the desktop and should not be treated as such ... just because someone can write a desktop app does not mean they can write a web app ... completely different problem domain with different rules and constraints that need to be understood properly to write a good web app (website / service / etc) would you think it a great idea to use say php to write desktop apps? that a good javascript programmer would necessarily be a good c++ programmer for desktop environments? no the inverse is true as well /end_rant

      "mostly watching the human race is like watching dogs watch tv ... they see the pictures move but the meaning escapes them"

      C Offline
      C Offline
      Chris Losinger
      wrote on last edited by
      #38

      l a u r e n wrote:

      you really think .NET is good for web??? do you mean the c# language or the .NET runtime?

      if we're going to be pedantic, then i mean .Net + C# + ASP.Net + IIS + every other thing that's required to accomplish what everyone means when they say something like "using .Net for web apps".

      l a u r e n wrote:

      .NET is the antithesis of what the web is about and consequently sucks at it

      i encourage you to read what i actually wrote.

      l a u r e n wrote:

      would you think it a great idea to use say php to write desktop apps?

      i have no idea what you're talking about, now.

      image processing toolkits | batch image processing

      L 1 Reply Last reply
      0
      • B b_dunphy

        I have some limited experience with C# and VS 2008 and I don't understand why the .Net framework is so popular. It is a meta environment running on top of the operating system just like Java and the non-Windows implementations do not have all of the capabilities of the Windows version so it's not truly cross platform. I don't see why -- other than Microsoft's semi-forcing the issue -- someone would choose to use this. Shouldn't Win32/64 code run just as well, if not better, since there is no runtime between the code and the system? I can't help thinking of Java or even UCSD P-System Pascal when I look at this. I realize .Net has a large amount of built-in functionality but the same thing could be implemented in native code as well. What am I not seeing here?

        R Offline
        R Offline
        realJSOP
        wrote on last edited by
        #39

        It's really not popular at all. The latest batch of relaesed wikileaks documents shows that it's a plot by the government to distract everyone while they conduct covert operations all over the world. Nobody is safe. NOBODY! Why did the farmer cross the road?

        .45 ACP - because shooting twice is just silly
        -----
        "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
        -----
        "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

        P L S L 4 Replies Last reply
        0
        • R realJSOP

          It's really not popular at all. The latest batch of relaesed wikileaks documents shows that it's a plot by the government to distract everyone while they conduct covert operations all over the world. Nobody is safe. NOBODY! Why did the farmer cross the road?

          .45 ACP - because shooting twice is just silly
          -----
          "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
          -----
          "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

          P Offline
          P Offline
          Pete OHanlon
          wrote on last edited by
          #40

          John Simmons / outlaw programmer wrote:

          Why did the farmer cross the road?

          To get a better vantage point to line up the sites on the chicken.

          I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

          Forgive your enemies - it messes with their heads

          My blog | My articles | MoXAML PowerToys | Onyx

          S 1 Reply Last reply
          0
          • P Pete OHanlon

            John Simmons / outlaw programmer wrote:

            Why did the farmer cross the road?

            To get a better vantage point to line up the sites on the chicken.

            I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

            Forgive your enemies - it messes with their heads

            My blog | My articles | MoXAML PowerToys | Onyx

            S Offline
            S Offline
            Single Step Debugger
            wrote on last edited by
            #41

            Pete O'Hanlon wrote:

            To get a better vantage point to line up the sites on the chicken.

            You are not allowed to misspell the weapons parts when John is around!

            There is only one Ashley Judd and Salma Hayek is her prophet! Advertise here – minimum three posts per day are guaranteed.

            P 1 Reply Last reply
            0
            • B b_dunphy

              I have some limited experience with C# and VS 2008 and I don't understand why the .Net framework is so popular. It is a meta environment running on top of the operating system just like Java and the non-Windows implementations do not have all of the capabilities of the Windows version so it's not truly cross platform. I don't see why -- other than Microsoft's semi-forcing the issue -- someone would choose to use this. Shouldn't Win32/64 code run just as well, if not better, since there is no runtime between the code and the system? I can't help thinking of Java or even UCSD P-System Pascal when I look at this. I realize .Net has a large amount of built-in functionality but the same thing could be implemented in native code as well. What am I not seeing here?

              C Offline
              C Offline
              CPallini
              wrote on last edited by
              #42

              On comparison, native memory management requires care, and MFC is a pain. :)

              If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
              This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
              [My articles]

              1 Reply Last reply
              0
              • R realJSOP

                It's really not popular at all. The latest batch of relaesed wikileaks documents shows that it's a plot by the government to distract everyone while they conduct covert operations all over the world. Nobody is safe. NOBODY! Why did the farmer cross the road?

                .45 ACP - because shooting twice is just silly
                -----
                "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
                -----
                "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

                L Offline
                L Offline
                Luc Pattyn
                wrote on last edited by
                #43

                He wants to discover why the hell the chicken did. :)

                Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

                Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

                1 Reply Last reply
                0
                • R realJSOP

                  It's really not popular at all. The latest batch of relaesed wikileaks documents shows that it's a plot by the government to distract everyone while they conduct covert operations all over the world. Nobody is safe. NOBODY! Why did the farmer cross the road?

                  .45 ACP - because shooting twice is just silly
                  -----
                  "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
                  -----
                  "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

                  S Offline
                  S Offline
                  Single Step Debugger
                  wrote on last edited by
                  #44

                  John Simmons / outlaw programmer wrote:

                  Why did the farmer cross the road?

                  To milk the bull with bear hands and earn a man points.

                  There is only one Ashley Judd and Salma Hayek is her prophet! Advertise here – minimum three posts per day are guaranteed.

                  S 1 Reply Last reply
                  0
                  • S Single Step Debugger

                    Pete O'Hanlon wrote:

                    To get a better vantage point to line up the sites on the chicken.

                    You are not allowed to misspell the weapons parts when John is around!

                    There is only one Ashley Judd and Salma Hayek is her prophet! Advertise here – minimum three posts per day are guaranteed.

                    P Offline
                    P Offline
                    Pete OHanlon
                    wrote on last edited by
                    #45

                    He's American. Spelling is an optional extra.

                    I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

                    Forgive your enemies - it messes with their heads

                    My blog | My articles | MoXAML PowerToys | Onyx

                    1 Reply Last reply
                    0
                    • F fjdiewornncalwe

                      You looking for your punch card collection, Henry?

                      I wasn't, now I am, then I won't be anymore.

                      V Offline
                      V Offline
                      virang_21
                      wrote on last edited by
                      #46

                      I remembered implementing mouse in DOS environment in Assembly language using interrupt signal and all but that was a fun project during college graduation. Cannot do it to earn my bread and butter ;P

                      Zen and the art of software maintenance : rm -rf * Math is like love : a simple idea but it can get complicated.

                      1 Reply Last reply
                      0
                      • _ _beauw_

                        That's not really a helpful response. It is valid to ask "at what level of abstraction should I be working?" The answer to this question is not, as many people seem to assume, that we ought to work at the highest level of abstraction possible. Abstraction is not necessarily an absolute good. At the lowest level of abstraction, we have machine language (NOT assembly language, as anyone who's ever hand-assembled code can tell you), followed by assembly language, and then by languages like C and Pascal, and then by newfangled technologies like .NET and Java, and finally by "code free" quasi-development technologies. As one moves among these levels of abstraction, there are tradeoffs. Moving up in abstraction reduces the speed of the object application and (more subtly, but importantly) the speed of the development tools. It also reduces the depth with which the developer can claim to understand his or her code; again, this is a subtle and oft-overlooked drawback to abstraction, but it's real. At each level, the returns to greater abstraction diminish. Assembly is much easier than machine language, which doesn't correspond to even the most basic human expectations of what a "language" should be. C is significantly easier than assembly, although the difference is less dramatic. C++ and C# offer benefits compared to C, but, again, these are not as dramatic as the previous steps up the abstraction ladder. I would submit that C#, Java, etc. may reside at a level of abstraction that is too high for many projects. Garbage collection is, for me, an example of why this is so. Look at what good C++ programmers do with automatic smart pointer variables, and then ask yourself whether an non-deterministic, out-of-thread system is really necessary to reclaim heap objects. Such "magic" definitely abstracts away some troublesome details... but are we sure (given the neat alternatives) that this is a good thing...? I can imagine plausible arguments both ways. Finally, let me assure you that for someone with a good basic understanding of digital computers, working with assembly language is easy. Personally, I do not find it to be any harder than much of the .NET work I do. Sure, assembly requires me to know about things like how numbers are represented, how looping and decision structures are implemented, etc., but it will also never present me with one of those head-scratching, out-of-the-blue errors that make it so difficult to work with high-level frameworks, e.g. "Failed set trust point in ssl context" or "P

                        A Offline
                        A Offline
                        AspDotNetDev
                        wrote on last edited by
                        #47

                        _beauw_ wrote:

                        it will also never present me with one of those head-scratching, out-of-the-blue errors that make it so difficult to work with high-level frameworks

                        The language and the framework are two different things. And you can use external code with assembly as well. Heck, you can make use of .Net DLL's using assembly. In which case you'd get that same "Failed set trust point in ssl context" error. The language itself is not really too much of an abstraction, but the amount it helps productivity is huge.

                        [Forum Guidelines]

                        _ 1 Reply Last reply
                        0
                        • L l a u r e n

                          you really think .NET is good for web??? do you mean the c# language or the .NET runtime? if you mean c# then sure it's a nice language and works well for many tasks including web if you mean, however, .NET is good for web then i would respectfully say you are talking from the wrong end of your body ... .NET is the antithesis of what the web is about and consequently sucks at it ... the web is not the desktop and should not be treated as such ... just because someone can write a desktop app does not mean they can write a web app ... completely different problem domain with different rules and constraints that need to be understood properly to write a good web app (website / service / etc) would you think it a great idea to use say php to write desktop apps? that a good javascript programmer would necessarily be a good c++ programmer for desktop environments? no the inverse is true as well /end_rant

                          "mostly watching the human race is like watching dogs watch tv ... they see the pictures move but the meaning escapes them"

                          P Offline
                          P Offline
                          Pete OHanlon
                          wrote on last edited by
                          #48

                          l a u r e n wrote:

                          would you think it a great idea to use say php to write desktop apps?

                          Somebody did[^].

                          I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

                          Forgive your enemies - it messes with their heads

                          My blog | My articles | MoXAML PowerToys | Onyx

                          L 1 Reply Last reply
                          0
                          • _ _beauw_

                            That's not really a helpful response. It is valid to ask "at what level of abstraction should I be working?" The answer to this question is not, as many people seem to assume, that we ought to work at the highest level of abstraction possible. Abstraction is not necessarily an absolute good. At the lowest level of abstraction, we have machine language (NOT assembly language, as anyone who's ever hand-assembled code can tell you), followed by assembly language, and then by languages like C and Pascal, and then by newfangled technologies like .NET and Java, and finally by "code free" quasi-development technologies. As one moves among these levels of abstraction, there are tradeoffs. Moving up in abstraction reduces the speed of the object application and (more subtly, but importantly) the speed of the development tools. It also reduces the depth with which the developer can claim to understand his or her code; again, this is a subtle and oft-overlooked drawback to abstraction, but it's real. At each level, the returns to greater abstraction diminish. Assembly is much easier than machine language, which doesn't correspond to even the most basic human expectations of what a "language" should be. C is significantly easier than assembly, although the difference is less dramatic. C++ and C# offer benefits compared to C, but, again, these are not as dramatic as the previous steps up the abstraction ladder. I would submit that C#, Java, etc. may reside at a level of abstraction that is too high for many projects. Garbage collection is, for me, an example of why this is so. Look at what good C++ programmers do with automatic smart pointer variables, and then ask yourself whether an non-deterministic, out-of-thread system is really necessary to reclaim heap objects. Such "magic" definitely abstracts away some troublesome details... but are we sure (given the neat alternatives) that this is a good thing...? I can imagine plausible arguments both ways. Finally, let me assure you that for someone with a good basic understanding of digital computers, working with assembly language is easy. Personally, I do not find it to be any harder than much of the .NET work I do. Sure, assembly requires me to know about things like how numbers are represented, how looping and decision structures are implemented, etc., but it will also never present me with one of those head-scratching, out-of-the-blue errors that make it so difficult to work with high-level frameworks, e.g. "Failed set trust point in ssl context" or "P

                            W Offline
                            W Offline
                            wout de zeeuw
                            wrote on last edited by
                            #49

                            Well, I provoked him, that's all, I did not hint about which is better/worse. His question was what he was not seeing. If he draws parallels between C++ and assembly he might end up thinking about productivity versus low level power. Ok, now about memory management, one thing managed environments do is shuffle memory around when needed. So it's not just garbage collection, it's also "defragmenting" the memory. There can also be advantages in freeing up memory when absolutely needed/when there is CPU available. This way you can allocate a lot of memory when it is needed, and the garbage collector will worry about releasing it when the time is right. So in practice it's pretty hard to beat .NET's memory management in just about all business applications that don't have real time requirements. Agreed about the error messages, but those are more framework library related than related to C#.

                            Wout

                            1 Reply Last reply
                            0
                            • F fjdiewornncalwe

                              You looking for your punch card collection, Henry?

                              I wasn't, now I am, then I won't be anymore.

                              S Offline
                              S Offline
                              Steve Mayfield
                              wrote on last edited by
                              #50

                              I still have mine in a spare bedroom closet :thumbsup:

                              Steve _________________ I C(++) therefore I am

                              S 1 Reply Last reply
                              0
                              • B b_dunphy

                                I have some limited experience with C# and VS 2008 and I don't understand why the .Net framework is so popular. It is a meta environment running on top of the operating system just like Java and the non-Windows implementations do not have all of the capabilities of the Windows version so it's not truly cross platform. I don't see why -- other than Microsoft's semi-forcing the issue -- someone would choose to use this. Shouldn't Win32/64 code run just as well, if not better, since there is no runtime between the code and the system? I can't help thinking of Java or even UCSD P-System Pascal when I look at this. I realize .Net has a large amount of built-in functionality but the same thing could be implemented in native code as well. What am I not seeing here?

                                M Offline
                                M Offline
                                Marc Clifton
                                wrote on last edited by
                                #51

                                b_dunphy wrote:

                                What am I not seeing here?

                                You must be new to programming, which is good, since I don't have to therefore manage the arduous task of deleting all the wrong pointers you've learned from other people. Something to reflect on. ;) Marc

                                modified on Wednesday, December 1, 2010 4:18 PM

                                B 1 Reply Last reply
                                0
                                • B b_dunphy

                                  I have some limited experience with C# and VS 2008 and I don't understand why the .Net framework is so popular. It is a meta environment running on top of the operating system just like Java and the non-Windows implementations do not have all of the capabilities of the Windows version so it's not truly cross platform. I don't see why -- other than Microsoft's semi-forcing the issue -- someone would choose to use this. Shouldn't Win32/64 code run just as well, if not better, since there is no runtime between the code and the system? I can't help thinking of Java or even UCSD P-System Pascal when I look at this. I realize .Net has a large amount of built-in functionality but the same thing could be implemented in native code as well. What am I not seeing here?

                                  L Offline
                                  L Offline
                                  LloydA111
                                  wrote on last edited by
                                  #52

                                  b_dunphy wrote:

                                  . I don't see why -- other than Microsoft's semi-forcing the issue

                                  Mainly that I think, and like you say, it can all be done in native code too! I'm not a particular fan of .NET either. If .NET was not effectively a VM then it wouldn't be as bad.


                                  See if you can crack this: fb29a481781fe9b3fb8de57cda45fbef

                                  The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."

                                  1 Reply Last reply
                                  0
                                  • R realJSOP

                                    It's really not popular at all. The latest batch of relaesed wikileaks documents shows that it's a plot by the government to distract everyone while they conduct covert operations all over the world. Nobody is safe. NOBODY! Why did the farmer cross the road?

                                    .45 ACP - because shooting twice is just silly
                                    -----
                                    "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
                                    -----
                                    "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

                                    L Offline
                                    L Offline
                                    LloydA111
                                    wrote on last edited by
                                    #53

                                    John Simmons / outlaw programmer wrote:

                                    Why did the farmer cross the road?

                                    I asked that joke yesterday ;P


                                    See if you can crack this: fb29a481781fe9b3fb8de57cda45fbef

                                    The unofficial awesome history of Code Project's Bob! "People demand freedom of speech to make up for the freedom of thought which they avoid."

                                    1 Reply Last reply
                                    0
                                    • B b_dunphy

                                      I have some limited experience with C# and VS 2008 and I don't understand why the .Net framework is so popular. It is a meta environment running on top of the operating system just like Java and the non-Windows implementations do not have all of the capabilities of the Windows version so it's not truly cross platform. I don't see why -- other than Microsoft's semi-forcing the issue -- someone would choose to use this. Shouldn't Win32/64 code run just as well, if not better, since there is no runtime between the code and the system? I can't help thinking of Java or even UCSD P-System Pascal when I look at this. I realize .Net has a large amount of built-in functionality but the same thing could be implemented in native code as well. What am I not seeing here?

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

                                      b_dunphy wrote:

                                      What am I not seeing here?

                                      You are not seeing that a popularity of a technology has little to do with its technical qualities. Why is PHP popular? Why is C popular? Why is Java popular? Why is Scheme not popular? Why is Haskell not popular?

                                      utf8-cpp

                                      K C 2 Replies Last reply
                                      0
                                      • M Marc Clifton

                                        b_dunphy wrote:

                                        What am I not seeing here?

                                        You must be new to programming, which is good, since I don't have to therefore manage the arduous task of deleting all the wrong pointers you've learned from other people. Something to reflect on. ;) Marc

                                        modified on Wednesday, December 1, 2010 4:18 PM

                                        B Offline
                                        B Offline
                                        b_dunphy
                                        wrote on last edited by
                                        #55

                                        I'm not really new to programming per se, I learned to program on an Apple ][+ in 1983 and have been programming ever since on various languages / platforms. What I am is self taught so my grasp of programming theory is iffy at best and I know it, that is why I asked. I am a Comp. Sci. major but the local community college is not offering the courses I need to finish my degree due to low demand for any one class and the economy.

                                        M 1 Reply Last reply
                                        0
                                        • N Nemanja Trifunovic

                                          b_dunphy wrote:

                                          What am I not seeing here?

                                          You are not seeing that a popularity of a technology has little to do with its technical qualities. Why is PHP popular? Why is C popular? Why is Java popular? Why is Scheme not popular? Why is Haskell not popular?

                                          utf8-cpp

                                          K Offline
                                          K Offline
                                          keyboard warrior
                                          wrote on last edited by
                                          #56

                                          Nemanja Trifunovic wrote:

                                          Why is Java popular

                                          it had a movie. movies always make things famous. JAVA: the movie[^]

                                          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