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.
  • S Septimus Hedgehog

    Have you used it yourself? I'd be very interested in reading about any hands-on experience with it. I know I could look for reviews elsewhere but you get a different perspective from someone who works at the coalface, so to speak.

    "I do not have to forgive my enemies, I have had them all shot." — Ramón Maria Narváez (1800-68).

    T Offline
    T Offline
    TRK3
    wrote on last edited by
    #40

    I have used MonoDevelop a bit to Unity scripts in C#. I prefer it to XCode and Objective-C any day of the week. I can't really compare it with VS since 90% of what I do in VS is native C++ and the 10% of C# I do has to interface with the native C++ so there is always that hassle. Plus, what little I've done in Mono has been small programs which are always more fun and elegant than the big legacy monsters I deal with in VS / C++. What I can say is that Mono is simple and intuitive and seems to just work.

    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.

      M Offline
      M Offline
      Member 4608898
      wrote on last edited by
      #41

      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 1 Reply Last reply
      0
      • G Gerco de Jager

        I'll never regret changing our default language from VB to C#! Love the syntax. Minor grudge: When looking at a pile of '}' having to add an 'else' it's difficult to navigate to the right one. Really hate: It's Case Sensitive! Which might be usefull for computer generated code, but makes no sense at all when man made. However, todays IDE's compensate retty well for that evil...

        M Offline
        M Offline
        Member 4608898
        wrote on last edited by
        #42

        Put your cursor on the }, press ctrl ] and it will take you to the matching one.

        1 Reply Last reply
        0
        • C Clifford Nelson

          C# is not perfect, and the framework is not perfect, but I think that the teams that work on both Visual Studio and the languages, in particular the C# team do an excellent job. There are still areas that I think should have been improved in C# a long time ago, some of which are in Visual Basic. 1) In VB you can embed XML. 2) The case statement can be much more powerful. It is something that should be used sparingly, but that said, if it is used sparingly, then it should be reasonable to extend its capability. 3) Should be able to tag properties as Dependency Properties, and not have to do a full implementation unless you need to do something special. So on and so on.

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

          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 C 2 Replies Last reply
          0
          • C Clifford Nelson

            Oh I can just see how excited Apple would be once everybody starts using the Microsoft Framework for apps that run on Apple. The look and feel would be Microsoft and not Apple, and Apple would have to make thier own OS UI compatible. Then there would be less reason to pay the permium for Apple computers. Only advantage would be the sexy hardware designs.

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

            I suppose that depends entirely on what you find sexy.

            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.

              Y Offline
              Y Offline
              Ytrail
              wrote on last edited by
              #45

              I like C# better than Java, but mainly because of VS amazing GUI Designer (makes life a lot easier!). As a matter of fact, I'm looking forward to C# 5.0 coming out soon. :)

              ~ Somebody left a footprint...o0=... here...

              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.

                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