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. In love with C#

In love with C#

Scheduled Pinned Locked Moved The Lounge
csharpc++
58 Posts 42 Posters 1 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.
  • K K Quinn

    At the risk of accusing you of never having decompiled anything, they don't do the same thing. VB's is more flexible, but functionally they serve different purposes, even if they can accomplish the same thing. Also, VB is dangerous. Two in 10 VB devs I've met are aware of option strict and out of those at least one advises against using it.

    K Offline
    K Offline
    KP Lee
    wrote on last edited by
    #46

    If you are a fan of strict, do you also always run checked on C#?

    1 Reply Last reply
    0
    • C Cathode Follower

      In many respects c# can be considered to be proprietary 'Microsoft Java'. As Java is a respectable language, the same can be said about c#, but as Java's roots are in c, there are still some hang-ups from that far-off time. The one I really hate is the switch statement. vb's select case statement is much better. Whoever heard of jump statements? Yuk! Nowadays we all believe in goto-free programming. The one thing I miss in all these modern languages is Algol 60's wonderful feature of being able to define arrays with ranges of indices from, say, -n to +n. This can be useful in all kinds of situations.

      K Offline
      K Offline
      KP Lee
      wrote on last edited by
      #47

      C# has a type of jump statement: if (YouDon_tLikeWhatJustHappened) return;

      1 Reply Last reply
      0
      • A AspDotNetDev

        I've never used it, but it's actually called MonoDevelop. Based on the screenshots, it looks pretty similar to Visual Studio. The downloads page shows you the prerequisites you need. You might want to just install it and give it a try. That being said, Mono does have some limitations. For example, it does not implement WPF (there is Moonlight, which is a port of Silverlight, though I am unsure of if it works for Mac OS X).

        Thou mewling ill-breeding pignut!

        K Offline
        K Offline
        KP Lee
        wrote on last edited by
        #48

        My how times changes meaning! When I was in college, if a fellow student said "I have mono.", he expected sympathy

        1 Reply Last reply
        0
        • T Thornik

          Ridiculous C# still has no virtual static methods. Even .NET has no such capability, what's suxx. C# cannot return multiple values from method. C# has very limited metaprogramming, it's a trend of the next decade. C#'s interfaces cannot be partly implemented inside themselves, even if method access no any fields. C# has no slices, killer feature of the D language. C# has no 'with' operator which reduces insignificant code. C# has ugly type cast syntax, which you have to use everywhere. In C# function cannot be overriden unless it's marked as virtual. LINQ syntax is also ugly. 'Switch' operator is the same primitive like you write on C in 70th! Seems, MS monkeys are happy with it. This list is a way far from completion, so sometime I think to leave this ridiculous student homework like ".NET" and use something more modern like 'D'.

          K Offline
          K Offline
          K Quinn
          wrote on last edited by
          #49

          What do programming languages and breakfast cereals have in common? Answer: The amount of sugar is inversely proportional to how well informed the consumer is.

          1 Reply Last reply
          0
          • M Mark Ginnane

            The designers of C# have irritated me in a number of ways: 1. I don't like the fact that they eliminated drop-through on case statements. It is irritating to have to code work-arounds for situations where one or more case statements can execute the same code. 2. The fact that they did not provide the ability to create static libraries that could be included at compile time and thus eliminate the need for having to ship umpteen dlls with your code. 3. This is more about .NET rather than C#, but I think it applies: With every version of .NET they take something away. In .Net V4 they removed the ability to catch memory exceptions...!!!##@^! 4. This is more about .NET rather than C#, but I think it applies: LINQ is not part of the framework! It is a binary lump that you can't step through in the debugger. Stop pretending it is part of the framework and part of C#

            K Offline
            K Offline
            K Quinn
            wrote on last edited by
            #50

            1. Methods anyone? 2. System.CodeDom.Compiler, System.Reflection.Assembly, etc 3. Maybe, but what can you really do with that in a managed language? If you're out of memory, you're out of memory. 4. Don't debug the framework, it defeats the purpose. Assume the framework works, report bugs you find, work around ones they don't fix. If you *really* need to debug it, decompile, proxy, rinse, repeat.

            1 Reply Last reply
            0
            • H hugo lara

              I have used Basic and Visual Basic, since Basic , VB6 and .net. The best of VB is that uses English words, and C#, and when developing for Desktop is easier and faster than c#, I'm developing in C# but just 'cause is a requisite here, 'cause a lot of programmers learns Jave in MExican schools. I have used more than 500 lines of code than in VB. And intellisense support is better in VB. But finally the 2 languages can make the same, they are compiled in CLR.

              K Offline
              K Offline
              K Quinn
              wrote on last edited by
              #51

              The topic is why C# is awesome, not why you like VB better.

              1 Reply Last reply
              0
              • M Member 4608898

                C# is OK as a language but the build env is really crap. MS haven't thought this one out at all. It is painful to maintain, painful to use and painful to deploy. When you work on a multiproject solution, it copies the DLLs from one project to another. If there are 50 projects, you could get 50 copies of the same DLL! Somewhere along the line, they get out of sync and you can't get the system back in sync without deleting every single bin and obj directory in the solution. You need to modify some flags to stop the DLLs copying all over the place and remind all developers that they need to do this to all new projects otherwise the mess starts all over again. If you work on libraries and have to support multiple compilers, it gets even worse. You can put the libraries in specific places but not the objects. So when you shift from say VS8 to VS9, VS9 looks at the objects, thinks they are up to date and doesn't bother building them, then says that the link failed. You actually need to modify the csproj file to get around this. Why do reference libraries in C# have to be on absolute paths. Person A sets up the development env on P:\Sally\Medical\Projects and checks in the code. If you don't have exactly the same file structure, you are completely stuffed: nothing builds! You can get around it with subst but that is another story. Person B sets up the development env on C: drive. If you aren't an administrator, you don't have access to the C: drive so you're completely stuffed too. Why do so many programmers think everyone is an administrator? Build a C# program - comes to 76K - wow that is really tiny. Try installing it on XP. It falls over - yes, you've guessed it, you need 20 to 30Mb of .net framework otherwise nothing works. Deployment using external DLLs is a real pain in C#. The bin directory contains all the C# DLLs but not any of the external DLLs that they use. When you deliver a system, you won't know what DLLs are missing until you call specific functions. By then you may be on a client site with no access to you dev env. Most C# programmers (even so called experienced ones) haven't experienced these pains so they don't know what it is like to really work with C#.

                K Offline
                K Offline
                K Quinn
                wrote on last edited by
                #52

                See: GAC deployment. You have to have some way to find your assemblies. If that doesn't work for you, try the path

                1 Reply Last reply
                0
                • K K Quinn

                  At the risk of accusing you of never having decompiled anything, they don't do the same thing. VB's is more flexible, but functionally they serve different purposes, even if they can accomplish the same thing. Also, VB is dangerous. Two in 10 VB devs I've met are aware of option strict and out of those at least one advises against using it.

                  C Offline
                  C Offline
                  Clifford Nelson
                  wrote on last edited by
                  #53

                  I have done a lot of VB programming, and I think that using keywords instead of brackets is a better idea since it is easier to understand where blocks end. I beleive that C is too terse, but it is the language I program in, and there are some keywords in VB I don't like, but that could be because of lack of familiarity since I have not programmed in versions of VB after 6.0

                  1 Reply Last reply
                  0
                  • E Eytukan

                    I've just starting doing some projects with C#. I've done some stuff previously but those were some casual utilities. I've just stepping into some real dotnet stuff. C# :Wow.. what a cool thing on earth. I'm liking it so much I might start talking in C#. The love for C++ isn't fading but C# is pure glamour. I'm yet to dive deep into the lang, but even at these depths, it's so much nicer than my experiences with other languages. C# is one of the best creations of MS! :rose: :love: :rose:

                    Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.

                    J Offline
                    J Offline
                    JBoyer11
                    wrote on last edited by
                    #54

                    I absolutely love C# and am not afraid to say it publicly. There are some Microsoft haters at my job (Apple fanboys) but I feel that at least in the development space, Microsoft is far ahead of many others. I think C# is 10x better than Java in many ways. I love its functional style (lambas, etc) and I think that LINQ is one of the greatest inventions in programming today. Also, the CLR is great and makes it so easy to use different languages in one application. For instance, using F# for the back end of a desktop app and C# for the front end works just fine. C# is definitely my favorite language. Also, no IDE can touch Visual Studio, I just wish it didn't cost so much.

                    1 Reply Last reply
                    0
                    • G GuyThiebaut

                      Enjoy your journey :thumbsup: I started on C# just over five years ago and have never looked back since - it is the most elegant programming language I have used so far.

                      “That which can be asserted without evidence, can be dismissed without evidence.”

                      ― Christopher Hitchens

                      T Offline
                      T Offline
                      Tiklu
                      wrote on last edited by
                      #55

                      C# definitely is a very elegant language. Atl east if you compare it with similar languages like Java or C++ or something similar. But if you extend your bounds then I would suggest you to give a try on Ruby as well. I have been using C# from beta 1 of .net and I recently started using Ruby. And I am loving this language.

                      Tiklu

                      U 1 Reply Last reply
                      0
                      • T Tiklu

                        C# definitely is a very elegant language. Atl east if you compare it with similar languages like Java or C++ or something similar. But if you extend your bounds then I would suggest you to give a try on Ruby as well. I have been using C# from beta 1 of .net and I recently started using Ruby. And I am loving this language.

                        Tiklu

                        U Offline
                        U Offline
                        User 8779101
                        wrote on last edited by
                        #56

                        c# and java are !Compareable with ruby, and the master of interpreted languages is PYTHON

                        1 Reply Last reply
                        0
                        • E Eytukan

                          I've just starting doing some projects with C#. I've done some stuff previously but those were some casual utilities. I've just stepping into some real dotnet stuff. C# :Wow.. what a cool thing on earth. I'm liking it so much I might start talking in C#. The love for C++ isn't fading but C# is pure glamour. I'm yet to dive deep into the lang, but even at these depths, it's so much nicer than my experiences with other languages. C# is one of the best creations of MS! :rose: :love: :rose:

                          Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.

                          F Offline
                          F Offline
                          Florin Jurcovici
                          wrote on last edited by
                          #57

                          Have a look at Scala.

                          1 Reply Last reply
                          0
                          • C Cathode Follower

                            In many respects c# can be considered to be proprietary 'Microsoft Java'. As Java is a respectable language, the same can be said about c#, but as Java's roots are in c, there are still some hang-ups from that far-off time. The one I really hate is the switch statement. vb's select case statement is much better. Whoever heard of jump statements? Yuk! Nowadays we all believe in goto-free programming. The one thing I miss in all these modern languages is Algol 60's wonderful feature of being able to define arrays with ranges of indices from, say, -n to +n. This can be useful in all kinds of situations.

                            T Offline
                            T Offline
                            ThatThatGuy
                            wrote on last edited by
                            #58

                            No one will go for a language to upgrade themselves which is syntactically alien to the recent language you've learnt or more different from the competitive language. After for you its all about easy learning and for people like Microsoft and others it all about business and making money...

                            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