I am a programmer with 10 years of experience, primarily with C++. I have absolutely NO experience with the .NET framework.
I am working on a brand new application in my spare time, and I want to embrace the .NET framework. I have a few questions and would appreciate any and all advice that comes my way!
1. What version of the framework is recommended? 1.1 or 2.0? Why?
2. With C++ experience, is C# the easier route or should I jump into VB.NET? I've worked with VB in the past, but my understanding is that VB fundamentally changed with VB.NET.
3. Garbage collection. As a C++ programmer, the idea of letting the system collect my unused memory bothers me. I'm all in favor of it as long as it does it smartly. Is it possible to control WHEN garbage collection occurs, or is that completely up to the system?
4. My application will have a countdown timer managed by a single application instance (is this is same as a .NET AppDomain?) that will update all other application instances on the network as the timer progresses. In my C++ experience, I have used a multicast socket to accomplish this where the server application sends a single UDP packet to the multicast IP address and all the client applications connected to that multicast IP address receive and process the packet "simultaneously." How would I BEST accomplish this in the .NET framework? Should I continue to use multicast sockets in the System.Net.Sockets namespace or should I go with Web Services or .NET Remoting? What is the rationale for choosing any of these options?
Thanks in advance. I really appreciate any advice that you guys (and gals) can give me.
I am working on a brand new application in my spare time, and I want to embrace the .NET framework. I have a few questions and would appreciate any and all advice that comes my way!
1. What version of the framework is recommended? 1.1 or 2.0? Why?
2. With C++ experience, is C# the easier route or should I jump into VB.NET? I've worked with VB in the past, but my understanding is that VB fundamentally changed with VB.NET.
3. Garbage collection. As a C++ programmer, the idea of letting the system collect my unused memory bothers me. I'm all in favor of it as long as it does it smartly. Is it possible to control WHEN garbage collection occurs, or is that completely up to the system?
4. My application will have a countdown timer managed by a single application instance (is this is same as a .NET AppDomain?) that will update all other application instances on the network as the timer progresses. In my C++ experience, I have used a multicast socket to accomplish this where the server application sends a single UDP packet to the multicast IP address and all the client applications connected to that multicast IP address receive and process the packet "simultaneously." How would I BEST accomplish this in the .NET framework? Should I continue to use multicast sockets in the System.Net.Sockets namespace or should I go with Web Services or .NET Remoting? What is the rationale for choosing any of these options?
Thanks in advance. I really appreciate any advice that you guys (and gals) can give me.