Managed C++ - worth the effort?
-
I do all my coding in C# nowadays. I'm ashamed to admit it :-O , but before .NET it was VB for me and before that plain old BASIC. I've done a little assembly too so I'm not scared of getting 'lower' level. I've just landed a new job (woohoo!) and part of it will be developing a bespoke application. There are no time limits on this and I'll be working on it alone, so I wondered if you guys thought it might be worth the effort of going down the C++ route (is managed C++ that much different to C#?) to broaden my experience? I could code it in C# but I fancy learning something that may prove to be useful. If not managed C++, what would you recommend?
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)I code in both C# and C++ (I've been doing C++ for over ten years now, C# for two years). C# is much easier, hands down, and given a choice I always go for C#. There are cases, however, where going C++ makes sense, esp where the client machine isn't expected to have the .NET framework. I'd go ahead and code your new project in C++ using VS2k8. It's one thing to read about using the Win32 and STL, quite another learning coding it. I would try to use generics for any collection classes and use patterns (such as the command pattern to encapsulate GUI commands/verbs). Bonus points would be to use background threads to update any GUI controls (such as a listbox) without crashing your app (you'll have to create delegates to safely update the control). C++ is still in use, and I don't expect it go away anytime soon... but I'd rather make my living in C# since (to me at least) it's so much easier. Congrats on your new job!
-
hi all! well i m student and a kid for you guys. i learned native C++ at college. i started codeing in VB6 for fun. thn moved to VS 2008 and found VC++ familier. i love coding in VC++ and VB .net. I am Working on stock market simulation software. Will it be good for me to learn C# and ASP now. I have to finish the software in one month. i have developed the database in Mysql and Client side of the game in C++. also I have to search for a job next year. Mohit
F#[^], it's non .NET sibling OCaml[^] and pure (standalone) cousin Haskell[^], appear to be making inroads with the financial sector[^]. Can't say if they will dethrone SmallTalk[^], since I'm not in the business, but makes Functional Programming worth a look. However, having written code for over 30 years in many languages, I found F# and Functional Programming to be one of those "mind bending" experiences like going from BASIC (and Assembly) to Pascal, from Pascal (and C) to C++, and now again from C++ to F#. Now that I understand the syntax, I (usually) find F# to be the most readable of the languages I know, and quite a lot of fun to write in, especially when "coding in the small[^]."
-
I do all my coding in C# nowadays. I'm ashamed to admit it :-O , but before .NET it was VB for me and before that plain old BASIC. I've done a little assembly too so I'm not scared of getting 'lower' level. I've just landed a new job (woohoo!) and part of it will be developing a bespoke application. There are no time limits on this and I'll be working on it alone, so I wondered if you guys thought it might be worth the effort of going down the C++ route (is managed C++ that much different to C#?) to broaden my experience? I could code it in C# but I fancy learning something that may prove to be useful. If not managed C++, what would you recommend?
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)One thing to consider when choosing a language is who is going to maintain it. You don't have any experience in C++ and there is a chance you'll realize you hate it after you've gotten far enough along witting this application that you couldn't start over. Then you're stuck finishing and maintaining the code until you leave that job. When you leave that job your employer now needs to hire someone who has Managed C++ experience in whatever any other custom applications are written in. You've expanded you're skills to the detriment of your employer. That being said, if I were going to start exploring a new language, I would start exploring WPF. I hated it the first week, but after I got the hang of it, I quickly grew to love it. You're expanding your skills, but within the realm of C#. You should also check out ADO.Net Data Service, Entity Framework, Linq. All powerful tools to put in your belt.
-
I do all my coding in C# nowadays. I'm ashamed to admit it :-O , but before .NET it was VB for me and before that plain old BASIC. I've done a little assembly too so I'm not scared of getting 'lower' level. I've just landed a new job (woohoo!) and part of it will be developing a bespoke application. There are no time limits on this and I'll be working on it alone, so I wondered if you guys thought it might be worth the effort of going down the C++ route (is managed C++ that much different to C#?) to broaden my experience? I could code it in C# but I fancy learning something that may prove to be useful. If not managed C++, what would you recommend?
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)If you're gonna do C++, and don't want to deal with MFC, check out the VCF[^], it's got a lot of the same things you probably like about .Net and C#, but it's done with native C++.
¡El diablo está en mis pantalones! ¡Mire, mire! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF! VCF Blog
-
I do all my coding in C# nowadays. I'm ashamed to admit it :-O , but before .NET it was VB for me and before that plain old BASIC. I've done a little assembly too so I'm not scared of getting 'lower' level. I've just landed a new job (woohoo!) and part of it will be developing a bespoke application. There are no time limits on this and I'll be working on it alone, so I wondered if you guys thought it might be worth the effort of going down the C++ route (is managed C++ that much different to C#?) to broaden my experience? I could code it in C# but I fancy learning something that may prove to be useful. If not managed C++, what would you recommend?
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)I personally think you should choose the language that fits the project you are working on. And even if learning a new language is fun, I don't think you should just choose a language because of fun. Remember that the application you create will have to be maintained sooner or later by somebody else than you. If you create it in a language that not everybody is comfortable using, you'll have trouble finding somebody who will maintain it successfully. Now, talking about fun, I have never used Managed C++, I got into the new revision which is called C++/CLI, and I loved it. I have a C++ background and the ability to use the .Net library and native libraries at the same time on the same module is just way too much power. In my opinion, C++/CLI is worth learning. Especially if you like low level stuff. I would use C++/CLI on: * Projects were integration with native modules is required. * Projects were performance on certain parts of the application are needed. * Projects were the need to use the full power of Concurrency is needed. Hope that helps, Alex.
-
I do all my coding in C# nowadays. I'm ashamed to admit it :-O , but before .NET it was VB for me and before that plain old BASIC. I've done a little assembly too so I'm not scared of getting 'lower' level. I've just landed a new job (woohoo!) and part of it will be developing a bespoke application. There are no time limits on this and I'll be working on it alone, so I wondered if you guys thought it might be worth the effort of going down the C++ route (is managed C++ that much different to C#?) to broaden my experience? I could code it in C# but I fancy learning something that may prove to be useful. If not managed C++, what would you recommend?
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)Learn what you think will pay you the most money. :) Probably not managed C++ (C++/CLI).
Kevin
-
Thanks for the suggestion - I'll have a good look at this.
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)You can install it into VS 2008 Standard or Pro right now. Or if you don't have those it works with the free VS 2008 Shell Integrated Mode. I played with it briefly a while back but had to uninstall it for other reasons. There is now a quite developed F# dev center. http://msdn.microsoft.com/en-gb/fsharp/default.aspx[^]
Kevin
-
You can install it into VS 2008 Standard or Pro right now. Or if you don't have those it works with the free VS 2008 Shell Integrated Mode. I played with it briefly a while back but had to uninstall it for other reasons. There is now a quite developed F# dev center. http://msdn.microsoft.com/en-gb/fsharp/default.aspx[^]
Kevin
I've installed it already - haven't had the time to play yet. Hoping this weekend...!
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia) -
I've installed it already - haven't had the time to play yet. Hoping this weekend...!
Dave
BTW, in software, hope and pray is not a viable strategy. (Luc Pattyn)
Visual Basic is not used by normal people so we're not covering it here. (Uncyclopedia)It's quite fun but a bit mind-boggling initially. Different paradigm and all that.
-
If, like the OP, I developed .NET, I'd be all over F#. As I target native code, I have a bit more freedom, so I tend to use Haskell when I have the chance rather than OCaml, which is F#'s inspiration - I don't know why, but I've always preferred what Haskell offers.