C# Notes
C# Notes
Doncho Minkov
Technical Trainer
http://www.minkov.it
Telerik School Academy
schoolacademy.telerik.com
Table of Contents
1. What is .NET?
Microsoft .NET platform architecture
1. What is .NET Framework?
.NET Framework Architecture
1. Common Language Runtime (CLR)
2. Managed Code
3. Intermediate Language MSIL
4. Assemblies and Metadata
5. .NET Applications
Table of Contents (2)
8. Common Language Infrastructure (CLI) and
integration of different languages
Common Language Specification (CLS)
Common Type System (CTS)
8. Framework Class Library
9. Integrated Development Environment Visual
Studio
.NET Framework
Microsoft's Platform for
Application Development
What is the .NET Platform?
The .NET platform
.NET Framework
Silverlight / Windows Phone 7
.NET Compact Framework
What is .NET Framework?
.NET Framework
CLR
15
The Future
16
Common Language
Runtime (CLR)
The Heart of .NET Framework
Common Language Runtime (CLR)
Managed execution environment
Managing security
isolation
Interaction with unmanaged code
Supporting debug /
Class Loader
Managed and
Unmanaged Code
What is the Difference?
Managed Code
CLR executed code is called managed code
Secure
Reliable
Reliability problems
Safety problems
Doesn’t contain metadata
Memory leaks
Access to freed or unallocated memory
Objects are accessed through a reference
Intermediate
Language (MSIL)
Intermediate Language
(MSIL, IL, CIL)
Low level language (machine language) for the
.NET CLR
Has independent set of CPU instructions
When given
method is called
for the first time
Execution
Pre-compilation
Machine JIT during the
code compiler install (NGEN)
.NET Applications
Assemblies, Metadata and Applications
.NET Assemblies
.NET assemblies:
Assembly Description
Name
Name
Version [digital
[digital
Version
Localization signature]
signature]
Localization
Dependencies
Dependencies on
on other
other assemblies
assemblies
Security
Security permissions
permissions
Exported
Exported types
types
.NET Applications
Configurable executable .NET units
class NumbersFrom1to100
{
static void Main()
{
for (int i=1; i<=100; i++)
{
Console.WriteLine(i);
}
}
}
Framework Class
Library (FCL)
Standard Out-of-the-box .NET APIs
Framework Class Library (FCL)
Framework Class Library is the standard
.NET Framework library of out-of-the-box
reusable classes and components (APIs)
ASP.NET Windows
Web Forms, MVC, AJAX WPF Silverlight
Mobile Internet Toolkit Forms
System.Web.Mvc
System.Web.Mvc System.Drawing
System.Drawing System.Windows.Markup
System.Windows.Markup
System.Data.Linq
System.Data.Linq System.Xml.Linq
System.Xml.Linq System.Data.Entity
System.Data.Entity
Visual Studio IDE
Powerful Development Environment for .NET
Visual Studio
Visual Studio is powerful Integrated
Development Environment (IDE) for .NET
Developers
Create, edit, compile and run .NET applications
Different languages – C#, C++, VB.NET, J#, …
Flexible code editor
Powerful debugger
Integrated with SQL Server and IIS
Strong support of Web services, WCF and WWF
Visual Studio (2)
Visual programming
Questions?
http://aspnetcourse.telerik.com