SlideShare a Scribd company logo
1 of 12
Architecture Explained (cont’d)
 Object Model
 Conceptual basis for everything in .NET
 Common Language Runtime
 Basic set of mechanisms for executing .NET
programs regardless of language of origin
.NET Framework
Windows FormsWindows FormsWindows FormsWindows FormsASP.NETASP.NETASP.NETASP.NET
Web Services
ASP.NET Application Services
Web Forms ControlsControls Drawing
Windows Application Services
Framework Class LibraryFramework Class LibraryFramework Class LibraryFramework Class Library
ADO.NET
Network
XML
Security
Threading
Diagnostics
IO
Etc.
Common Language RuntimeCommon Language RuntimeCommon Language RuntimeCommon Language Runtime
Memory Management Common Type System Lifecycle Monitoring
Framework Class Library
 The FCL is a hierarchical class library that can be utilized
across multiple languages and platforms.
 Contains reusable classes, interfaces, and components that can
be used for:
 Developing components and Web Services.
 Developing Windows Forms applications.
 Developing Web Forms applications.
 Working with Directory Services, Event Logs, Processes, Message
Queues, and Timers.
 Creating and managing threads.
 Managing application security.
 Key features and benefits
 Cross-Language Interoperability
 Consistent and Unified Programming Model
 Object-Oriented and Extensible Class Library
Common Language Runtime
 The CLR is at the core of the .NET platform - the
execution engine. A unifying framework for designing,
developing, deploying, and executing distributed
components and applications.
 Loads and runs code written in any runtime-aware
programming language (approx. 22 as of now).
 Manages memory, thread execution, type safety
verification and garbage collection.
 Performs compilation (Just In-time Compiler)
 Makes use of a new common type system capable
of expressing the semantics of most modern
programming languages. The common type system
defines a standard set of types and rules for creating
new types.
 Inheritance/Reference NOT dependent on source
language
MSIL and JIT Compilation
 Source code is compiled into MSIL (Microsoft Intermediate Language).
Similar to Java bytecode.
 MSIL allows for runtime type-safety and security, as well as portable
execution platforms (all Windows). MSIL code cannot play tricks with
pointers or illegal type conversions.
 The MSIL architecture results in apps that run in one address space -
thus much less OS overhead.
 Compilers also produce “metadata”:
 Definitions of each type in your code.
 Signatures of each type’s members.
 Members that your code references.
 Other runtime data for the CLR.
 Metadata along with the MSIL enables code to be self-describing - no
need for separate type libraries, IDL, or registry entries.
 When code is executed by the CLR, a JIT compilation step occurs.
Code is compiled method-by-method to native machine code.
Packaging: Modules, Types,
Assemblies, and the Manifest
AssemblyAssemblyAssemblyAssembly
ManifestManifest
ModuleModule
MetadataMetadata
MSILMSIL
TypeType TypeTypeTypeType
Packaging: Modules, Types,
Assemblies, and the Manifest
 A “module” refers to a binary, such as an EXE or
DLL.
 Modules contain definitions of types, such as classes,
interfaces, structures, and enumerations.
 An assembly contains a “manifest”, which is a catalog
of component metadata containing:
 Assembly name.
 Version (major, minor, revision, build).
 Assembly file list - all files “contained” in the assembly.
 Type references - mapping the managed types included in
the assembly with the files that contain them.
 Scope - private or shared.
 Referenced assemblies.
 No MSIL code can be executed unless there is a
manifest associated with it.
Packaging: Modules, Types,
Assemblies, and the Manifest
 An assembly can be defined as one or more modules
that make up a unit of functionality. Assemblies also
can “contain” other files that make up an application,
such as bitmaps and resource files.
 An assembly is not a physical file.
 An assembly is the fundamental unit of deployment,
version control, activation scoping, and security
permissions.
 Two types of assemblies:
 Private - Usually deployed in the same directory as the client
application and used only by a single application.
 Shared - Used by any application and usually installed in a
special Global Assembly Cache.
.NET Component Model
 Offers developers an component model directly
based on OO.
 Removes distinction between a program element and
a software component. Thus it provides significant
benefits over technologies like CORBA and COM.
 .Net gets rid of the IDL - we can use a .Net assembly
directly as a component.
 Uses interface documentation already present in the
source code. Compliers for .Net supported languages
retain this information as metadata - self documented
components.
 Metadata is also available in XML format, any
application whether it is a part of .NET or not can
obtain information about components.
Microsoft C#
 A modern, object-oriented programming
language built from the ground up to exploit the
power of XML-based Web services on the .NET
platform.
 The main design goal of C# was simplicity rather
than pure power.
 Features of C#
Simplicity Type Safety
Consistency Version Control
Modernity Compatibility
Object Orientation Flexibility
.NET security
 The .NET Security Framework Architecture consists of
the following five core elements:
 Evidence Based Security - At runtime, the CLR determines
permission requests by evaluating the assembly’s evidence.
 Code Access Security - allows code to be trusted to varying
degrees, depending on where the code originates and on other
aspects of the code's identity.
 Verification - during JIT, the CLR ensures memory type
safety.
 Role Based Security - .NET applications can make
authorization decisions based on identity and role membership.
 Cryptography - The .NET Framework provides Random
Number Generation and other Cryptographic services.
Conclusion
 .Net creates a new concept, “the Internet Operating
System”.
 .Net allows cross-platform development to an extent
not before possible.
 .Net web services can be integrated into existing
distributed object technologies today by replacing
their RPC wire protocol with SOAP .
 Large-scale distributed application development and
deployment become possible on a level that presents
major difficulties today.
 Stricter versioning policies help to ensure greater
stability during upgrades, even in shared libraries.
 "Software as a service" - a subscription model for
application deployment - becomes a feasible option.

More Related Content

What's hot

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
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .netpinky singh
 
Introduction .NET Framework
Introduction .NET FrameworkIntroduction .NET Framework
Introduction .NET Frameworkjavadib
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net FundamentalsAli Taki
 
.Net framework components by naveen kumar veligeti
.Net framework components by naveen kumar veligeti.Net framework components by naveen kumar veligeti
.Net framework components by naveen kumar veligetiNaveen Kumar Veligeti
 
dot net technology
dot net technologydot net technology
dot net technologyImran Khan
 
.Net Framework Introduction
.Net Framework Introduction.Net Framework Introduction
.Net Framework IntroductionAbhishek Sahu
 
An isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra dasAn isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra dasVikash Chandra Das
 
Dot Net Fundamentals
Dot Net FundamentalsDot Net Fundamentals
Dot Net FundamentalsLiquidHub
 
02 intro to programming in .net (part 2)
02   intro to programming in .net (part 2)02   intro to programming in .net (part 2)
02 intro to programming in .net (part 2)Felisha Hosein
 
Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clrSanSan149
 
Life as an asp.net programmer
Life as an asp.net programmerLife as an asp.net programmer
Life as an asp.net programmerArun Prasad
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netsuraj pandey
 
Vb ch 2-introduction_to_.net
Vb ch 2-introduction_to_.netVb ch 2-introduction_to_.net
Vb ch 2-introduction_to_.netbantamlak dejene
 
01 intro to programming in .net
01   intro to programming in .net01   intro to programming in .net
01 intro to programming in .netFelisha Hosein
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net frameworkArun Prasad
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - IntroductionRandy Connolly
 

What's hot (20)

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
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
 
Introduction .NET Framework
Introduction .NET FrameworkIntroduction .NET Framework
Introduction .NET Framework
 
4. features of .net
4. features of .net4. features of .net
4. features of .net
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
 
.Net framework components by naveen kumar veligeti
.Net framework components by naveen kumar veligeti.Net framework components by naveen kumar veligeti
.Net framework components by naveen kumar veligeti
 
dot net technology
dot net technologydot net technology
dot net technology
 
.Net Framework Introduction
.Net Framework Introduction.Net Framework Introduction
.Net Framework Introduction
 
An isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra dasAn isas presentation on .net framework 2.0 by vikash chandra das
An isas presentation on .net framework 2.0 by vikash chandra das
 
Dot Net Fundamentals
Dot Net FundamentalsDot Net Fundamentals
Dot Net Fundamentals
 
02 intro to programming in .net (part 2)
02   intro to programming in .net (part 2)02   intro to programming in .net (part 2)
02 intro to programming in .net (part 2)
 
Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clr
 
Life as an asp.net programmer
Life as an asp.net programmerLife as an asp.net programmer
Life as an asp.net programmer
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
Vb ch 2-introduction_to_.net
Vb ch 2-introduction_to_.netVb ch 2-introduction_to_.net
Vb ch 2-introduction_to_.net
 
01 intro to programming in .net
01   intro to programming in .net01   intro to programming in .net
01 intro to programming in .net
 
Dotnet basics
Dotnet basicsDotnet basics
Dotnet basics
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net framework
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - Introduction
 

Similar to SynapseIndia dotnet web development architecture module

Inside .net framework
Inside .net frameworkInside .net framework
Inside .net frameworkFaisal Aziz
 
.Net framework interview questions
.Net framework interview questions.Net framework interview questions
.Net framework interview questionsMir Majid
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodectYesu Raj
 
Chapter 1 introduction to .net
Chapter 1 introduction to .netChapter 1 introduction to .net
Chapter 1 introduction to .netRahul Bhoge
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptxRaajzKoirala
 
.Net platform an understanding
.Net platform an understanding.Net platform an understanding
.Net platform an understandingBinu Bhasuran
 
.Net framework
.Net framework.Net framework
.Net frameworkViv EK
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarPriyankaPinglikar
 
Win net presentacion [2005]
Win net presentacion [2005]Win net presentacion [2005]
Win net presentacion [2005]Raul Soto
 
.NET TECHNOLOGIES
.NET TECHNOLOGIES.NET TECHNOLOGIES
.NET TECHNOLOGIESProf Ansari
 
Session2 (3)
Session2 (3)Session2 (3)
Session2 (3)DrUjwala1
 
Unit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdfUnit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdfUjwala Junghare
 

Similar to SynapseIndia dotnet web development architecture module (20)

.Net Session Overview
.Net Session Overview.Net Session Overview
.Net Session Overview
 
Net framework
Net frameworkNet framework
Net framework
 
Inside .net framework
Inside .net frameworkInside .net framework
Inside .net framework
 
1.0
1.01.0
1.0
 
.Net framework interview questions
.Net framework interview questions.Net framework interview questions
.Net framework interview questions
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
 
.Net slid
.Net slid.Net slid
.Net slid
 
Chapter 1 introduction to .net
Chapter 1 introduction to .netChapter 1 introduction to .net
Chapter 1 introduction to .net
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptx
 
Net Interview questions
Net Interview questionsNet Interview questions
Net Interview questions
 
.Net platform an understanding
.Net platform an understanding.Net platform an understanding
.Net platform an understanding
 
.Net framework
.Net framework.Net framework
.Net framework
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka Pinglikar
 
Win net presentacion [2005]
Win net presentacion [2005]Win net presentacion [2005]
Win net presentacion [2005]
 
dot NET Framework
dot NET Frameworkdot NET Framework
dot NET Framework
 
Net framework
 Net framework Net framework
Net framework
 
.NET TECHNOLOGIES
.NET TECHNOLOGIES.NET TECHNOLOGIES
.NET TECHNOLOGIES
 
C# chap 2
C# chap 2C# chap 2
C# chap 2
 
Session2 (3)
Session2 (3)Session2 (3)
Session2 (3)
 
Unit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdfUnit I- Introduction to .NET Framework.pdf
Unit I- Introduction to .NET Framework.pdf
 

More from Synapseindiappsdevelopment

Synapse india elance top in demand in it skills
Synapse india elance top in demand in it skillsSynapse india elance top in demand in it skills
Synapse india elance top in demand in it skillsSynapseindiappsdevelopment
 
SynapseIndia dotnet development platform overview
SynapseIndia  dotnet development platform overviewSynapseIndia  dotnet development platform overview
SynapseIndia dotnet development platform overviewSynapseindiappsdevelopment
 
SynapseIndia dotnet web applications development
SynapseIndia  dotnet web applications developmentSynapseIndia  dotnet web applications development
SynapseIndia dotnet web applications developmentSynapseindiappsdevelopment
 
SynapseIndia dotnet website security development
SynapseIndia  dotnet website security developmentSynapseIndia  dotnet website security development
SynapseIndia dotnet website security developmentSynapseindiappsdevelopment
 
SynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architectureSynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architectureSynapseindiappsdevelopment
 
SynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client librarySynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client librarySynapseindiappsdevelopment
 
SynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architectureSynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architectureSynapseindiappsdevelopment
 
SynapseIndia dotnet client library Development
SynapseIndia dotnet client library DevelopmentSynapseIndia dotnet client library Development
SynapseIndia dotnet client library DevelopmentSynapseindiappsdevelopment
 
SynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically developmentSynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically developmentSynapseindiappsdevelopment
 

More from Synapseindiappsdevelopment (20)

Synapse india elance top in demand in it skills
Synapse india elance top in demand in it skillsSynapse india elance top in demand in it skills
Synapse india elance top in demand in it skills
 
SynapseIndia dotnet module development part 1
SynapseIndia  dotnet module development part 1SynapseIndia  dotnet module development part 1
SynapseIndia dotnet module development part 1
 
SynapseIndia dotnet framework library
SynapseIndia  dotnet framework librarySynapseIndia  dotnet framework library
SynapseIndia dotnet framework library
 
SynapseIndia dotnet development platform overview
SynapseIndia  dotnet development platform overviewSynapseIndia  dotnet development platform overview
SynapseIndia dotnet development platform overview
 
SynapseIndia dotnet development framework
SynapseIndia  dotnet development frameworkSynapseIndia  dotnet development framework
SynapseIndia dotnet development framework
 
SynapseIndia dotnet web applications development
SynapseIndia  dotnet web applications developmentSynapseIndia  dotnet web applications development
SynapseIndia dotnet web applications development
 
SynapseIndia dotnet website security development
SynapseIndia  dotnet website security developmentSynapseIndia  dotnet website security development
SynapseIndia dotnet website security development
 
SynapseIndia mobile build apps management
SynapseIndia mobile build apps managementSynapseIndia mobile build apps management
SynapseIndia mobile build apps management
 
SynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architectureSynapseIndia mobile apps deployment framework internal architecture
SynapseIndia mobile apps deployment framework internal architecture
 
SynapseIndia java and .net development
SynapseIndia java and .net developmentSynapseIndia java and .net development
SynapseIndia java and .net development
 
SynapseIndia dotnet development panel control
SynapseIndia dotnet development panel controlSynapseIndia dotnet development panel control
SynapseIndia dotnet development panel control
 
SynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client librarySynapseIndia dotnet development ajax client library
SynapseIndia dotnet development ajax client library
 
SynapseIndia php web development
SynapseIndia php web developmentSynapseIndia php web development
SynapseIndia php web development
 
SynapseIndia mobile apps architecture
SynapseIndia mobile apps architectureSynapseIndia mobile apps architecture
SynapseIndia mobile apps architecture
 
SynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architectureSynapseIndia mobile apps deployment framework architecture
SynapseIndia mobile apps deployment framework architecture
 
SynapseIndia mobile apps
SynapseIndia mobile appsSynapseIndia mobile apps
SynapseIndia mobile apps
 
SynapseIndia dotnet development
SynapseIndia dotnet developmentSynapseIndia dotnet development
SynapseIndia dotnet development
 
SynapseIndia dotnet client library Development
SynapseIndia dotnet client library DevelopmentSynapseIndia dotnet client library Development
SynapseIndia dotnet client library Development
 
SynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically developmentSynapseIndia creating asp controls programatically development
SynapseIndia creating asp controls programatically development
 
SynapseIndia asp.net2.0 ajax Development
SynapseIndia asp.net2.0 ajax DevelopmentSynapseIndia asp.net2.0 ajax Development
SynapseIndia asp.net2.0 ajax Development
 

Recently uploaded

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
 
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
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data SciencePaolo Missier
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
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
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuidePixlogix Infotech
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfdanishmna97
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2
 
"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
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
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
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
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
 

Recently uploaded (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
 
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
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
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
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
"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 ...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
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
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
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...
 

SynapseIndia dotnet web development architecture module

  • 1. Architecture Explained (cont’d)  Object Model  Conceptual basis for everything in .NET  Common Language Runtime  Basic set of mechanisms for executing .NET programs regardless of language of origin
  • 2. .NET Framework Windows FormsWindows FormsWindows FormsWindows FormsASP.NETASP.NETASP.NETASP.NET Web Services ASP.NET Application Services Web Forms ControlsControls Drawing Windows Application Services Framework Class LibraryFramework Class LibraryFramework Class LibraryFramework Class Library ADO.NET Network XML Security Threading Diagnostics IO Etc. Common Language RuntimeCommon Language RuntimeCommon Language RuntimeCommon Language Runtime Memory Management Common Type System Lifecycle Monitoring
  • 3. Framework Class Library  The FCL is a hierarchical class library that can be utilized across multiple languages and platforms.  Contains reusable classes, interfaces, and components that can be used for:  Developing components and Web Services.  Developing Windows Forms applications.  Developing Web Forms applications.  Working with Directory Services, Event Logs, Processes, Message Queues, and Timers.  Creating and managing threads.  Managing application security.  Key features and benefits  Cross-Language Interoperability  Consistent and Unified Programming Model  Object-Oriented and Extensible Class Library
  • 4. Common Language Runtime  The CLR is at the core of the .NET platform - the execution engine. A unifying framework for designing, developing, deploying, and executing distributed components and applications.  Loads and runs code written in any runtime-aware programming language (approx. 22 as of now).  Manages memory, thread execution, type safety verification and garbage collection.  Performs compilation (Just In-time Compiler)  Makes use of a new common type system capable of expressing the semantics of most modern programming languages. The common type system defines a standard set of types and rules for creating new types.  Inheritance/Reference NOT dependent on source language
  • 5. MSIL and JIT Compilation  Source code is compiled into MSIL (Microsoft Intermediate Language). Similar to Java bytecode.  MSIL allows for runtime type-safety and security, as well as portable execution platforms (all Windows). MSIL code cannot play tricks with pointers or illegal type conversions.  The MSIL architecture results in apps that run in one address space - thus much less OS overhead.  Compilers also produce “metadata”:  Definitions of each type in your code.  Signatures of each type’s members.  Members that your code references.  Other runtime data for the CLR.  Metadata along with the MSIL enables code to be self-describing - no need for separate type libraries, IDL, or registry entries.  When code is executed by the CLR, a JIT compilation step occurs. Code is compiled method-by-method to native machine code.
  • 6. Packaging: Modules, Types, Assemblies, and the Manifest AssemblyAssemblyAssemblyAssembly ManifestManifest ModuleModule MetadataMetadata MSILMSIL TypeType TypeTypeTypeType
  • 7. Packaging: Modules, Types, Assemblies, and the Manifest  A “module” refers to a binary, such as an EXE or DLL.  Modules contain definitions of types, such as classes, interfaces, structures, and enumerations.  An assembly contains a “manifest”, which is a catalog of component metadata containing:  Assembly name.  Version (major, minor, revision, build).  Assembly file list - all files “contained” in the assembly.  Type references - mapping the managed types included in the assembly with the files that contain them.  Scope - private or shared.  Referenced assemblies.  No MSIL code can be executed unless there is a manifest associated with it.
  • 8. Packaging: Modules, Types, Assemblies, and the Manifest  An assembly can be defined as one or more modules that make up a unit of functionality. Assemblies also can “contain” other files that make up an application, such as bitmaps and resource files.  An assembly is not a physical file.  An assembly is the fundamental unit of deployment, version control, activation scoping, and security permissions.  Two types of assemblies:  Private - Usually deployed in the same directory as the client application and used only by a single application.  Shared - Used by any application and usually installed in a special Global Assembly Cache.
  • 9. .NET Component Model  Offers developers an component model directly based on OO.  Removes distinction between a program element and a software component. Thus it provides significant benefits over technologies like CORBA and COM.  .Net gets rid of the IDL - we can use a .Net assembly directly as a component.  Uses interface documentation already present in the source code. Compliers for .Net supported languages retain this information as metadata - self documented components.  Metadata is also available in XML format, any application whether it is a part of .NET or not can obtain information about components.
  • 10. Microsoft C#  A modern, object-oriented programming language built from the ground up to exploit the power of XML-based Web services on the .NET platform.  The main design goal of C# was simplicity rather than pure power.  Features of C# Simplicity Type Safety Consistency Version Control Modernity Compatibility Object Orientation Flexibility
  • 11. .NET security  The .NET Security Framework Architecture consists of the following five core elements:  Evidence Based Security - At runtime, the CLR determines permission requests by evaluating the assembly’s evidence.  Code Access Security - allows code to be trusted to varying degrees, depending on where the code originates and on other aspects of the code's identity.  Verification - during JIT, the CLR ensures memory type safety.  Role Based Security - .NET applications can make authorization decisions based on identity and role membership.  Cryptography - The .NET Framework provides Random Number Generation and other Cryptographic services.
  • 12. Conclusion  .Net creates a new concept, “the Internet Operating System”.  .Net allows cross-platform development to an extent not before possible.  .Net web services can be integrated into existing distributed object technologies today by replacing their RPC wire protocol with SOAP .  Large-scale distributed application development and deployment become possible on a level that presents major difficulties today.  Stricter versioning policies help to ensure greater stability during upgrades, even in shared libraries.  "Software as a service" - a subscription model for application deployment - becomes a feasible option.