Wednesday 29 April 2015

.NET Framework 2.0, 3.0 features

Currently .NET version 5.0 released by Microsoft. But to keep update you must know feature  of earlier version of .net

Following features were introduce in .NET Framework 2.0
  • Full 64-bit computing support for both the x64 and the IA-64 hardware platforms
  • Many API changes
  • Microsoft SQL Server integration
  • A new hosting API for native applications wishing to host an instance of the .NET runtime
  • Many additional and improved ASP.NET web controls
  • New data controls with declarative data binding
  • New personalization features for ASP.NET, such as support for themes, skins, master pages and webparts
  • .NET Micro Framework, a version of the .NET Framework related to the Smart Personal Objects Technology initiative
  • Membership provider
  • Partial classes 
  •  Generics
  • Nullable Types
  • Anonymous Methods
  • Property Access Accessibility Modifiers
  • Iterators
  • Data tables
  • Common Language Runtime (CLR) 2.0
  • Language support for generics built directly into the .NET CLR


Following features were introduced in  3.0
.NET Framework 3.0, formerly called WinFX

.NET Framework 3.0 consists of four major new components:
  • Windows Presentation Foundation (WPF)
  • Windows Communication Foundation (WCF)
  • Windows Workflow Foundation (WWF)
  • Windows CardSpace



      



         




Monday 27 April 2015

The Heap and The Stack

The Heap and The Stack

Procedural programming languages that let you to create variables dynamically at run-time use two different areas of Ram for holding variables;. the Stack and the Heap. The Heap is basically all unallocated memory.

The Stack holds value type variables plus return addresses for functions. All numeric types, ints, floats and doubles along with enums, chars, bools and structs are value types.

The Heap hold variables created dynamically- known as reference variables and mainly instances of classes or strings. These variables are stored in two places; there's a hidden pointer to the place in the heap where the data is stored.

Another distinction between value and reference type is that a value type is derived from System.ValueType while a reference type is derived from System.Object.

If you assign a value type variable to another then a direct copy of the value is made. But copying a reference type variable just makes a copy of the reference to the variable and does not affect the variable itself. This is like pointers in C and C++. You aren't copying what the pointer points to but making a copy of the pointer itself.