.NET Overview. 2 Objectives Introduce.NET –overview –languages –libraries –development and execution model Examine simple C# program.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 12 Introduction to ASP.NET.
Advertisements

.NET Technology. Introduction Overview of.NET What.NET means for Developers, Users and Businesses Two.NET Research Projects:.NET Generics AsmL.
Introduction to .NET Framework
Tahir Nawaz Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a.
History of.Net Introduced by Microsoft Earlier technology was VC++ and VB VC++ comes with so many library and VB was so easy to use and not flexible to.
.NET Framework Overview Pingping Ma Nov 16 th, 2006.
.NET Overview. 2 Objectives Introduce.NET –overview –languages –libraries –development and execution model Examine simple C# program.
Introduction to the C# Programming Language for the VB Programmer.
2. Developing in.NET and C#. 2 Microsoft Objectives “Microsoft.NET development is based on an underlying framework of tools and classes. These tools and.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Platforms and tools for Web Services and Mobile Applications Introduction to C# Bent Thomsen Aalborg University 3rd and 4th of June 2004.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
Rajeswari Indupuri Introduction to.NET Framework.
A Free sample background from © 2001 By Default!Slide 1.NET Overview BY: Pinkesh Desai.
Overview of Microsoft.Net and Vb.Net ITSE 2349 Spring 2002 Material from Microsoft.Net an Overview for ACC faculty by Stuart Laughton and Introduction.
1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi.
CSCI 3327 Visual Basic Chapter 1: Introduction to Visual Basic
Introduction to .Net Framework
1 8/29/05CS360 Windows Programming Professor Shereen Khoja.
Microsoft.NET Framework Overview Abidi Mahmoud Seminarium on Component -based Software Engineering.
Architecture of.NET Framework .NET Framework ٭ Microsoft.NET (pronounced “dot net”) is a software component that runs on the Windows operating.
C# A 1 CSC 298 Introduction to C#. C# A 2 What to expect in this class  Background: knowledge of an object oriented language of the C++, Java, … family.
11 Getting Started with C# Chapter Objectives You will be able to: 1. Say in general terms how C# differs from C. 2. Create, compile, and run a.
Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a library for.
Introduction to .NET Framework
Lecture Set 1 Part B: Understanding Visual Studio and.NET – Structure and Terminology 1/16/ :04 PM.
Understanding Code Compilation and Deployment Lesson 4.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Introduction .NET Framework
Computing with C# and the.NET Framework Chapter 1 An Introduction to Computing with C# ©2003, 2011 Art Gittleman.
ISYS 573 Special Topic – VB.Net David Chao. The History of VB Early 1960s:BASIC-Beginner’s All-Purpose Symbolic Instruction Code –Teaching –Simple syntax,
CS795/895: Introduction. Topics Distributed Systems –Availability –Performance –Web Services Security –Authentication –Authorization –Confidentiality.
Component-Based Software Engineering Introduction to.NET Paul Krause.
.NET Framework Danish Sami UG Lead.NetFoundry
Programming in C#. I. Introduction C# (or C-Sharp) is a programming language. C# is used to write software that runs on the.NET Framework. Although C#
Week 1: THE C# LANGUAGE Chapter 1: Variables and Expressions ➤ Included in Visual Studio.NET ➤ What the.NET Framework is and what it contains ➤ How.NET.
ISYS 812 Business Software Development David Chao.
Introduction to VB.Net. What is.NET? A brand of Microsoft technologies A platform for creating distributed Web applications A combination of new and updated.
1.NET FRAMEWORK CE-105 Spring 2007 Engr. Faisal ur Rehman.
AUC Technologies Projects Consulting, Development, Mentoring, and Training Company Application Foundation Presented By : Naveed Sattar Software Engineer.
Languages and IDE (Integrated Development Environment)
Applied Computing Technology Laboratory QuickStart C# Learning to Program in C# Amy Roberge & John Linehan November 7, 2005.
Rajiv and Shipra Introduction to.NET (asp.net,c#,vb)
tom perkins1 XML Web Services -.NET FRAMEWORK – Part 1 CHAPTER 1.1 – 1.3.
ASP.NET &.NET Environment. Overview Part of Microsoft’s.NET environment Used for Development of  Websites  Internet applications  Web Services & XML.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
Core Java Introduction Byju Veedu Ness Technologies httpdownload.oracle.com/javase/tutorial/getStarted/intro/definition.html.
Key Components of.NET Framework  Common Language Runtime  CLR at Design time  CLR at Runtime  Class Library  Assemblies  Namespaces  ASP.NET  Applications.
PRIOR TO WEB SERVICES THE OTHER TECHNOLOGIES ARE:.
Chapters 2 & 3. .NET Software development model that allows applications created in disparate programming languages to communicate Universal data access.
.NET Ying Chen Junwei Chen. What is Microsoft.NET. NET is a development platform Incorporated into.NET COM+ component services ASP web development framework.
Microsoft .NET A platform that can be used for building and running windows and web applications such that the software is platform and device-independent.
Getting Started with.NET Getting Started with.NET/Lesson 1/Slide 1 of 31 Objectives In this lesson, you will learn to: *Identify the components of the.NET.
ISYS 512 Business Application Design and Development with.Net David Chao.
INTRODUCTION CHAPTER #1 Visual Basic.NET. VB.Net General features It is an object oriented language  In the past VB had objects but focus was not placed.
The Execution System1. 2 Introduction Managed code and managed data qualify code or data that executes in cooperation with the execution engine The execution.
Text Introduction to.NET Framework. CONFIDENTIAL Agenda .NET Training – Purpose  What is.NET?  Why.NET?  Advantages  Architecture  Components: CLR,
Overview CNS 3260 C#.NET Software Development. 2.NET Framework Began in 2000 Developed in three years (2000 to 2003) Operating System Hardware.NET Framework.
Just-In-Time Compilation. Introduction Just-in-time compilation (JIT), also known as dynamic translation, is a method to improve the runtime performance.
Introduction to .NET Framework
C# and the .NET Framework
CE-105 Spring 2007 Engr. Faisal ur Rehman
Application Foundation
CS360 Windows Programming
Module 1: Getting Started
Introduction to C# AKEEL AHMED.
.NET Base Type (CTS Data Type) Managed Extensions for C++ Keyword
DOT NET ARCHITECTURE (OR) DOT NET FRAME WORK ARCHITECTURE
IS 135 Business Programming
Presentation transcript:

.NET Overview

2 Objectives Introduce.NET –overview –languages –libraries –development and execution model Examine simple C# program

3 developmentplatformserversservices.NET Overview.NET is a sweeping marketing term for a family of products –development tools and languages –platform –application management servers –value-added services Languages Compilers Visual Studio.NET Common Language Runtime Framework Libraries SQL Server BizTalk SharePoint... My Services Alerts Passport...

4 Evolution of the platform.NET is the next evolutionary step for the Microsoft platform –new languages largely replace classic C++ and Visual Basic –new runtime model reduces need for COM style integration –XML web services used in place of DCOM –Windows Forms replace MFC –ASP.NET improves on ASP –etc.

5 Software development.NET software development and execution has many actors –languages –libraries –compilers –intermediate language –execution engine

6 Languages Many.NET programming languages available –C# –VB.NET –C++ –etc. Language choice typically based on many factors –programmer background –problem domain –language features –corporate mandate

7 Language power All languages can access.NET infrastructure C# class Hello { static void Main() { System.Console.WriteLine("hello"); } VB.NET Class Goodbye Shared Sub Main() System.Console.WriteLine("goodbye") End Sub End Class

8 Language interoperability All.NET languages can interoperate C# calling VB.NET class Hello { static void Main() { System.Console.WriteLine(Greeting.Message()); } Class Greeting Shared Function Message() As String Return "hello" End Function End Class

9 C# VB.NET Language variability Not all.NET languages have exactly the same capabilities –differ in small but important ways class Hello { static void Main() { int i; uint u; } Class Greeting Shared Sub Main() Dim i as Integer End Sub End Class signed integer unsigned integer signed integer only

10 Common Language Specification Common Language Specification (CLS) defines type subset –required to be supported by all.NET languages –limiting code to CLS maximizes language interoperability –code limited to CLS called CLS compliant public class Calculator { public uint Add(uint a, uint b) { return a + b; } not CLS compliant to use uint in public interface of public class

11.NET Framework class library Library Extensive set of standard libraries available –for wide range of application types –called.NET Framework class library Collections Web development Input/Output Database access Windows Forms GUI Networking XML processing Threading Reflection Debugging

12 Compilation Compilers produce Intermediate Language (IL) –IL is not executable –similar to assembly language –processor independent C# codeVB.NET code code VB.NET compilerC# compiler compiler IL

13 IL C# compiler translates C# source code into IL C# source IL.locals init ([0] class Calc c, [1] int32 sum) newobj instance void Calc::.ctor() stloc.0 // c = ptr to new object ldloc.0 ldc.i4.2 // pass second arg ldc.i4.4 // pass first arg callvirt instance int32 Calc::Add(int32,int32) stloc.1 // sum = retval Calc c = new Calc(); int sum = c.Add(2, 4); C# compiler

14 CLR Execution engine Common Language Runtime (CLR) is the execution engine –loads IL –compiles IL –executes resulting machine code IL Runtime compiler Execute machine code

15 Cache JIT runtime compile IL is compiled into machine code at runtime by the CLR –compiles methods as needed –called just in time (JIT) compile JIT compilation model: –first time method is called the IL is compiled and optimized –compiled machine code is cached in transient memory –cached copy used for subsequent calls IL code F() G() H() JIT runtime compiler Execute machine code for F()

16 NGEN install time compile Can compile IL into machine code when app installed –use native image generator ngen.exe –can speed startup time since code pre-compiled –but cannot do as many optimizations –original IL must still be available for type information CLR IL ngen Execute native image cache machine code

17 Execution command CLR automatically invoked when.NET application executed C:\> MyApp hello execute

18 Required CLR CLR and.NET Framework required to run.NET app –will be incorporated into Windows and service packs –developers install as part of.NET Framework SDK –users can run dotnetredist.exe

19 MyApp.cs C# program C# program basics –source file has.cs extension –namespace used to group related types –class defines new type –Main is application entry point –WriteLine writes output –{ and } delimit code block namespace MyNamespace { class MyApp { static void Main() { System.Console.WriteLine("hello"); }

20 Building console executable Can use C# compiler to build console executable –use /t[arget]:exe –use /out: to specify output file name Default values can simplify use –default target type is console executable –default name adds.exe to base name of file containing Main C:\> csc /target:exe /out:MyApp.exe MyApp.cs explicit options C:\> csc MyApp.cs implicit options

21 Building Windows executable Can use C# compiler to build windows executable –use /t[arget]:winexe C:\> csc /target:winexe MyWinApp.cs build Windows application

22 Building library Can use C# compiler to build library –use /t[arget]:library Controlling output file name: –can use /out: to specify output file name –default: adds.dll to base name of first input file C:\> csc /target:library /out:MyLib.dll MyLib.cs create library

23 Summary.NET requires multiple steps to develop and run software –code in one of the many.NET languages –compile into IL –install the CLR –execute CLR JIT compiles IL at runtime –always executes compiled code –never interpreted Can target CLS compliance –to maximize language interoperability