Why Visual Studio.Net?
Here is a series of questions that provide a background
to Visual Studio.Net. The answers highlight the problems and opportunities in using Visual
What is Visual Studio.Net?
Visual Studio.Net lets developers adopt a unified programming paradigm, regardless of the language
chosen. The Integrated Development Environment now includes Visual Basic, ASP.Net, Visual
C#, Visual C++, Visual J#, Web Services, Web Control Library, Console Applications, Windows
Services. All are in the Visual Studio.Net package.
Visual Studio.Net has taken off with a bang
Microsoft's .Net has had a high rate of adoption – it is now the most widely used development
platform. Microsoft has concentrated a huge effort in making the product system/market dominant.
Visual Studio.Net is the strategic direction of all future Windows software development. From
Vista on, the Windows Operating Systems will be using more and more of this technology.
Why is Microsoft pushing this new technology so hard?
Windows has been constantly evolving, and the old Operating Systems use the techniques of the
last century. The technology behind Visual Studio.Net required a complete rewrite of Windows
– fixing all known problems and using the best of development techniques. All the cumbersome
routines created higgledy-piggledy over the years have been replaced by a cohesive system
of Object Oriented routines. All the new Windows operating system releases will be geared
to the new technology.
This was not a minor project. It did not just involve programming language changes. The big
feature was "Managed Code" – which eliminates Memory leakage and the corruption problems
which have plagued Windows from inception. The new technology caters for 64 bits – allowing
bigger and better storage, databases, etc. All security will be dependent upon it. The .Net
Framework (code Libraries) will be included in each new Windows Operating System, making deployment
easier and smaller.
Are there any other reasons to adopt the new technology?
The new buzz words are Inheritance and Object Oriented programming. There are productivity
gains for programmers. Rich Class Libraries make programming easier. XML is handy for transferring
data between heterogeneous systems. There are now consistent APIs (Application Programming
Interface). Self contained deployment packages, elimination of "DLL hell", no registration
– make for easier deployment. ADO.Net now has Disconnected Recordsets – essential
for Web database access, and faster than the old ADO. Multi-threading is an appealing feature
– this allows background processing, while the user continues working. There is better
A word of caution from Microsoft about Object Oriented programming:
Visual Basic provides polymorphism through inheritance. This is a powerful
mechanism for small-scale development tasks, but has generally proven to be problematic for
large-scale systems. An over-emphasis on inheritance-driven polymorphism typically results
in a massive shift of resources from coding to designing, which does nothing to shorten overall
development time. Given that the real test of software is whether it works for end users,
tools for rapid prototyping and rapid application development (RAD) have gained wider acceptance
than tools for object-oriented programming.
Coding Horror - Jeff Atwood
I've seen so many problems caused by excessive, slavish adherence to
OOP in production applications. Not that object oriented programming is inherently bad, mind
you, but a little OOP goes a very long way. Adding objects to your code is like adding salt
to a dish: use a little, and it's a savoury seasoning; add too much and it utterly ruins the
meal. Sometimes it's better to err on the side of simplicity, and I tend to favour the approach
that results in less code, not more.
Despite Visual Basic.Net providing Object Oriented programming features, most Visual Basic
projects will have no requirement for OOP. It is recommended that, besides the use of Encapsulation
and Inheritance for code and object Re-use, the Object Oriented features be used only when
there is absolutely no other alternative.
Object oriented programming is the fastest way to convert simple logic into complex spaghetti
A word of caution about XML
XML has empowered a whole new class of Web services. XML allows for the easy to parsing of
data. XML data is both well-structured and self-describing.
But XML has a size problem. It uses 19 characters to store a text representation of the integer
value 1. And that does not include the open and close tags for the document, nor any schema
Visual Studio 2012
The Visual Studio 11 Release To Manufacturing (RTM) version is available for download. It supports
Windows 8 and the Windows Azure cloud. It comes with .NET Framework 4.5.
Some of the new features are:
Asynchronous programming has been made easier. Iterators can be used to access lists or arrays.
Call Hierarchy will display all calls to procedures. There is now support for CSS3 and HTML5.
LocalDB replaces SQL Server Express as the default database. There is now IPv6 support. LINQ
is more efficient. Report Definition (.rdlc) Files no longer have to be created using VS2008
- they are now available in VS2012.
After a huge amount of bad press from developers about the bland User Interface, Microsoft
have now provided a Blue Theme option. And NiceVS replaces the black Icons and makes them