stickleprojects Level: Moderator

 Registered: 09-09-2002 Posts: 891
|
Re: why should one move to .Net platform ?
tri_inn,
When you say "interview purpose" what do you mean? What scope? As to why one should move to .NET.... why not?
From a business perspective, there is the underlying cost of upgrading a number of client machines to cope with the .NET platform (most of my clients do not run XP), re-training the team to program in .NET (no mean feat from a business perspective), re-writing all current commercial apps to take advantage of speed-increase with aspects of .NET, unlearning current VB6 shortcuts as they are no longer possible/needed in .NET, obtaining .NET versions of external controls (although this is optional, I agree), unlearning DCOM as not proper .NET, ... hmm.... not much commercial reason to move to .NET.
However,
VB6 is not supported by MS any more, so cannot tell the users to call MS with problems already known ;),
.NET keeps the developers happy that they are learning something good for their CVs,
The new communications technologies now freely accessible in .NET (ie. SOAP, Sockets, etc.) helps to "future proof our company against the competition"
Closer integration between the languages helps to reduce the cross-training required when fixing / debugging other code - this helps resource re-use once everyone has learnt the .NET code as a VB.NET programmer will have considerably less difficulty understanding C# than a VB vs C++ environment.
Improvements in the IDE increase productivity.
The .NET OO approach encourages structured design and code-reuse by enforcing the namespace paradigm thereby encouraging developers to group related functions together.
The main reason is future support from MS and the newsgroups. This forum is supported by a wealth of VB6 developers however, developers will move to the .NET environment over time and no technical support will be available and we will be reduced to second-hand knowledge and an ever-increasing list of "known issues" that we cannot solve for our customers.
I agree that in the short-term, I will not be recommending a wholesale move to the .NET platform for the majority of our clients, however, I am offering it as an option for green-field development for our clients based on the future-proofing argument.
If you want the technical sales speak about how to sell it to the interviewers / boss, look on the MSDN. We can all evangalise about .NET and about VB6, but either way you look at it. .NET is as good as the developer, but then again, so is VB6. .NET is easier to do technical stuff for the newbie to programming, but you'll still have to unlearn a lot of bad habits from VB6.
Here are the main differences i've found:
Serialization in .NET RULES!!!! Take a class, call "serialize" on the serializer and the class is saved to disk.. properties and all without extra code in the class itself! cool!
XML Serialization - good, but doesn't handle inheritence very well
Class Inheritance! Excellent in .NET (compared to VB6). Promoting code-reuse and only modifying the differences between parent/child objects without having to recode the interface! yay!
Subclassing! Easy in .NET.. want to override the Paint message? Easy! Non of the ssubtmr stuff required.
DCOM! Gone from .NET (without reverting to the COM layer). It is now called Remoting and is more difficult to set up without hard-coding the target computer (about 100 lines of code, if i remember right, to identify a machine and set up the communications to it)
MTS / COM+. Not supported in .NET without going down to com-interrupt layer.
.NET usually much faster than VB6, when not using advanced VB6 optimising techniques.
As you can see, there's loads of stuff different. To "sell" .NET you would have to identify the current uses of your company and offset the cost of training against the increase in speed / future-proofing, etc.
Hope this helps,
Kieron
____________________________
Build it better, faster, quicker, easier.. then fix it (non-offical MS mission statement)
|