dotNet(IPT)

Embed Size (px)

Citation preview

  • 8/3/2019 dotNet(IPT)

    1/26

  • 8/3/2019 dotNet(IPT)

    2/26

  • 8/3/2019 dotNet(IPT)

    3/26

    What is .Net?

    .NET is a revolutionary newplatform, built on open Internetprotocols and standards, withtools and services that meldcomputing and communicationsin new ways.

    -Microsoft

  • 8/3/2019 dotNet(IPT)

    4/26

    Introduction: (in brief)

    New programming methodology Multiple Languages (VB.Net, C#, J#,

    Cobol.Net, etc.)

    JIT Compiler

    Primary Parts: .Net Framework

    Common Language Runtime (CLR)

    RTM: 2002 (v1.0)

    2003 (v1.1)

    2005 (v2.0)

  • 8/3/2019 dotNet(IPT)

    5/26

    Before .NET

    Windows GUI development:

    Win32 API, MFC, Visual Basic

    Web development: ASP

    JavaWrite once, run

    anywhere.

    Embrace and extend: Visual J++

  • 8/3/2019 dotNet(IPT)

    6/26

    .NET Features/Claims Common Language Runtime (CLR)

    Runs bytecode in an Inter-Language (IL) format.

    Allows inter-language and inter-machineinteroperability.

    Rich base class library Set of components and services giving developers

    access to the features of the runtime.

    Ease of development of web-based services Provides an environment facilitating development

    and deployment of web based services.

    New Programming Language called C# Derives from C and C++ with several additionalfeatures such as garbage collection.

    Provides SOAP capabilities Allows .NET components to exchange data

    messages with components on other platforms.

  • 8/3/2019 dotNet(IPT)

    7/26

    .Net Framework

    A set of approximately 3500 classes.

    Classes are divided into namespacesgrouping similar classes.

    For organization, each class belongs toonly one namespace.

    Most classes are lumped into a namespace called System System.Data: DB access

    System.XML: reading/writing XML

    System.Windows.Forms: Forms manipulation

    System.Net: network communication.

  • 8/3/2019 dotNet(IPT)

    8/26

    Web App Benchmark

  • 8/3/2019 dotNet(IPT)

    9/26

    .Net Framework Supports Web Standards

    HTML

    XML

    XSLT

    SOAP

    WSDL (Web Services)

    ADO.Net: ActiveX Data Objects

    ASP.Net: Active Server Pages

    ILDASM: A tool used to properlydisplay IL in a human readable format.

    .Net Compact Framework (mobiledevices

  • 8/3/2019 dotNet(IPT)

    10/26

    Distributed Transactions

  • 8/3/2019 dotNet(IPT)

    11/26

    Web Service Throughput

  • 8/3/2019 dotNet(IPT)

    12/26

    Terminology "ABC"

    CLR: Common Language Runtime One runtime for many programming languages

    Intermediate Language (IL)

    One intermediate, high-level assembly-stylelanguage that is emitted by language compilers

    Assembly Container for code, metadata and resources

    your new term for what you used to call "D-L-L"

    Metadata Information that describes the shape of data and

    the runtime behavior of a program

  • 8/3/2019 dotNet(IPT)

    13/26

    Assembly

    CLR Execution Model:

    Conceptual

    SourceCode

    LanguageCompiler

    Compilation

    Before installation or

    the first time eachmethod is called

    Execution

    JITCompiler

    NativeCode

    Code (IL)Metadata

  • 8/3/2019 dotNet(IPT)

    14/26

    .Net Programming

    Languages1. Visual

    Basic.Net

    2. C#

    3. APL4. Fortran

    5. Pascal

    6. C++

    7. Haskell

    8. Perl

    9. Java Language

    10.Python

    11.COBOL

    12.MicrosoftJScript

    13.RPG

    14.Component

    Pascal

    15.Mercury

    16.Scheme

    17.Curriculum

    18.Mondrian

    19.SmallTalk

    20.Eiffel21.Oberon

    22.Standard ML

    23.Forth

    24.Oz

  • 8/3/2019 dotNet(IPT)

    15/26

    Multi-Language Platform

    The .NET Platform is language neutral

    All .NET languages are first class players

    Complete cross-language integration

    Highly leveraged tools

    Microsoft is providing

    Visual Basic, C++, C#, Java, JScript

    Industry and academia

    APL, COBOL, Eiffel, Fortran, Haskell, ML, Perl,

    Python, RPG, Scheme, Smalltalk,

  • 8/3/2019 dotNet(IPT)

    16/26

    Comparison to Java

    Hello.java Hello.class JVM

    compile execute

    Hello.vb Hello.exe CLR

    compile execute

    Source code Byte code

    CILSource code

  • 8/3/2019 dotNet(IPT)

    17/26

    C# vs. VB.Net

    C# No Auto Case adjust

    Requires {, }, ;

    Enforces programming

    rules.

    Unsafe Blocks

    Documentation

    Comments

    Operator Overloading

    VB.Net Auto case adjust

    No line

    terminators

    Requires Begin,End

    Still intended as

    RAD tool.

    Allows latebinding

  • 8/3/2019 dotNet(IPT)

    18/26

    Hello, VB.NET!.method public static void Main() cilmanaged{.entrypoint.custom instance void

    [mscorlib]System.STAThreadAttribute::.ctor()= ( 01 00 00 00 )// Code size 14 (0xe).maxstack 8IL_0000: nopIL_0001: ldstr "Hello VB.NET!"

    IL_0006: call void[mscorlib]System.Console::WriteLine(string)IL_000b: nopIL_000c: nopIL_000d: ret

    } // end of method Hello::Main

    Module HelloSub Main()

    Console.WriteLine("Hello,

    VB.NET!")End Sub

    End Module

    ildasm Hello.exe

  • 8/3/2019 dotNet(IPT)

    19/26

  • 8/3/2019 dotNet(IPT)

    20/26

    Global Assembly Cache

    (GAC)

    Used as a centralized

    repository to store all shared

    assembliesUsed to store the code

    downloaded from the Internet

    Repository for prejitted code

  • 8/3/2019 dotNet(IPT)

    21/26

    Side by Side Execution

    GACPrivate

    Policy

    Travel Portal (.asmx)Reference: BookFlight, v 1.0.0.5

  • 8/3/2019 dotNet(IPT)

    22/26

    IBookflight

    IDispatch

    IUnknown

    COM Callable

    Wrapper

    COM Interoperability

    BookFlight

    IBookFlight

    Common Language Runtime

    ISeatRes

    SeatRes

    Runtime CallableWrapper

    LegacyClient

  • 8/3/2019 dotNet(IPT)

    23/26

    Advantages of .Net

    Write once, run everywhere

    Multiple programming languages(20+)

    Coding Reduction Controls

    Template projects IIS/Cassini support

    Ease of Deployment

    Security Features Evidence-based security

    Code access security

    The verification process

    Role-based security

    Cryptography

    Application domains

  • 8/3/2019 dotNet(IPT)

    24/26

    Summary

    Unifies programming models

    Dramatically simplifies

    development Provides robust execution

    environment

    Supports multiple programminglanguages

    Natively supports XML Web

    Services

  • 8/3/2019 dotNet(IPT)

    25/26

    Presentedby,

    B.Krishnaveni

    M.JananiR.Krishnaveni

    K.Kavitha

  • 8/3/2019 dotNet(IPT)

    26/26