1. 2 microsoft.net Überblick dirk primbs technologieberater developer platform & strategy group...

30
1

Upload: herbert-gatzke

Post on 05-Apr-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

11

Page 2: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

22

Microsoft .NET ÜberblickMicrosoft .NET Überblick

Dirk PrimbsDirk PrimbsTechnologieberater Technologieberater Developer Platform & Strategy GroupDeveloper Platform & Strategy GroupMicrosoft Deutschland GmbHMicrosoft Deutschland GmbH

Page 3: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

33

AgendaAgenda

Microsoft .NETMicrosoft .NET .NET Framework.NET Framework

Common Language RuntimeCommon Language Runtime .NET Class Libraries.NET Class Libraries ADO.NETADO.NET Windows FormsWindows Forms ASP.NETASP.NET

.NET My Services.NET My Services

Page 4: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

44

Microsoft’s Microsoft’s VisionVision

Empower peopleEmpower people

through great through great softwaresoftware

any time, any place,any time, any place,

and on any deviceand on any device

Page 5: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

55

Microsoft .NETMicrosoft .NET

Page 6: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

66

Common Language Common Language RuntimeRuntime

Verwaltet ausgeführten CodeVerwaltet ausgeführten Code Filigrane Filigrane

SicherheitseinstellungenSicherheitseinstellungen Deployment ohne “.dll Hölle”Deployment ohne “.dll Hölle” ““Object remoting” durch Object remoting” durch

SOAPSOAP

Win32Win32

MSMQMSMQ(Message(MessageQueuing)Queuing)

COM+COM+(Transactions, Partitions, (Transactions, Partitions,

Object Pooling)Object Pooling)IISIIS WMIWMI

Common Language RuntimeCommon Language Runtime

Das .NET FrameworkDas .NET Framework

Base FrameworkBase Framework

ADO.NET: Data and XMLADO.NET: Data and XML

Web ServicesWeb Services User InterfaceUser Interface

VBVB C++C++ C#C#

ASP.NETASP.NET

PerlPerl PythonPython ……

Page 7: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

77

Common Language RuntimeCommon Language Runtime

Class Loader

IL to NativeCompilers

CodeManager

GarbageCollector

Security Engine Debug Engine

Type Checker Exception Manager

Thread Support COM Marshaler

Base Class Library Support

Page 8: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

88

Common Language RuntimeCommon Language RuntimeAusführungsmodellAusführungsmodell

VB.NETVB.NETSource Source codecode

VC++.NETVC++.NETVC#.NETVC#.NET

Operating System ServicesOperating System Services

Common Language RuntimeCommon Language Runtime

Native CodeNative Code

ManagedManagedcodecode

UnmanagedUnmanagedComponentComponent

JIT CompilerJIT Compiler

AssemblyAssemblyIL CodeIL Code

AssemblyAssemblyIL CodeIL Code

AssemblyAssemblyIL CodeIL Code

CompilerCompiler CompilerCompilerCompilerCompiler

Page 9: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

99

// File: simple.cs

using System;

class Simple

{

public static void Main()

{

for (int i = 1; i <= 5; i++)

Console.WriteLine(i);

}

}

csc simple.cscsc simple.csildasm simpl.exeildasm simpl.exe

Common Language RuntimeCommon Language RuntimeMSIL BeispielMSIL Beispiel

Page 10: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1010

Common Language RuntimeCommon Language RuntimeAssembliesAssemblies

.NET Anwendungen bestehen aus .NET Anwendungen bestehen aus AssembliesAssemblies Assembly = KomponenteAssembly = Komponente

Ein Assembly ist ein Container für ModuleEin Assembly ist ein Container für ModuleSämtliche Sicherheits- und Sämtliche Sicherheits- und

Versionsüberprüfungen durch die CLR Versionsüberprüfungen durch die CLR erfolgen auf der Basis von Assemblies !!!erfolgen auf der Basis von Assemblies !!!

Page 11: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1111

.NET Security (1).NET Security (1)Security Levels für .NET ApplikationenSecurity Levels für .NET Applikationen

Role-Based SecurityRole-Based SecurityEnforced by application on itselfEnforced by application on itself

Code Access SecurityCode Access SecurityEnforced by the common language runtime on the assemblyEnforced by the common language runtime on the assembly

Windows User SecurityWindows User SecurityEnforced by the OS on all the codeEnforced by the OS on all the code

Page 12: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1212

.NET Security (2).NET Security (2)Role-Based and Code Access SecurityRole-Based and Code Access Security

Role-Based SecurityRole-Based Security Role based security erlaubt es dem Code Role based security erlaubt es dem Code

Sicherheitsentscheidungen zu treffen, Sicherheitsentscheidungen zu treffen, welche auf der Rolle des Users basieren, der welche auf der Rolle des Users basieren, der den Code ausführt.den Code ausführt.

Code Access SecurityCode Access Security Code access security trifft Code access security trifft

Sicherheitsentscheidungen für den Code auf Sicherheitsentscheidungen für den Code auf der Basis seiner Herkunft.der Basis seiner Herkunft.

Page 13: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1313

Framework ClassesFramework Classes Verfügbar für alle Verfügbar für alle

ProgrammiersprachenProgrammiersprachen Objektorientiert und Objektorientiert und

konsistentkonsistent Einheitliches TypensystemEinheitliches Typensystem ErweiterbarErweiterbar

Win32Win32

MSMQMSMQ(Message(MessageQueuing)Queuing)

COM+COM+(Transactions, Partitions, (Transactions, Partitions,

Object Pooling)Object Pooling)IISIIS WMIWMI

Common Language RuntimeCommon Language Runtime

Das .NET FrameworkDas .NET Framework

Base FrameworkBase Framework

ADO.NET: Data and XMLADO.NET: Data and XML

Web ServicesWeb Services User InterfaceUser Interface

VBVB C++C++ C#C#

ASP.NETASP.NET

PerlPerl PythonPython ……

Page 14: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1414

System

System.Data System.Xml

System.Web

Globalization

Diagnostics

Configuration

Collections

Resources

Reflection

Net

IO

Threading

Text

ServiceProcess

Security

Design

ADO

SQLTypes

SQL

XPath

XSLT

RuntimeInteropServices

Remoting

Serialization

Serialization

Configuration SessionState

Caching Security

ServicesDescription

Discovery

Protocols

UIHtmlControls

WebControls

System.Drawing

Imaging

Drawing2D

Text

Printing

System.WinForms

Design ComponentModel

.NET Framework: .NET Framework: KlassenbibliothekenKlassenbibliotheken

Page 15: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1515

ADO.NETADO.NET Um datenrelevante Um datenrelevante

Anwendungen auf XML-Basis Anwendungen auf XML-Basis zu erstellenzu erstellen

Erleichtert den Erleichtert den Datenaustausch zwischen Datenaustausch zwischen PlattformenPlattformen

Programmieren gegen selbst Programmieren gegen selbst erstellte Objekteerstellte Objekte

Zugriff auf relationale und Zugriff auf relationale und semistrukturierte Datensemistrukturierte Daten

Win32Win32

MSMQMSMQ(Message(MessageQueuing)Queuing)

COM+COM+(Transactions, Partitions, (Transactions, Partitions,

Object Pooling)Object Pooling)IISIIS WMIWMI

Common Language RuntimeCommon Language Runtime

Das .NET FrameworkDas .NET Framework

Base FrameworkBase Framework

ADO.NET: Data and XMLADO.NET: Data and XML

Web ServicesWeb Services User InterfaceUser Interface

VBVB C++C++ C#C#

ASP.NETASP.NET

PerlPerl PythonPython ……

Page 16: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1616

Windows Forms (1)Windows Forms (1)Was sind Windows Forms?Was sind Windows Forms?

Ein Klassenbibliothek innerhalb des .NET Ein Klassenbibliothek innerhalb des .NET Frameworks zur Entwicklung von GUIFrameworks zur Entwicklung von GUI Namespace: System.Windows.FormsNamespace: System.Windows.Forms

Ersetzt (und verbessert) das traditionelle Win32 Ersetzt (und verbessert) das traditionelle Win32 GUI und die Microsoft Foundation Classes GUI und die Microsoft Foundation Classes (MFC)(MFC)

MFC kann aber weiterhin genutzt werdenMFC kann aber weiterhin genutzt werden

Page 17: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1717

Windows Forms (2)Windows Forms (2)EigenschaftenEigenschaften

Konsistente und reichhaltige KlassenbibliothekKonsistente und reichhaltige Klassenbibliothek Komplett objektorientiert – keine Handles mehrKomplett objektorientiert – keine Handles mehr Leicht erweiterbar, einfach anpassbarLeicht erweiterbar, einfach anpassbar Mit dem restlichen .NET Framework integriertMit dem restlichen .NET Framework integriert GUI Entwurf mit GUI Entwurf mit Windows FormsWindows Forms ist in Visual ist in Visual

Studio .NET eingebautStudio .NET eingebaut

Page 18: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1818

Windows Forms (3)Windows Forms (3)EigenschaftenEigenschaften

HWND hwndMain = CreateWindowEx(HWND hwndMain = CreateWindowEx( 0, "MainWinClass", "Main Window",0, "MainWinClass", "Main Window", WS_OVERLAPPEDWINDOW | WS_HSCROLL | WS_VSCROLL,WS_OVERLAPPEDWINDOW | WS_HSCROLL | WS_VSCROLL, CW_USEDEFAULT, CW_USEDEFAULT,CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,, (HWND)NULL, (HMENU)NULL, hInstance, NULL); (HWND)NULL, (HMENU)NULL, hInstance, NULL); ShowWindow(hwndMain, SW_SHOWDEFAULT); ShowWindow(hwndMain, SW_SHOWDEFAULT); UpdateWindow(hwndMain);UpdateWindow(hwndMain);

Form form = new Form();form.Text = "Main Window";form.Show();

Windows API

.NET Framework

Page 19: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

1919

Windows Forms (4)Windows Forms (4)Ausschnitt aus der KlassenhierachieAusschnitt aus der Klassenhierachie

System.Object

System.MarshallByRefObject

System.ComponentModel.Component

Control

ButtonBase

Button

TextBoxBase

TextBox

ContainerControl

Form

Page 20: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2020

Windows Forms (5)Windows Forms (5)Einfaches BeispielEinfaches Beispiel

// File: winformdemo.cs

using System;using System.Windows.Forms;

namespace WinFormDemo { public class SimpleForm : Form { public SimpleForm() { Text = “Hello From WinFormDemo”; } public static void Main() { Application.Run(new SimpleForm()); } }}

Page 21: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2121

ASP.NETASP.NET Serverseitige “Web Forms” Serverseitige “Web Forms”

und “Web Services” und “Web Services” Trennung von Code und Trennung von Code und

SeiteninhaltSeiteninhalt KompiliertKompiliert Deployment ohne “.dll Hölle”Deployment ohne “.dll Hölle” Intelligentes “State Intelligentes “State

Management”Management” ““Backwards compatible” Backwards compatible”

mit ASPmit ASP Steuerelemente passen die Steuerelemente passen die

Ausgabe an den Klienten Ausgabe an den Klienten automatisch an: HTML, automatisch an: HTML, DHTML, WMLDHTML, WML

Win32Win32

MSMQMSMQ(Message(MessageQueuing)Queuing)

COM+COM+(Transactions, Partitions, (Transactions, Partitions,

Object Pooling)Object Pooling)IISIIS WMIWMI

Common Language RuntimeCommon Language Runtime

Das .NET FrameworkDas .NET Framework

Base FrameworkBase Framework

ADO.NET: Data and XMLADO.NET: Data and XML

Web ServicesWeb Services User InterfaceUser Interface

VBVB C++C++ C#C#

ASP.NETASP.NET

PerlPerl PythonPython ……

Page 22: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2222

Visual Studio HauptsprachenVisual Studio Hauptsprachen

Visual Basic.NETVisual Basic.NET Objektorientiert – Wiederverwendung des CodesObjektorientiert – Wiederverwendung des Codes Skalierbar – „Free Threading“Skalierbar – „Free Threading“ Wartbar – Strukturierte AusnahmebehandlungWartbar – Strukturierte Ausnahmebehandlung

Visual C++.NETVisual C++.NET „„Attribute based programming“Attribute based programming“ „„Managed Extensions“ für C++Managed Extensions“ für C++

Visual C#Visual C# Komplett komponentenorientiertKomplett komponentenorientiert

Klassen, Methoden, Eigenschaften, EventsKlassen, Methoden, Eigenschaften, Events

Typsichere SpracheTypsichere Sprache RAD für den C++ EntwicklerRAD für den C++ Entwickler

Page 23: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2323

Die Welt ist mehrsprachigDie Welt ist mehrsprachig

APLAPLCobolCobolEiffelEiffel

FortranFortran

PascalPascal PerlPerl PythonPythonAdaAda

CC

C++C++ C#C#

HaskellHaskell

JavaJava

JscriptJscriptVisual BasicVisual Basic

MercuryMercury

MLML

OzOz

Objective CamlObjective Caml

OberonOberon SmalltalkSmalltalkSchemeScheme

26 Sprachen26 Sprachen

einheitliche einheitliche IDEIDE

Ein FrameworkEin Framework

Hohe IntegrationHohe Integration

Ein DebuggerEin Debugger

Page 24: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2525

Microsoft .NETMicrosoft .NET

Page 25: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2626

XML Web services XML Web services Was ist ein Web service?Was ist ein Web service?

E-mail und WWW E-mail und WWW verbinden Menschen verbinden Menschen und Informationen und Informationen plattformunabhängigplattformunabhängig

XML Web services XML Web services ermöglichen plattform-ermöglichen plattform-unabhängige unabhängige SystemintegrationSystemintegration

"The potential for a "The potential for a computer program to computer program to communicate with most communicate with most any other program, any other program, anywhere, anytime is anywhere, anytime is arguably the most arguably the most revolutionary change revolutionary change brought about by Web brought about by Web Services"Services"

E-mail

VerbindetMenschen

WWW

Verbindet Menschen

undInformationen

Web Services

VerbindenApplikationen

Page 26: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2828

Ab

i li t

y t

o E

xecu

t eA

bi l

i ty

to

Exe

cut e

Completeness of VisionCompleteness of Vision

IBMIBM

MicrosoftMicrosoft

Leading The Industry Web Services EffortLeading The Industry Web Services EffortGartner Group: “Major Vendor Web Services Platform Gartner Group: “Major Vendor Web Services Platform Influence Magic Quadrant”Influence Magic Quadrant”

HPHP

SunSun

OracleOracle

ChallengersChallengers LeadersLeaders

Niche PlayersNiche Players VisionariesVisionaries

*CIO Magazine Poll Jan 03*CIO Magazine Poll Jan 03

CIOs: which platform is preferred CIOs: which platform is preferred in building Web services*in building Web services*

Microsoft .NET 46.5%Microsoft .NET 46.5%IBM WebSphere 19%IBM WebSphere 19%Sun ONE 8.2%Sun ONE 8.2%

BEA

20020022

Page 27: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

2929

Microsoft .NETMicrosoft .NET

Page 28: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

3030

.NET Geräteunterstützung.NET Geräteunterstützung

Page 29: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

3131

Das .NET Das .NET CompactCompact Framework Framework

.NET Framework für “Smart Devices”.NET Framework für “Smart Devices” Ziel: Software als Service für GeräteZiel: Software als Service für Geräte ““Lightweight” Runtime-ArchitekturLightweight” Runtime-Architektur Kompatible Teilmenge der Desktop Kompatible Teilmenge der Desktop

PlattformPlattform Visual Studio® .NET und DrittanbieterVisual Studio® .NET und Drittanbieter Anpassbar an AnwendungsbedürfnisseAnpassbar an Anwendungsbedürfnisse

Verfügbarkeit geplant für:Verfügbarkeit geplant für: Verschiedene CPUsVerschiedene CPUs Windows CE und andere OSWindows CE und andere OS Unterschiedliche FormfaktorenUnterschiedliche Formfaktoren

Page 30: 1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH

3232© 2001 Microsoft Corporation. All rights reserved.© 2001 Microsoft Corporation. All rights reserved.