Download presentation
Presentation is loading. Please wait.
Published byHartono Kartawijaya Modified over 5 years ago
1
.Net Framework Details Imran Rashid CTO at ManiWeber Technologies
2
Outline .NET Framework Details .NET Framework Stack Garbage Collection
3
.NET Framework Details
4
.NET Framework Details C# was originally released in 2002 by Microsoft as a part of the initial release of the .Net framework C# is C styled language, that means it shares syntax with C and its other derived languages such as C++, Java, JavaScript and even PHP C# is most directly derived from Java C# borrows most of Java syntax but has some significant differences in its keywords, data types & in many other new aspects C# also borrows many features from C++
5
.Net Framework Details Characteristics of C# C# and the .NET Framework
Strongly typed language Object oriented (everything is an object even numbers) Support multiple programming paradigms (styles) C# and the .NET Framework Supports C#, Visual Basic .NET, JScript .NET, others The .NET framework is at the core of such programming environments or architectures as: ASP .NET (web) Windows Forms Windows Presentation Foundation (WPF) for desktop WinRT (for windows 8)
6
.NET Framework Details Windows Runtime C# Versions
WinRT is introduced with Windows 8 (newer framework) Worked as platform for Windows store apps Supports C#, Visual Basic .NET, C++, JavaScript Windows Phone currently uses Window Phone Runtime C# Versions
7
.NET Framework Stack
8
.NET Framework Stack The .NET framework provides a universal platform that lets Microsoft developers program in the same way With the same languages regardless of whether they are working for the web, desktop or mobile It includes an intensive class library known as the Framework Class Library (FCL) provides core capabilities: UI Management Data Access Security & Cryptography There are also class libraries available for particular types of applications e.g. on web you might need sockets etc.
9
.NET Framework Stack Managed Code Environment
C# runs on managed code environment C# code is compiled to bytecode Bytecode is a format that can be interpreted and executed on multiple Operating Systems Bytecode is executed by a layer called Common Language Runtime (CLR) A virtual machine Provides Machine Level Security OS Level Security Memory Management And More…
10
.NET Framework Stack The .NET Stack C# C++ VB JScript F# ASP.NET WPF
WinForms Others Common Language Specification Application Class Libraries and Services Base Class Library Common Language Runtime Operating System
11
Garbage Collection
12
Garbage Collection Native vs. Managed Languages
Native languages are compiled to machine code This is the code which is unique to a particular OS Only executed in the environment in which it is compiled Distinct compilers are required for each OS Common native languages: C, C++, Objective-C Managed languages are compiled to intermediate format Typically are cross-OS compatible e.g. C#, Java C# is compiled to bytecode, not machine language Bytecode is executed on runtime by CLR So no need to re-compile the code
13
Garbage Collection Allocating Memory (GC)
Memory is allocated dynamically at runtime Usually don’t have to explicitly allocate the memory CLR periodically checks memory heap If it runs out of memory the Garbage Collector kicks in Looks for unreferenced objects and releases resources Released resources like memory is used for new objects This constant cycle is going on during program execution
14
Garbage Collection Lifetime of an Object
Object obj; Variable is declared obj = new Object(); Object is instantiated obj = null; Object is de-referenced When no variables are referencing an object, it’s eligible for garbage collection
15
Any ?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.