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
Studio.Net:
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 error handling.
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.
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
code.
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
references.
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.
But ...
After a huge amount of bad press from developers about the bland User Interface, Microsoft
have now provided a VS2010 Blue Theme option. Now if only the Icons could be changed back.