Group: StrataFrame Developers
Posts: 6.6K,
Visits: 7K
|
All new development in our company is in C#, but that doesn't mean that you need to move to C#. We have chosen C# over VB.NET for a couple of reasons, but one of the biggest reasons is due to the horrible design-time compiler that crashes all the time on large projects. This consumes an enormous amount of energy and time trying to get things to avoid the pitfalls of the design-time compiler. Secondly, VB.NET does some automatic wiring that we generally like to have a little bit more control over in C#. An example of this is event wiring and handlers. C# is more nimble in this area. You can work around this in VB.NET in many cases though.
But just because the framework is written in C# doesn't mean that you need to swap. As for WPF, yes, the entire world will have to move in that direct over time. It is not being very well accepted by application developers are a whole. It has been quickly adopted by people who deal with more graphics intensive applications. We have recently written a very complex charting environment that is extremely graphics intensive. However, since the rest of our application was in WinForms, we had to write this in GDI+ instead of WPF. WPF doesn't play very nice with WinForms. There is a control that lets you run WinForm code within a WPF application, but the best example of how this works in when taking a WebBrowser control in a WinForms environment and then trying to make the two work together seamlessly as though there were no web environment in the mix.
So if you are going to go WPF, it should be all or nothing.
You can use LINQ now, though we do no have core functionality for LINQ. To be honest, we have not 100% decided if we will rely on link at any core level. It is very slow and has a lot of overhead. The largest the data set, the slower it becomes. The principal of LINQ is awesome, but in the end, we are developing real-world applications and the performance has to be there.
|