Tuesday, February 18, 2014

DOT NET

Why Use DOT NET?

DOT NET hasn't traditionally been the Site Point community’s framework of choice for Web development. A simple comparison of the activity within the PHP and the DOT NET forums highlights this fact. But with the release of Site Point’s first ASP DOT NET book, I thought it was about time us DOT NET ers stood proud, and shouted from the rooftops exactly what makes this technology so good.

However, it isn't the purpose of this article to deride other technologies; this isn't "PHP vs. DOT NET Part 2". Every platform, framework, and architecture has its own strengths and weaknesses, and DOT NET is no exception. So, the features highlighted in this article aren't discussed as if they are unique or necessarily better in DOT NET, but it should give those who are still dipping toes into DOT NET some good reasons to dive right in.

Language Preference


                DOT NET is language neutral. As mentioned at the start of this article, all DOT NET compilers interpret and compile your code to the same base language, IL  to run on the CLR. This means you can happily use Visual Basic DOT NET and receive the same performance and functionality of those traditionally more powerful languages like C++. In essence, you can choose the language you use.

            As with spoken languages, the availability of information in the form of example differs from language to language. While you may be able to read and express anything you would wish to in Esperanto, to read the majority of content on the Web, you'll still need a decent grasp of English. This is similar with DOT NET. You may choose Eiffel DOT NET as the language with which to develop your applications, yet most examples and references you'll find will be coded in either C# or VB DOT NET. To apply these to Eiffel, you'll need an understanding of these languages as well.

            So, what are the choices? C# is a language developed by Microsoft specifically for DOT NET. Taking a similar syntax style to that of Java, C# is recognized as a clean, modern language and, with its similarity to Java, is a great bridge from Java to DOT NET. Visual Basic DOT NET VB.NET extends Visual Basic 6 to offer the power of object orientated programming within DOT NET. In a nutshell, anyone who's already familiar with VB 6 will have little problem moving up to VB DOT NET.

General level explanation

DOT NET framework gives to developers freedom of choosing the language they would like to use in doing DOT NET programming (C#, VB, C++/CLI ...). It even enables using multiple languages in the same project where the code developed in different languages cooperate seamlessly. That is possible due to the fact that DOT NET framework operates only with the intermediate language (IL) code. IL code is created during the compile time by language compilers which translate high level code (c#, vb..) concepts to a combination of language agnostic IL code and its metadata. That IL code together with that metadata and headers makes a unit called managed module.
One or more managed modules and zero or more resource files are linked by language compiler or assembly linker to a managed assembly, which we see as DOT NET DLL file. Every assembly contains also embedded manifest file which describes structure of the assembly types member definition, structure  of external assembly member references etc.,


This diagram and general level explanation are roughly sufficient for L100 explanation, but my personal preference is that always complement the big picture approximated explanation with some concrete implementation details so I'll do that here to by explaining in more details structure of managed module . I'll try to minimize talking and maximize illustrations and pictures so it would be shorter, more reader friendly while still having some weight.





No comments:

Post a Comment