SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 1 | P a g e
030010401- GUI Programming
Unit-6: Introduction to .NET Framework
BCA 4th Semester
Note: - This material is prepared by Ms. Preeti P Bhatt. The basic
objective of this material is to supplement teaching and discussion
in the classroom. Student is required to go for extra reading in the
subject through library work.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 2 | P a g e
Topic Covered
 .NET framework: Evolution and Benefits
 Architecture of .NET framework
 Common Language Runtime:
– CLR functions, managed code, unmanaged code, memory management
 .NET Framework Class Library
 Common Language Specification
 Metadata and Assemblies:
– Assembly contents, manifest, GAC, strong name assembly, private and shared
assemblies, side by side execution
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 3 | P a g e
1. .NET Introduction
Definition: .Net is a collection of tools and technologies and language that all are work
together in a framework to provide a solution need for develop application.
.NET is Microsoft’s strategy of software that provides service to people any time, any place, on
any device.
.NET is a new framework for developing web-based and windows-based applications within the
Microsoft environment.
It also known as Software Platform or Language neutral
Benefits Of .NET
• Consistent programming model: -
– .NET provides a consistent object oriented programming model across different
language.
• Cross – platform support:-
– Any windows platform that supports CLR can execute a .NET application.
• Language Interoperatibility:-
– It is a feature that enable program written in different languages to interact with
each other.
– This allows reusability of code and improves the efficiency of development
process.
– You can inherit visual basic class in C#.
• Automatic management of resources:-
– You do not need to manually free the application resources, such as file,
memory, and network and database connection.
• Ease of deployment:-
– It make task of deployment easier.
– Easy deployment of application by installing new application.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 4 | P a g e
2. .NET Framework
The .NET framework exposes numerous classes to the developer. These classes allow the
development of rich client applications and Web based applications.
.Net Framework component
 Common Language Runtime(CLR)
 Base Class Library (BCL)
 ASP. Net and XML
 Web form and Window Form
 Common Language specification (CLS)
Block Diagram of .NET Framework
C++ C# VB Perl J# ..........
Visual
Studio
.NET
Common Language Specification
(CLS)
ASP.NET
Web Forms, Web
Services
Windows
Form
ADO.NET (Data and XML)
Base Class Library (BCL)
Common Language Runtime (CLR)
Operating System
2.1 Common Language Runtime
At the base is the common language runtime.
It is the heart of the .Net Framework; it is the engine that compiles and run the application.
It uses MSIL (Microsoft Intermediate Language) format code which is language independent
for execution. The MSIL code is translated by JIT (Just in Time Compiler) compiler.
CLR manages code execution at runtime.
It include
 Common Type System
• It include common type, standard interface convention, make cross language
inheritance.
 Memory Management
• Allocation and management of memory
 Life cycle Monitoring
 CLR also does reference counting for object and handles garbage collection.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 5 | P a g e
2.2 Base Class Library (BCL)
It is a second entity of .NET framework which is designed to integrate with CLR.
It is also known as Framework class Library (FCL).
The Base Class Library (BCL) is a standard library available to all languages using the .NET
Framework.
Class libraries implement a large number of common functions such as
 File reading and writing,
 Graphic rendering,
 Database interaction,
 XML document manipulation.
The .NET class libraries are available to all CLI (Common Language Infrastructure) compliant
languages.
The .NET Framework class library is divided into two parts:
 Base Class Library
 Framework Class Library
2.3 ASP. Net and XML
It is also known as Data Access Layer. With this we can access relational databases.
It work with XML and provide the Disconnected Data Model
This layer includes the next generation of standard system service such as ADO.NET and
XML.
It is a part of BCL. It consists of two parts:
1) Data Provider: Connection, Command, DataAdapter, Data Reader
2) DataSet
These services are brought under the control of framework, making them universally
available and standardizing their usage across language.
2.4 Web form & Web Services and Window Form
a. Web form & Web Services
• Web forms
It provide toll for web application. It is a part of ASP.NET.
 Manageable code
 Logical evolution of ASP (compiled)
• Web service is a method of communication between two electronic devices over
the web.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 6 | P a g e
b. Window Form or Win Form
It used to create the GUI for windows desktop application.
It has rich variety of windows controls and user with win Forms.
2.5 Common Language specification (CLS)
Common Language Specification (CLS) is a set of basic language features that .Net Languages
needed to develop Applications and Services, which are compatible with the .Net Framework.
It is a set of rules and constraints that all languages must follows which want to be
compatible with .NET framework.
Language Support VB, C++, C#, J#, JScript
3. Common Language Runtime
At the base is the common language runtime.
It is the heart of the .Net Framework; it is the engine that compiles and run the application.
It uses MSIL (Microsoft Intermediate Language) format code which is language independent
for execution. The MSIL code is translated by JIT (Just in Time Compiler) compiler.
CLR manages code execution at runtime.
It include
 Common Type System
• It include common type, standard interface convention, make cross language
inheritance.
 Memory Management
• Allocation and management of memory
 Life cycle Monitoring
 CLR also does reference counting for object and handles garbage collection.
Component of CLR
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 7 | P a g e
• Common Type System (CTS)
• It is responsible for interpreting the data types into the common format.
• IL compiler (Intermediate Language)
• The IL Compiler takes in the IL code and converts it to the host machine
language.
• Security
• Security component in the CLR ensures that the assembly (the program being
executed) has permissions to execute certain functions.
• Garbage Collector
• Its function is to recover the memory when the object is no longer in use, this
avoids memory leaks.
• Class Loader
• Purpose is to load the classes needed by the executing application.
Working of CLR
Code running under the control of the CLR is often termed managed code.
Two step of compilation
1. Compilation of source code to IL (Intermediate Language)
• The .Net program is compiled in to special type of code called the Microsoft
Intermediate Language (MSIL)
– When .NET code is compiled, the output of compiler is not an executable
file but a file that contains special type of code called MSIL code, which is
a special low-level set of instructions understood by CLR.
2. Compilation of IL to platform-specific(native code) code by the CLR
• This MSIL is turned into executable code using a JIT (Just In Time) complier.
– When .NET programs are executed, the CLR activates JIT compiler.
– The JIT compiler converts MSIL code into native code on a demand.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 8 | P a g e
Benefits of CLR
• Automatic memory management: -
– The CLR provides the Garbage Collection feature for managing the life time of
object.
• Standard Type System: -
– The CLR Implement a formal Specification called the Common Type System (CTS).
CTS are important part of rules that ensures that objects written in different
language can interact with each other.
• Language interoperability: -
– It is the ability of an application to interact with another application written in a
different programming language
• Platform Independence: -
– The Compiler compiles code language, which is CPU-independent. This means
that the code can be executed from any platform that supports the .Net CLR.
• Security Management: -
– In .Net platform, Security is achieved through the code access Security (CAS)
model.
• Type Safety: -
– This feature ensures that object is always accessed in compatible ways.
Therefore the CLR will prohibit a code from assign a 10-byte value to an object
that occupies 8 bytes.
– Versioning and deployment services: -
– It supports side - by - side execution of multiple version of the same component,
even within the same process.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 9 | P a g e
Important Terms
 Manage Code
“The code that is developed with a language compiler that target the CLR is
called manage code”.
Managed Code in Microsoft .Net Framework, is the code that has executed by
the Common Language Runtime (CLR) environment.
Manage code is code that is executed directly by CLR. The application created by
manage code automatically have CLR services, such as type checking, security
automatic garbage collection.
 Unmanaged Code
“The code that is developed without considering the conventional and
requirements of the CLR is called unmanaged code”.
Unmanaged code directly compiled to the machine code and runs on the machine
where it has been compiled.
CLR does not provide services, such as type checking, security automatic garbage
collection to unmanaged code.
Unmanaged code executes in CLR environment with minimal services.
For example, unmanaged code may run with limited debugging and without
garbage collection process.
Manage code consists of MSIL and Metadata
 Memory management
One of the important services that CLR provides during managed executions is
automatic memory management.
CLR uses garbage collection to manage the allocation and release of memory.
 MSIL Code
NET programs are compiled by the language compilers into assemblies that
consist of Microsoft Intermediate Language (MSIL) instructions.
MSIL: It is a CPU-independent set of instructions that can be efficiently converted
to native code.
MSIL is also known as IL or CIL.
CLR compiles MSIL in just-in-time (JIT) manner – each function is compiled just
before execution.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 10 | P a g e
JIT Compiler
Just in Time (JIT) Compiler gets its name because it compiles your managed code
into executable native code on the fly. That is, it compiles the IL just as it's
needed.
During the code execution time, the Managed Code compiled only when it is
needed, that is it converts the appropriate instructions to the native code for
execution just before when each function is called. This process is called Just In
Time (JIT) compilation, also known as Dynamic Translation.
4. Base Class Library (BCL)
The .Net Framework class library provides the core functionality of .Net Framework
architecture.
The .Net Base Class Library (BCL) includes a huge collection of reusable classes, interfaces,
and value types that provide access to system functionality.
Framework class library (FCL) is huge library of reusable types meant to be used by
managed code.
It is an object oriented library used in component based application.
Important Point in FCL:
 The classes, interface, structures, and enumerated value are collectively referred
as type.
 Different type in .NET framework is arranged in hierarchy of namespace.
 The system namespace is root namespace in .NET framework.
 All class have base class including user defined types.
Namespace
Namespaces are the way to organize .NET Framework Class Library into a logical grouping
according to their functionality, usability as well as category they should belong to.
Namespaces are logical grouping of types for the purpose of identification.
The .NET Framework Class Library (BCL) is a large collection of thousands of Classes. These
Classes are organized in a hierarchical tree.
The System Namespaces is the root for types in the .NET Framework.
We can uniquely identify any Class in the .NET Base Class Library (BCL ) by using the full
Namespaces of the class .
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 11 | P a g e
5. Common Language Specification (CLS)
Common Language Specification (CLS) is a set of basic language features that .Net
Languages needed to develop Applications and Services, which are compatible with the .Net
Framework.
When there is a situation to communicate Objects written in different .Net languages, those
objects must expose the features that are common to all the languages.
Common Language Specification (CLS) ensures complete interoperability among
applications, regardless of the language used to create the application.
“The CLS defines a superset of the CTS to enable cross-language interoperability”.
The CLS defines a (large) superset of the CTS that a language must obey if it wishes to
interoperate with other CLS-compliant languages.
For example, the CLS requires support for most CTS value types, including Boolean, Byte,
Char, Decimal, Int16, Int32, Int64, Single, Double, and more.
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 12 | P a g e
Common Type System
Common Type System (CTS) describes a set of types that can be used in different
.Net languages in common.
That is the Common Type System (CTS) ensure that objects written in different .Net
languages can interact with each other.
These types can be
 Value Types
 Reference Types.
The Value Types are passed by values and stored in the stack.
The Reference Types are passed by references and stored in the heap.
Common Type System (CTS) provides base set of Data Types which is responsible for
cross language integration.
6. Metadata and Assembly
Metadata
A data about data is known as metadata.
It describes program that is in the form of binary information stored in CLR portable
executable (PE) file or in memory.
– When compilation of code take place in PE file, the metadata is inserted into one
part of the file,
– While code is converted in to MSIL and inserted in to other part of file.
Metadata contains the following:
– Assembly Information:
• Its identity like name, version, culture public key, the type of assembly,
other assembly and security permission.
– Information about Type
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 13 | P a g e
• Name, visibility, base class, interface used, and members.
– Attribute information
• This modifies the type and members of class.
Assembly
Microsoft .Net Assembly is a logical unit of code, it contains code that the Common
Language Runtime (CLR) executes.
When you compile an application, the MSIL code created is stored in an assembly.
Assembly: It is a collection of types and resource information that are built to work
together and form a logical unit of functionality.
Every Assembly you create contains one or more program files and a Manifest.
There are two types’ program files.
 Executable (EXE) and
 Dynamic linking Library Assemblies (DLL).
Assembly can be divided in two types
– Static Assembly: It includes interface, classes, and resources and stored in PE
files on a disk.
– Dynamic Assembly: you can create dynamic assemblies that run directly from
memory; therefore there is no need of saving them on disk before execution.
o After execution you can store then in a disk.
Manifest Assembly:
An assembly manifest is a text file containing metadata about .NET assemblies.
– Manifest describes the relationship and dependencies of the components in the
assembly,
– Versioning information, scope information and the security permissions
required by the assembly.
– Information stored in assembly manifest
• Assembly name, version number, culture, list of all file in assembly.
GAC: Global Assembly Cache
• It is a central place for registering assemblies, so that different application on the
computer can use it later on.
• Assembly must be made sharable by registering them in GAC only, when needed,
otherwise the assembly must be kept private.
• Deploy assembly in GAC using any one of the following
– An installer that is designed to work with GAC
030010401 BCA 4th Semester
Preeti P Bhatt Department of Computer Science, UTU. 14 | P a g e
– The global assembly cache tool known as Gacutil.exe
– Window explorer to drag assemblies into cache.
Strong name assembly
A strong name assemblies contains the assemblies' identity
– Assembly’s name, version number, culture information, public key and digital
signal.
Using private key, the assembly file containing the manifest generates the strong name.
Benefits of strong assembly
– Provides uniqueness to the names by generating a private key.
– Ensures that the version you are using comes from the same publisher that
creates the version.
– Facilities integrated checks, which ensures that content of assembly have not
changed since last build.
Private and Shared assembly
Private Assembly
When single application uses assembly, it is called private assembly.
Example: You have created a DLL containing information about your business logic and
placed it in same folder in which the client application has been installed. So DLL can
only be used by your client program.
Shared Assembly
Shared assembly are placed in the global assembly cache so that they can be used by
multiple application
Example: You have created DLL that needs to be reused in different application. Instead
of downloading copy of DLL in each and every client application, the DLL can be placed
in global assembly cache.
Side – by – Side Executions
It is a process where multiple version of an application or component are stored and
executed on the same computer.
Means you have multiple version of application and component that uses a particular
version of runtime on same computer at same time.

Más contenido relacionado

La actualidad más candente

Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsQUONTRASOLUTIONS
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net FundamentalsAli Taki
 
Introduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsIntroduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsQuontra Solutions
 
Interview Question of Aspdotnet
Interview Question of AspdotnetInterview Question of Aspdotnet
Interview Question of AspdotnetMohitKumar1985
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarPriyankaPinglikar
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET PlatformPeter R. Egli
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iRakesh Joshi
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iRakesh Joshi
 
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)citizenmatt
 
Java vs .net
Java vs .netJava vs .net
Java vs .netTech_MX
 
Visual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 OverviewVisual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 OverviewHarish Ranganathan
 
.Net framework interview questions
.Net framework interview questions.Net framework interview questions
.Net framework interview questionsMir Majid
 
Chapter 1 introduction to .net
Chapter 1 introduction to .netChapter 1 introduction to .net
Chapter 1 introduction to .netRahul Bhoge
 

La actualidad más candente (20)

Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutions
 
Introduction to .net
Introduction to .netIntroduction to .net
Introduction to .net
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
 
Introduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsIntroduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutions
 
Interview Question of Aspdotnet
Interview Question of AspdotnetInterview Question of Aspdotnet
Interview Question of Aspdotnet
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka Pinglikar
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
 
Dotnet basics
Dotnet basicsDotnet basics
Dotnet basics
 
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
 
Java vs .net
Java vs .netJava vs .net
Java vs .net
 
C Sharp Jn
C Sharp JnC Sharp Jn
C Sharp Jn
 
Visual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 OverviewVisual Studio 2010 and .NET Framework 4.0 Overview
Visual Studio 2010 and .NET Framework 4.0 Overview
 
Inside.Net
Inside.NetInside.Net
Inside.Net
 
.Net framework interview questions
.Net framework interview questions.Net framework interview questions
.Net framework interview questions
 
Java chapter 1
Java   chapter 1Java   chapter 1
Java chapter 1
 
Java swing 1
Java swing 1Java swing 1
Java swing 1
 
Programming
Programming Programming
Programming
 
Chapter 1 introduction to .net
Chapter 1 introduction to .netChapter 1 introduction to .net
Chapter 1 introduction to .net
 

Similar a Unit6

.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .netpinky singh
 
election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...dnnindia
 
1 get started with c#
1   get started with c#1   get started with c#
1 get started with c#Tuan Ngo
 
Introduction to .net
Introduction to .net Introduction to .net
Introduction to .net Jaya Kumari
 
DotNet Framework
DotNet FrameworkDotNet Framework
DotNet FrameworkWani Zahoor
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptxRaajzKoirala
 
.Net the begining
.Net the begining.Net the begining
.Net the beginingcncwebworld
 
Session2 (3)
Session2 (3)Session2 (3)
Session2 (3)DrUjwala1
 
04 iec t1_s1_oo_ps_session_05
04 iec t1_s1_oo_ps_session_0504 iec t1_s1_oo_ps_session_05
04 iec t1_s1_oo_ps_session_05Niit Care
 
.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3aminmesbahi
 

Similar a Unit6 (20)

.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
 
.Net slid
.Net slid.Net slid
.Net slid
 
C# chap 2
C# chap 2C# chap 2
C# chap 2
 
election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...
 
1 get started with c#
1   get started with c#1   get started with c#
1 get started with c#
 
Introduction to .net
Introduction to .net Introduction to .net
Introduction to .net
 
DotNet Framework
DotNet FrameworkDotNet Framework
DotNet Framework
 
c#.pptx
c#.pptxc#.pptx
c#.pptx
 
Asp.net new
Asp.net newAsp.net new
Asp.net new
 
1.0
1.01.0
1.0
 
C Sharp Jn
C Sharp JnC Sharp Jn
C Sharp Jn
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptx
 
.Net the begining
.Net the begining.Net the begining
.Net the begining
 
Session2 (3)
Session2 (3)Session2 (3)
Session2 (3)
 
04 iec t1_s1_oo_ps_session_05
04 iec t1_s1_oo_ps_session_0504 iec t1_s1_oo_ps_session_05
04 iec t1_s1_oo_ps_session_05
 
.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3
 
VB IMPORTANT QUESTION
VB IMPORTANT QUESTIONVB IMPORTANT QUESTION
VB IMPORTANT QUESTION
 
1 what is microsoft .net framework
1 what is microsoft .net framework1 what is microsoft .net framework
1 what is microsoft .net framework
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
 
.Net framework
.Net framework.Net framework
.Net framework
 

Más de Abha Damani (20)

Unit2
Unit2Unit2
Unit2
 
Unit5
Unit5Unit5
Unit5
 
Unit4
Unit4Unit4
Unit4
 
Unit3
Unit3Unit3
Unit3
 
Unit 1 introduction to visual basic programming
Unit 1 introduction to visual basic programmingUnit 1 introduction to visual basic programming
Unit 1 introduction to visual basic programming
 
Ch14
Ch14Ch14
Ch14
 
Ch12
Ch12Ch12
Ch12
 
Ch11
Ch11Ch11
Ch11
 
Ch10
Ch10Ch10
Ch10
 
Ch08
Ch08Ch08
Ch08
 
Ch01 enterprise
Ch01 enterpriseCh01 enterprise
Ch01 enterprise
 
3 data mgmt
3 data mgmt3 data mgmt
3 data mgmt
 
2 it supp_sys
2 it supp_sys2 it supp_sys
2 it supp_sys
 
1 org.perf it supp_appl
1 org.perf it supp_appl1 org.perf it supp_appl
1 org.perf it supp_appl
 
Managing and securing the enterprise
Managing and securing the enterpriseManaging and securing the enterprise
Managing and securing the enterprise
 
Ch6
Ch6Ch6
Ch6
 
Unit2
Unit2Unit2
Unit2
 
Unit 3
Unit 3Unit 3
Unit 3
 
Unit 4
Unit 4Unit 4
Unit 4
 
Unit 5
Unit 5Unit 5
Unit 5
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 

Unit6

  • 1. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 1 | P a g e 030010401- GUI Programming Unit-6: Introduction to .NET Framework BCA 4th Semester Note: - This material is prepared by Ms. Preeti P Bhatt. The basic objective of this material is to supplement teaching and discussion in the classroom. Student is required to go for extra reading in the subject through library work.
  • 2. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 2 | P a g e Topic Covered  .NET framework: Evolution and Benefits  Architecture of .NET framework  Common Language Runtime: – CLR functions, managed code, unmanaged code, memory management  .NET Framework Class Library  Common Language Specification  Metadata and Assemblies: – Assembly contents, manifest, GAC, strong name assembly, private and shared assemblies, side by side execution
  • 3. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 3 | P a g e 1. .NET Introduction Definition: .Net is a collection of tools and technologies and language that all are work together in a framework to provide a solution need for develop application. .NET is Microsoft’s strategy of software that provides service to people any time, any place, on any device. .NET is a new framework for developing web-based and windows-based applications within the Microsoft environment. It also known as Software Platform or Language neutral Benefits Of .NET • Consistent programming model: - – .NET provides a consistent object oriented programming model across different language. • Cross – platform support:- – Any windows platform that supports CLR can execute a .NET application. • Language Interoperatibility:- – It is a feature that enable program written in different languages to interact with each other. – This allows reusability of code and improves the efficiency of development process. – You can inherit visual basic class in C#. • Automatic management of resources:- – You do not need to manually free the application resources, such as file, memory, and network and database connection. • Ease of deployment:- – It make task of deployment easier. – Easy deployment of application by installing new application.
  • 4. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 4 | P a g e 2. .NET Framework The .NET framework exposes numerous classes to the developer. These classes allow the development of rich client applications and Web based applications. .Net Framework component  Common Language Runtime(CLR)  Base Class Library (BCL)  ASP. Net and XML  Web form and Window Form  Common Language specification (CLS) Block Diagram of .NET Framework C++ C# VB Perl J# .......... Visual Studio .NET Common Language Specification (CLS) ASP.NET Web Forms, Web Services Windows Form ADO.NET (Data and XML) Base Class Library (BCL) Common Language Runtime (CLR) Operating System 2.1 Common Language Runtime At the base is the common language runtime. It is the heart of the .Net Framework; it is the engine that compiles and run the application. It uses MSIL (Microsoft Intermediate Language) format code which is language independent for execution. The MSIL code is translated by JIT (Just in Time Compiler) compiler. CLR manages code execution at runtime. It include  Common Type System • It include common type, standard interface convention, make cross language inheritance.  Memory Management • Allocation and management of memory  Life cycle Monitoring  CLR also does reference counting for object and handles garbage collection.
  • 5. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 5 | P a g e 2.2 Base Class Library (BCL) It is a second entity of .NET framework which is designed to integrate with CLR. It is also known as Framework class Library (FCL). The Base Class Library (BCL) is a standard library available to all languages using the .NET Framework. Class libraries implement a large number of common functions such as  File reading and writing,  Graphic rendering,  Database interaction,  XML document manipulation. The .NET class libraries are available to all CLI (Common Language Infrastructure) compliant languages. The .NET Framework class library is divided into two parts:  Base Class Library  Framework Class Library 2.3 ASP. Net and XML It is also known as Data Access Layer. With this we can access relational databases. It work with XML and provide the Disconnected Data Model This layer includes the next generation of standard system service such as ADO.NET and XML. It is a part of BCL. It consists of two parts: 1) Data Provider: Connection, Command, DataAdapter, Data Reader 2) DataSet These services are brought under the control of framework, making them universally available and standardizing their usage across language. 2.4 Web form & Web Services and Window Form a. Web form & Web Services • Web forms It provide toll for web application. It is a part of ASP.NET.  Manageable code  Logical evolution of ASP (compiled) • Web service is a method of communication between two electronic devices over the web.
  • 6. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 6 | P a g e b. Window Form or Win Form It used to create the GUI for windows desktop application. It has rich variety of windows controls and user with win Forms. 2.5 Common Language specification (CLS) Common Language Specification (CLS) is a set of basic language features that .Net Languages needed to develop Applications and Services, which are compatible with the .Net Framework. It is a set of rules and constraints that all languages must follows which want to be compatible with .NET framework. Language Support VB, C++, C#, J#, JScript 3. Common Language Runtime At the base is the common language runtime. It is the heart of the .Net Framework; it is the engine that compiles and run the application. It uses MSIL (Microsoft Intermediate Language) format code which is language independent for execution. The MSIL code is translated by JIT (Just in Time Compiler) compiler. CLR manages code execution at runtime. It include  Common Type System • It include common type, standard interface convention, make cross language inheritance.  Memory Management • Allocation and management of memory  Life cycle Monitoring  CLR also does reference counting for object and handles garbage collection. Component of CLR
  • 7. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 7 | P a g e • Common Type System (CTS) • It is responsible for interpreting the data types into the common format. • IL compiler (Intermediate Language) • The IL Compiler takes in the IL code and converts it to the host machine language. • Security • Security component in the CLR ensures that the assembly (the program being executed) has permissions to execute certain functions. • Garbage Collector • Its function is to recover the memory when the object is no longer in use, this avoids memory leaks. • Class Loader • Purpose is to load the classes needed by the executing application. Working of CLR Code running under the control of the CLR is often termed managed code. Two step of compilation 1. Compilation of source code to IL (Intermediate Language) • The .Net program is compiled in to special type of code called the Microsoft Intermediate Language (MSIL) – When .NET code is compiled, the output of compiler is not an executable file but a file that contains special type of code called MSIL code, which is a special low-level set of instructions understood by CLR. 2. Compilation of IL to platform-specific(native code) code by the CLR • This MSIL is turned into executable code using a JIT (Just In Time) complier. – When .NET programs are executed, the CLR activates JIT compiler. – The JIT compiler converts MSIL code into native code on a demand.
  • 8. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 8 | P a g e Benefits of CLR • Automatic memory management: - – The CLR provides the Garbage Collection feature for managing the life time of object. • Standard Type System: - – The CLR Implement a formal Specification called the Common Type System (CTS). CTS are important part of rules that ensures that objects written in different language can interact with each other. • Language interoperability: - – It is the ability of an application to interact with another application written in a different programming language • Platform Independence: - – The Compiler compiles code language, which is CPU-independent. This means that the code can be executed from any platform that supports the .Net CLR. • Security Management: - – In .Net platform, Security is achieved through the code access Security (CAS) model. • Type Safety: - – This feature ensures that object is always accessed in compatible ways. Therefore the CLR will prohibit a code from assign a 10-byte value to an object that occupies 8 bytes. – Versioning and deployment services: - – It supports side - by - side execution of multiple version of the same component, even within the same process.
  • 9. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 9 | P a g e Important Terms  Manage Code “The code that is developed with a language compiler that target the CLR is called manage code”. Managed Code in Microsoft .Net Framework, is the code that has executed by the Common Language Runtime (CLR) environment. Manage code is code that is executed directly by CLR. The application created by manage code automatically have CLR services, such as type checking, security automatic garbage collection.  Unmanaged Code “The code that is developed without considering the conventional and requirements of the CLR is called unmanaged code”. Unmanaged code directly compiled to the machine code and runs on the machine where it has been compiled. CLR does not provide services, such as type checking, security automatic garbage collection to unmanaged code. Unmanaged code executes in CLR environment with minimal services. For example, unmanaged code may run with limited debugging and without garbage collection process. Manage code consists of MSIL and Metadata  Memory management One of the important services that CLR provides during managed executions is automatic memory management. CLR uses garbage collection to manage the allocation and release of memory.  MSIL Code NET programs are compiled by the language compilers into assemblies that consist of Microsoft Intermediate Language (MSIL) instructions. MSIL: It is a CPU-independent set of instructions that can be efficiently converted to native code. MSIL is also known as IL or CIL. CLR compiles MSIL in just-in-time (JIT) manner – each function is compiled just before execution.
  • 10. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 10 | P a g e JIT Compiler Just in Time (JIT) Compiler gets its name because it compiles your managed code into executable native code on the fly. That is, it compiles the IL just as it's needed. During the code execution time, the Managed Code compiled only when it is needed, that is it converts the appropriate instructions to the native code for execution just before when each function is called. This process is called Just In Time (JIT) compilation, also known as Dynamic Translation. 4. Base Class Library (BCL) The .Net Framework class library provides the core functionality of .Net Framework architecture. The .Net Base Class Library (BCL) includes a huge collection of reusable classes, interfaces, and value types that provide access to system functionality. Framework class library (FCL) is huge library of reusable types meant to be used by managed code. It is an object oriented library used in component based application. Important Point in FCL:  The classes, interface, structures, and enumerated value are collectively referred as type.  Different type in .NET framework is arranged in hierarchy of namespace.  The system namespace is root namespace in .NET framework.  All class have base class including user defined types. Namespace Namespaces are the way to organize .NET Framework Class Library into a logical grouping according to their functionality, usability as well as category they should belong to. Namespaces are logical grouping of types for the purpose of identification. The .NET Framework Class Library (BCL) is a large collection of thousands of Classes. These Classes are organized in a hierarchical tree. The System Namespaces is the root for types in the .NET Framework. We can uniquely identify any Class in the .NET Base Class Library (BCL ) by using the full Namespaces of the class .
  • 11. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 11 | P a g e 5. Common Language Specification (CLS) Common Language Specification (CLS) is a set of basic language features that .Net Languages needed to develop Applications and Services, which are compatible with the .Net Framework. When there is a situation to communicate Objects written in different .Net languages, those objects must expose the features that are common to all the languages. Common Language Specification (CLS) ensures complete interoperability among applications, regardless of the language used to create the application. “The CLS defines a superset of the CTS to enable cross-language interoperability”. The CLS defines a (large) superset of the CTS that a language must obey if it wishes to interoperate with other CLS-compliant languages. For example, the CLS requires support for most CTS value types, including Boolean, Byte, Char, Decimal, Int16, Int32, Int64, Single, Double, and more.
  • 12. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 12 | P a g e Common Type System Common Type System (CTS) describes a set of types that can be used in different .Net languages in common. That is the Common Type System (CTS) ensure that objects written in different .Net languages can interact with each other. These types can be  Value Types  Reference Types. The Value Types are passed by values and stored in the stack. The Reference Types are passed by references and stored in the heap. Common Type System (CTS) provides base set of Data Types which is responsible for cross language integration. 6. Metadata and Assembly Metadata A data about data is known as metadata. It describes program that is in the form of binary information stored in CLR portable executable (PE) file or in memory. – When compilation of code take place in PE file, the metadata is inserted into one part of the file, – While code is converted in to MSIL and inserted in to other part of file. Metadata contains the following: – Assembly Information: • Its identity like name, version, culture public key, the type of assembly, other assembly and security permission. – Information about Type
  • 13. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 13 | P a g e • Name, visibility, base class, interface used, and members. – Attribute information • This modifies the type and members of class. Assembly Microsoft .Net Assembly is a logical unit of code, it contains code that the Common Language Runtime (CLR) executes. When you compile an application, the MSIL code created is stored in an assembly. Assembly: It is a collection of types and resource information that are built to work together and form a logical unit of functionality. Every Assembly you create contains one or more program files and a Manifest. There are two types’ program files.  Executable (EXE) and  Dynamic linking Library Assemblies (DLL). Assembly can be divided in two types – Static Assembly: It includes interface, classes, and resources and stored in PE files on a disk. – Dynamic Assembly: you can create dynamic assemblies that run directly from memory; therefore there is no need of saving them on disk before execution. o After execution you can store then in a disk. Manifest Assembly: An assembly manifest is a text file containing metadata about .NET assemblies. – Manifest describes the relationship and dependencies of the components in the assembly, – Versioning information, scope information and the security permissions required by the assembly. – Information stored in assembly manifest • Assembly name, version number, culture, list of all file in assembly. GAC: Global Assembly Cache • It is a central place for registering assemblies, so that different application on the computer can use it later on. • Assembly must be made sharable by registering them in GAC only, when needed, otherwise the assembly must be kept private. • Deploy assembly in GAC using any one of the following – An installer that is designed to work with GAC
  • 14. 030010401 BCA 4th Semester Preeti P Bhatt Department of Computer Science, UTU. 14 | P a g e – The global assembly cache tool known as Gacutil.exe – Window explorer to drag assemblies into cache. Strong name assembly A strong name assemblies contains the assemblies' identity – Assembly’s name, version number, culture information, public key and digital signal. Using private key, the assembly file containing the manifest generates the strong name. Benefits of strong assembly – Provides uniqueness to the names by generating a private key. – Ensures that the version you are using comes from the same publisher that creates the version. – Facilities integrated checks, which ensures that content of assembly have not changed since last build. Private and Shared assembly Private Assembly When single application uses assembly, it is called private assembly. Example: You have created a DLL containing information about your business logic and placed it in same folder in which the client application has been installed. So DLL can only be used by your client program. Shared Assembly Shared assembly are placed in the global assembly cache so that they can be used by multiple application Example: You have created DLL that needs to be reused in different application. Instead of downloading copy of DLL in each and every client application, the DLL can be placed in global assembly cache. Side – by – Side Executions It is a process where multiple version of an application or component are stored and executed on the same computer. Means you have multiple version of application and component that uses a particular version of runtime on same computer at same time.