MS.NET Framework Concepts

Description

This presentation provide .NET Framework Fundamentals and core pillars.

Comments (1)
Allen -  Wednesday, March 18, 2009 06:22 PM
Wonderful, this course is perfect for someone not only in development but as tech support also in understanding the function of .net
Would you like to comment?

Sign In if already a member, or Join Now for a free account.

Presentation Transcript Presentation Transcript

.NET Framework FundamentalsLevel – 200Duration – 60 minutesTheory session : .NET Framework FundamentalsLevel – 200Duration – 60 minutesTheory session Design and Presentation : CareerFruits – path to success…© CareerFruits Inc. All rights reserved. PART 1 of 2

Agenda : Agenda .NET Framework Design Goals High level .NET Architecture .NET Versions .NET Execution Model CLR - Overview Managed Vs Unmanaged Code Metadata and Reflection Framework Base Classes

.NET Framework – What /Why? : .NET Framework – What /Why? The .NET Framework is an integral Windows component that supports building and running the next generation of applications and XML Web services. Objectives To provide a consistent object-oriented programming environment To provide a code-execution environment that minimizes software deployment and versioning conflicts promotes safe execution of code eliminates the performance problems of scripted or interpreted environments To make the developer experience consistent across widely varying types of applications To build all communication on industry standards to ensure that code based on the .NET Framework can integrate with any other code

.NET Design Goals : .NET Design Goals Component Infrastructure Language Integration Simplified Development Simplified Deployment Reliability Interoperability Security Portability

.NET Framework Layers : .NET Framework Layers Windows Platform Common Language Runtime(CLR) (debug, exception, CTS, Memory Management, Life Cycle Management) Framework Base Classes (IO, net, security, threading, text, reflection, collections etc.) Web Services Web Forms (ASP. NET) Windows Forms .NET Framework

.NET Framework Versions : .NET Framework Versions http://en.wikipedia.org/wiki/.NET_Framework_version_list

CLI – Common Language Infrastructure : CLI – Common Language Infrastructure The purpose of the CLI is to provide a language-agnostic platform for application development and execution, including functions for exception handling, garbage collection, security, and interoperability. Microsoft's implementation of the CLI is called the Common Language Runtime, or CLR. The CLR is composed of four primary parts: Common Type System (CTS) Common Language Specification (CLS) Metadata Virtual Execution System (VES)

The Common Language Runtime : The Common Language Runtime The common language runtime provides an execution environment for .NET Framework applications The common language runtime includes these features: Common type system Just-in-time compiler Security support Garbage collection and memory management Class loader COM interoperability

CLR Features : CLR Features The common language runtime manages Memory thread execution code execution code safety verification compilation, and other system services. These features are intrinsic to the managed code that runs on the common language runtime.

Architecture of the .NET Framework : Architecture of the .NET Framework Others VB C# VB compiler C# compiler Microsoft Intermediate Language (MSIL) Etc… Common Language Runtime (CLR) Win32 API CLS Compiler MyClass Source Code Compiler Operating System Base Class Libraries

Execution model : Execution model VB.NET MC++ C# MSIL code (plus metadata) Loader/verifier Uncompiled method call Language compilers .NET languages JIT compiler

Managed Vs Unmanaged Code : Managed Vs Unmanaged Code

Managed Code – What? : Managed Code – What? Gets benefits from CLR features cross-language integration cross-language exception handling enhanced security versioning and deployment support a simplified model for component interaction debugging and profiling services.

What is a .NET Assembly? : What is a .NET Assembly? Unit of deployment MSIL code is housed in .NET assemblies Assemblies are stored in the Portable Executable (PE) format, common on the Windows platform for all DLL and EXE files The assembly consists of one or more files, but one of these must contain the manifest, which has the metadata for the assembly

What is Metadata? : What is Metadata? Metadata is machine-readable information about a resource, or "data about data.“ In .NET Metadata includes: type definitions version information external assembly references other standardized information Metadata is usually generated by language compilers but developers can create their own metadata through custom attributes.

More about Metadata : More about Metadata language compilers emits metadata that describes the types, members, and references in your code. Metadata is stored with the code; every loadable common language runtime portable executable (PE) file contains metadata. As part of their metadata, all managed components carry information about the components and resources they were built against The runtime uses metadata to locate and load classes, lay out instances in memory, resolve method invocations, generate native code, enforce security, and set run-time context boundaries

Reflection Overview : Reflection Overview All types in the CLR are self-describing CLR provides a reader and writer for type definitions System.Reflection & System.Reflection.emit You can ‘read’ programs You can map between type systems You can interrogate objects and types inside a running program

.NET Reflection Core Concepts : .NET Reflection Core Concepts Metadata Single location for type information and code Code is literally contained within type information Every .NET object can be queried for its type Types' metadata can be explored with Reflection Dynamic Type System Highly dynamic and language independent Types may be extended and built at run-time Allows on-the-fly creation of assemblies .NET Compilers use .NET to emit .NET code

Manifest : Assembly Metadata : Manifest : Assembly Metadata Metadata that describes everything about the assembly, including Its identity, list of files belonging to the assembly, references to external assemblies, Exported types, exported resources permission requests. In short, it describes all the details that are required for component plug-and-play.

.NET Framework Class Library : .NET Framework Class Library Collection of reusable types tightly integrate with the common language runtime. object oriented, providing types from which your own managed code can derive functionality. enable you to accomplish a range of common programming tasks, including tasks such as string management, data collection, database connectivity, and file access includes types that support a variety of specialized development scenarios.

What Are Namespaces? : What Are Namespaces? What Are Namespaces? Namespaces are collections of names that are organized in functional groupings, such as classes, interfaces, and enumerators Namespaces are used in everyday life and in computing

How Are Namespaces Referenced? : How Are Namespaces Referenced? Classes and types are packaged as assemblies A namespace can be partitioned over several assemblies An assembly can contain types from several namespaces Assemblies are an important part of the .NET Framework To add a reference to an assembly in your project: In Solution Explorer, right-click the References folder Select the assembly you require

Application Type and Services : Application Type and Services Console applications Windows GUI applications (Windows Forms) Windows Presentation Foundation (WPF) applications ASP.NET applications Web services Windows services. Service-oriented applications using Windows Communication Foundation (WCF) Workflow-enabled applications using Windows Workflow Foundation (WF).

Resources and Next Steps : Resources and Next Steps Attend Part II C# Language Programming Ask Questions Articles MSDN Links Study Material @CareerFruits Provide Feedback

Sandeep Joshi
Freedom of Learning : Careerfruits
User

Related Online Classes

Biswadip Goswami
Your First asp.Net Project - Part 1 by Biswadip
Tue, December 23, 08 7:00 PM
(IST)
Copyrights © 2009 authorGEN. All rights reserved.