Paradigm Shift

Embrace the new paradigm. .NET is not just another environment. C# is not just another programming language. This represents a seismic shift not only technically but philosophically in our approach to product development. Spend the necessary time to educate yourself in the best practices of this environment. Reading this book is a good first step. But go further. As a manager, you must be willing to make the investment in knowledge. The return on that investment will be exponential. The result will be a higher quality application that leverages the strengths and avoids the weaknesses of this environment. As mentioned previously, large applications ported to .NET from Windows "as is" will probably start with bugs. The environments are different and require a fresh perspective to programming and product development.

The .NET Framework is not Windows. Don’t develop native Windows applications in .NET. Instead, write a managed application. For example, don’t continue to use native APIs for methods available in the .NET Framework Class Library. Do not use unsafe code to avoid difficult porting decisions. Understand the technical and semantic differences between garbage collection in native versus managed environments.

C# is a fully object-oriented language, not a hybrid like C++. If the intention is to continue to write procedural code, keep C or C++ as the preferred language. In the managed environment, forget about the bits and the bytes. Managed languages, such as C#, create a safe envelope where developers can focus on engineering customer solutions and not low-level plumbing. C and C++ programming languages rely on developers to micromanage everything. From memory management to obtaining a device context to draw graphics in a window, you are involved in everything. In the managed arena, you fortunately subjugate much of this to the CLR.

I remember teaching Windows programming in C nearly 15 years ago. At that time, Window 3.1 was the current operating system. The first day was always spent teaching how to render a blank window. This is a window with no text, menu, icons, or anything—simply a blank window. Eight hours just for that. There was no discussion on how to create great business solutions. We were mired in too many low-level details to discuss anything else. Not surprisingly, software applications from that era are very complicated, hard to maintain, and not customer centric. In .NET, these details fortunately have been abstracted. As a developer, you have been freed from this minutia. In .NET, I can teach someone how to create a blank window in one minute. Most of the minute would be spent choosing the appropriate background color for the window. How about mauve? For this reason, you can focus on creating exceptional business solutions. Managed code frees the developer to be creative and not just a technician. This freedom will allow developers to create a new generation of applications.

Tip

Tip

In C#, write fully managed applications. Anything less compromises the objective.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.118.32.222