Monday, December 8, 2008

DOT NET FRAMEWORK

Open Source .NET Distributions:
http://www.mono-project.com [ Linux SUSE, Fedora, MAC OS]
http://www.dotgnu.org [ Win 32, AIX, BeOS, MAC, Solaris, Linux,…]
Microsoft .NET can be considered from different points of view. As a platform, it consists of the following product groups.
1. Development Tools set of languages (>20 languages under one engine CLR)
2. .NET Enterprise Servers(for B2B BizTalk,SQLServer, ExchangeServer...)
3. Web Services (.NET Myservices,Passport,Alerts,...)
4. .NET for devices(Windows ME,Windows CE, Windows Embedded,...)

.NET Framework:
A platform for building, deploying and running web services and applications. Highly productive, standards-based, multi language environment.

Design Goals of .NET framework:
1. Component Infrastructure
2. Language Integration
3. Internet interoperation
4. Simple Development
5. Simple Deployment
6. Reliability
7. Security

1- All classes are ready to be reused at the binary level, similar way to plug-and-play the hardware components.

2- One can’t reuse the COM components written by someone else; you can’t extend a class hosted in the COM component; you can’t catch exception thrown by code in the COM component. Through .NET CTS you can achieve inherit from classes, catch exceptions and take advantage of polymorphism across different languages. These different languages can intermingle with one another.

3- Simple, lightweight protocol for distributed computing. (SOAP=xml+http)

4- .NET provides set of framework classes and lets every language use it. Removes the need of learning a new API each time you switch languages.

5- Overcome DLL hell problem : {Stop working of an application if you update a software, it overwrites the old dll.}If you have two versions of dll, both called abc.dll both of them can live and execute on the same system without causing Dll hell.

6- Exception handling work across all .NET compatible languages. Autmatic Garbage Collection for objects that are no longer needed.

7- Protect access to specific parts of executable code, write code in your method to explicitly cause a security check. Make harder to penetrate your applications and system.

Common Language Runtime:
CLR is a unified environment for all of the languages available for .NET. There is no difference if you write code in VB.NET, C#.NET or Perl.NET – your code will still be run in the same environment and have access to the common subset of classes. We can even mix and match code in different programming languages, including full multilingual object-oriented features, such as inheriting objects, created in one language from the code, written in other language. All of this is made available by Common Language Runtime.

.NET Framework Class Library:
The .NET Framework includes classes, interfaces, and value types that are used in the development process and provide access to system functionality. To facilitate interoperability between languages, the .NET Framework types are Common Language Specification (CLS) compliant and can therefore be used from any programming language where the compiler conforms to the CLS.
The .NET Framework types are the foundation on which .NET applications, components, and controls are built. The .NET Framework includes types that perform the following functions:
• represent base data types and exceptions;
• encapsulate data structures;
• perform I/O operations;
• access information about loaded types via reflections;
• invoke .NET Framework security checks;
• provide data access, rich client-side GUI, and server-controlled, client-side GUI.

No comments: