Hello,
I'm learning C++, but i see that .Net is a very nice framework, then i want to ask: "It's difficult to develop in .Net?", remember that i have some knowledge of VB and Delphi. I'm using Windows Vista Ultimate. Thanks!
Hello,
I'm learning C++, but i see that .Net is a very nice framework, then i want to ask: "It's difficult to develop in .Net?", remember that i have some knowledge of VB and Delphi. I'm using Windows Vista Ultimate. Thanks!
Not at all. I started a job in VB .NET in February with no VB and no .NET experience. Of course I had 27 years of experience in other languages, but between google, msdn tutorials, and a book it didn't really slow me down at all.
That being said, developing in C++ CAN be difficult - why are you learning it at all? I would go for C# first, in the .NET framework, because of the managed memory. Without memory management, when your memory gets messed up it can be the actual debugger memory so that it might point you to an error that is completely bogus. So, you're never certain about whether the information you get back after an error is correct.
For example, a memory error in one procedure could have the debugger showing you an error in a printf statement in completely different routine.
In summary, .NET isn't hard - but C++ is.
Definitely no - it's not difficult :). If you like C-like languages, C# will make you feel just right. If you are a VB programmer, you can use it (with some changes) in .NET world. And yes, the framework is great :).
Also you have access to the C++/CLI, although I wouldn't recommend to use it as a main language, as it's harder / less readable then using C#/VB (although it's great for interoperating with unmanaged world when PInvoke mechanism is not enough).
The difficulty is going to be determined more by the specific language than the framework.
If you are doing C++ windows programming and moving to C++.NET it should be easier. At least in my experience.
.NET is actually easier to learn and use than "bare" C++, since .NET does memory management on your behalf, while in C++ you have to arrange for it yourself one way or another.
C++ is still a very useful skill to have under your belt, so, since you've started with it, you might as well complete the job of learning it (assuming you've gone some way in your learning to this point, of course); but then adding on .NET will have a good return on investment for you (if you develop for Microsoft platforms only, you'll definitely find yourself using .NET more than C++!).
Note that you will be able to reuse to some extent your C++ skills and existing code with .NET (via "managed C++"), though, for susbstantial .NET use, you'll surely want to learn C# as well since it's the "core" language out of the many that run on .NET.
Hello For All,
With this good answers now i want to learn something about .Net, but what is the best free IDE for .Net development. Thanks!
C++ to .Net should be better framed as "C++ to C# or VB.Net".
Remember, .Net is a framework, NOT a language. C# , VB.Net, or other .Net language are built on .Net framework. I find it easier to learn C# if you have some other object oriented language background such as C++ or Java. It's just anther language with the similar syntax. However, .Net framework is a much, much bigger area , and it takes a lot of real world experiences to master it or portion of it. For example, .Net framework has a lot of web framework which you can only probably learn it by doing asp.net, a lot of regular expression library which you can learn by doing a lot of string processing.
For C# language, which is the most popular language on .Net platform, I recommend the book C# in Depth. For .Net framework itself, i recommend CLR via C#.
The choice of language depends on your needs and how would you like to use it .
C++ may be hard to learn , but if you go to the depth of it, you shall find it more interesting. To me it is the language of choice. C++ can be used to work on various softwares, starting from p2p clients , device drivers, application , embedded and many more.
C# on the other hand is wrapper around Windows Programming. I have heard that it is similar to VB, but as I have never worked on VB , I can not comment. I have worked on VC++ , and feel C# as a stripped down version of VC++. In C# you don't need to know what happens when you change the property of a text box control, so one never needs to know Windows Programming for that. So if you want to do Windows Programming without knowing what is actual "Windows Programming" C# should be the choice. By chance if you need Windows Programming, use System.Runtime.Interop for the interoperability.
Enjoy ...
I'm a long time C++ programmer and I found C#/.NET extremely easy to master and enjoyable to program in. I find that C# allows one to do more with a lot less code than C++. My main quibble with it is that it is another vendor lock-in language that is not very accessible outside the Microsoft universe.
If you know any dynamic languages (like Ruby), you should already be familiar with all the CS principles behind the language features that aren't part of C++. If you know VB.NET at all that should help you greatly as well as you can almost cut and paste the .NET calls between C# and VB.
.NET in Managed C++ is a real pain IMHO, but .NET and C# were meant to go together.
Think that .NET is to C# as the Windows/Win32 API is to C++.