Date post: | 13-Jan-2015 |
Category: |
Engineering |
Upload: | kapcom-rawal |
View: | 58 times |
Download: | 9 times |
The Future of Development
.NET is a major technology change for Microsoft and the software world. Just like the computer world moved from DOS to Windows, now they are moving to .NET. But don't be surprised if you find anyone saying that "I do not like .NET and I would stick with the good old COM and C++". There are still lot of people who like to use the bullock-cart instead of the latest Honda car.
.NET technology was introduced by Microsoft, to catch the market from the SUN's Java. Few years back, Microsoft had only VC++ and VB to compete with Java, but Java was catching the market very fast. With the world depending more and more the Internet/Web and java related tools becoming the best choice for the web applications, Microsoft seemed to be loosing the battle. Thousands of programmers moved to java from VC++ and VB. This was alarming for Microsoft and many of the Microsoft fan's kept on asking "is Microsoft sleeping?". And Microsoft had the answer. One fine morning, they announced : "We are not sleeping. We have the answer for you.". And that answer was .NET.
But Microsoft has a wonderful history of starting late but catching up quickly. This is true in case of .NET too. Microsoft put their best men at work for a secret project called Next Generation Windows Services (NGWS)., under the direct supervision of Mr. Bill Gates. The outcome of the project is what we now know as .NET. Even though .NET has borrowed most of it's ideas from Sun's J2EE, it has really outperformed their competitors.
USER Any Time, Any Place, Any Device
Internet
XML BASED WEB SERVICES
ERP SOURCES – Business Source – Customer Source – Sales Details at Head Office – Server, Back Office, Infrastructure
Notification Schedule Authentication
Application Types
System Software
Application Software
Direct System Programming is Not Possible in DOTNET its designed for Software And Application Only
Great For New/Existed/Fresh/Beginners/Expert Developers
Only Technology Specially Designed for Programmer Society
Basic Intension of Microsoft .NET is No Need to Learn New Language From Ground Up. Developer can use Existed
Language and Adapt .NET Application
Language Provided By MicrosoftC++, C#, J#, VB.NET, Jscript.NET, F#
Third Parties Languages Perl, Python, Pascal, APL, Cobol, Eiffel, Haskell, ML, Smalltalk,
Application of Types in DOTNET
Its Just Start of DOTNET For Any One Individual Developers
Console Application
DesktopApplication
Windows Services
WebServices
ASP.NET/MVCApplication
MobileSmart Devices
WPFRich GUI
Platform
It's An Environment For Developing And Running Application Featuring Of Development Of Web Based Services, Rich
Standard Runtime Services Available To Components Written In Variety Of Programming Language And Its Providing Inter
Language And Inter Machine Inoperability
is DOTNET Platform Independence ?
DOTNET Developing and Executing Platform
Hardware
Assembly Code
Operating System
MS.NET JRE
C and C++ Programming
.NET APPLICATION
JAVAAPPLICATION
is
Made for only Windows OS
Type of DOTNET Environment
Run Time SDK
Runtime For Both on Production and Development
Environment
Software Development KitOnly For Development Environment
Components
CLRCommon Language Runtime
FCLFramework Class Library
To achieve these broad objectives, .NET Framework is separated into 3 parts:
ToolsProgramming Tools
Programming Tools The programming tools include everything you need for coding and debugging, including
DebuggingException Handling
Server Side Improvement IDE .NET Compliers
C#, VB,Jscript,
IDE and RAD Tools Only For Development Environment
Common Environment for All Languages Can be use for Every Type of DOTNET Application
Can increase the Development Environment By adding some other component Can work for Other Technology
One Man Army for DOTNET
Is these all things are Free
YESNeed a Licensed Windows OS
MS .NET Visual Studio Express Edition Its Free and Perfect For Beginner in DOTNET
MS .NET Visual Studio Professional Edition Its Not Free Protease
We are Always on
If You are Programmer on .NET
Base Class Library Or
Framework Class Library
Framework Class Library The .NET Framework class library is a library of classes, interfaces, and value types that provide access to system functionality. It is the foundation on which .NET Framework applications, components, and controls are built. The namespaces and namespace categories in the class library are listed in the following table and documented in detail in this reference. The namespaces and categories are listed by usage, with the most frequently used namespaces appearing first.
Framework Class Library Input Output Operation Windows Messages
String Handling Database Management
Managing Array Evaluation of Mathematic Function
Access Files and Folders Drawing
Access Registry Managing Errors
Security Connecting Internet And XML
Windowing Many, Many, Many, More
Framework Class Library Advantages 1. Language Independents 2. Completely Object Oriented 3. Fully Extensible 4. Packed In Form of DLL5. Well Optimized Performance
Learn the Programming Language Syntax and Base Class Library Remain Same
Namespace1. A Namespace is Logical Collection of Classes and other Types with Unique
Name2. The Structure of the Namespace is like a tree where all the related Class Are
Like Leaves3. Base Class Library Began With “SYSTEM”
Versions of DOTNET
Versions and Version Dependency
Version 1.0 in Year 2002 Standalone Version 1.1 in Year 2003 Standalone Version 2.0 in Year 2005 Standalone
Version 3.0 in Year 2006 Over .NET 2.0Version 3.5 in Year 2007 Over .NET 3.0Version 4.0 in Year 2010 Standalone Version 4.5 in Year 2012 Replace 4.0
All Versions Can Be Installed Side By Side on Same Machine
Version CompatibilityDoesn't Support Backward and Forward Compatibility
The Version of Development Machine and Production Machine Must Be Same
Common Language Runtime [CLR]
Source Code Complier
IL and Metadata
Linker
EXE Code
Class Loader
Verifier Test
JIT Complier
Native Code
Meta Data Engine
Other Native Code
Class Loader
Output
Flowchart of CLR Activities for Execution
a Program
Protease… Its Time to Know The Execution Process of DOTNET Application
.NET Source Code Language Complier MSIL CIL IL
CLRCommon Language Runtime
Native Code
Code Executed8 Steps
Step – 1
The compilers of CLS-compliant languages compile the source code and generate an intermediate code, called MSIL code, and metadata. MSIL Code contains a CPU independent set of instructions, which describes how to load, store, initialize, and call. They also contains instructions to perform arithmetic and logical operations, access memory directly, control the flow of execution, handle exceptions and perform other operations. methods on objects
Step – 2
Before you execute the MSIL code, you need to compile it into CPU-specific instructions. To execute the code, the runtime requires information about the code that is in the metadata. The metadata describes the code and defines the types that the code contains as well as references to other types that the code uses at run time. MSIL Code and metadata both located in the .PE (portable executable) file.
Step – 3
Portable Executable in .NETWhen we execute .PE file, the class loader loads the MSIL code and metadata from the portable executable file into the run-time memory.
Demo by Showing the MSIL Code on DOTNET Application
Step –4
Calling Entry PointAfter the MSIL code and metadata are loaded into the memory, the code manager calls the entry point method, which is Main, Win Main or DllMain method. An entry-point method is the first method to be executed when you run your application.
Step –5
The Garbage collector performs periodic checks on the managed heap to identify the objects that are no longer required by the program and removes them from memory.
Garbage Collection in .NET
Step –6
The applications running within the common language runtime can utilize the managed multithreading support. The .NET Framework allows a single process to be divided into one or more sub processes called application domains. Each application domain can contain one or more threads. The runtime monitors all the threads that have executed code within its process .
Managed Multithreading support
Step –7
The common language runtime also allows managed code to interoperate with unmanaged code. One of the components of the common language runtime is the COM marshaler, which performs marshaling of data when data passes between managed and unmanaged execution environments.
Interoperate With Unmanaged Code
Step –8
Then with the help of JIT the IL code is converted into Native code or we can say Intermediate set of instructions are converted into CPU set of instruction.
Just in Time Compiler
DOTNET Application Executed…..Its Time Review
Review of Code Compilation and Execution
Source Code
LanguageCompliers
MSIL
MetadataCompilation
EXE OR DLLAlso call
Assembly
JITJust in Time
Source Code
Execution
Very Important for use to Understand the MSIL and METDATA
MetadataMetadata about the types used in the programMetadata about references to other assembliesData about programs and their types is called metadata, and is stored in the programs’ assemblies.
MSILIts Stand for Microsoft Intermediate Language, also Know as IL,CILMSIL Instruction is Platform Independent for Any Hardware or Processor The core component of the .NET Framework is the CLR, which sits on top of the OS and Manage Program
Its Very Important to understand of Compiling and Execution of DOTNET Programming
Question and Answer Session on .NET components
So Application Developer Something Special For You in DOTNET
Data-centric desktop business applications
| WPF .NET |Windows Forms |Light Switch for desktop|
Data-centric web business applications
ASP.NET | ASN.NET MVC
Apps for Office
Apps for Office Modal |Office VBA
Sorry Protease But Game is Not Over