34
Seminar Sommersemester 2002 ASP.NET Andre Margousian

Seminar Sommersemester 2002 ASP.NET

  • Upload
    erno

  • View
    30

  • Download
    1

Embed Size (px)

DESCRIPTION

Seminar Sommersemester 2002 ASP.NET. Andre Margousian. Inhalt. Von HTML zu ASP & ASP.NET Ein Rückblick auf ASP Warum ASP.NET? Die .NET Palttform Was ist neu an ASP.NET?. ASP.NET Andre Margousian. Von HTML zu ASP & ASP.NET. Warum ASP & ASP.NET ? - PowerPoint PPT Presentation

Citation preview

Page 1: Seminar Sommersemester 2002 ASP.NET

Seminar Sommersemester 2002

ASP.NET

Andre Margousian

Page 2: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Inhalt

1. Von HTML zu ASP & ASP.NET

2. Ein Rückblick auf ASP

3. Warum ASP.NET?

4. Die .NET Palttform

5. Was ist neu an ASP.NET?

Page 3: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Von HTML zu ASP & ASP.NET

Warum ASP & ASP.NET?

Statische HTML-Seiten reichen nicht aus, um größere Web-Anwendungen zu realisieren

Verbesserung durch clientseitigen JavaScript

Mit ASP & ASP.NET können dynamische Anwendungen realisiert werden

Beispiele: Gästebuch, Online-Shop, interne Geschäftsdatenbanken

Page 4: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Von HTML zu ASP & ASP.NET

Warum ASP & ASP.NET?

Die Entwicklung von Internet-Anwendungen wird immer wichtiger.

Das häufigste Frontend wird in Zukunft Browser basiert sein.

Microsoft hat die Active Server Pages grundlegend renoviert.

ASP.NET ein mächtiger Nachfolger für die .NET Plattform.

Page 5: Seminar Sommersemester 2002 ASP.NET

ASP & JSP im Vergleich Andre Margousian

Ein Rückblick auf ASP

Was ist ASP ?

Active Server Pages (ASP) entwickelt von Microsoft

Skriptumgebung auf Serverseite

Dynamische und interaktive Webserver-Anwendungen können erstellt und ausgeführt werden

Keine Arbeit für das Erstellen von HTML-Seiten auf Clientseite, da Skripte auf Webserver ausgeführt werden

Page 6: Seminar Sommersemester 2002 ASP.NET

ASP & JSP im Vergleich Andre Margousian

Ein Rückblick auf ASP

Sie besitzen eine leistungsfähige ActiveX-Komponente

Dabei kommt das sogenannte ActiveX-Data-Object Modell (ADO) zum Einsatz

ASP-Code wird als Script in HTML-Seiten eingefügt und bei Request seitens des Clients vom Webserver ausgeführt

Innerhalb der Scripts läßt sich ADO verwenden

Page 7: Seminar Sommersemester 2002 ASP.NET

ASP & JSP im Vergleich Andre Margousian

Ein Rückblick auf ASP

ASP ist eine Kombination aus HTML-Seiten, Skriptbefehle und ActiveX-Komponenten

Ausführung des ASP-Skripts, wenn Browser .asp-Datei vom Webserver anfordert

Webserver ruft dann ASP-Modul auf, das die Datei liest, etwaige Befehle ausführt und HTML-Seite an Browser sendet

Page 8: Seminar Sommersemester 2002 ASP.NET

ASP & JSP im Vergleich Andre Margousian

Warum ASP.NET?

Eigenschaften von ASP.NET

Sprachunabhängigkeit

Vereinfachte Entwicklung

Trennung von Code und Inhalt(Seperating logic from format)

Verbesserte Skalierbarkeit

Page 9: Seminar Sommersemester 2002 ASP.NET

ASP & JSP im Vergleich Andre Margousian

Warum ASP.NET?

Eigenschaften von ASP.NET

Unterstützung mehrerer Clients

Neue Web Form-Steuerelemente

Serverseitige Verarbeitung

Page 10: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

vereinheitlicht die bisher unterschiedlichen Laufzeitsysteme für die verschiedenen Programmiersprachen

alle Sprachen haben einen gemeinsamen Laufzeitsystem, der Common Language Runtime(CLR).

CLR ist ein Manager für den Code, ist zuständing für das Laden und Ausführen der Befehle.

Page 11: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

Compiler erzeugen keine Maschienenspezifische Code mehr, sondern eine Zwischensprache(MSIL)

Page 12: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

MSIL

Zwischensprache wird Microsoft Intermediate Language (MSIL) bezeichnet.

jeder Compiler, der MSIL erzeugt, kann Code unter Aufsicht der Runtime ausführen lassen .

MSIL wird auf dem Zielsystem beim ersten Aufruf in Maschinencode umgesetzt.

Page 13: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

MSIL

MSIL ist also unabhängig von der Hardwareplattform

MSIL ist ein CPU-unabhängiger Anweisungssatz, der effizient in systemeigenen Code konvertiert werden kann

MSIL heißt auch Managed Code

Um es Plattformspezifisch zu machen muss es mithilfe des Just-in-Time-Compilers(JIT) kompiliert werden

Page 14: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

Metadaten

Sind Daten, die der .NET-Sprachcompiler bei der Kompilierung des Quellcodes in MSIL erzeugt

Metadaten beschreiben die im Quellcode verwendeten Typen

Mit den Metadaten verfügt die Runtime über alle Informationen, die zur Laufzeit zum Auffinden und Extrahieren des Codes aus der MSIL erforderlich sind

Page 15: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

Kompilierung und Ausführung von MSIL

Kompilierung

Ausführung

JIT-Compiler (Just-in-Time)

Source-Code

Source-Code

MSILMetadaten

MSILMetadaten

Sprach-CompilerSprach-

Compiler

JIT-Compiler

JIT-Compiler

Systemeig.-Code

Systemeig.-Code

Page 16: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

JIT-Compiler (Just-in-Time)

Der Faktor der Plattformunabhängigkeit

Übersetzt nicht den gesamten MSIL Code

Kompilierung von Code nach Bedarf

Kompilierte systemeigene Code wird zur Wiederverwendung im Cache abgelegt

Page 17: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Die .NET Plattform

Funktionsweise der JIT-Kompielierung

Wenn eine Klasse geladen wird, bekommt jede Methode der Klasse einen Stub

Wenn die Methode zum ersten mal aufgerufen wird, wird die Steuerung an JIT-Compiler übergeben.

Der JIT-Compiler kompiliert dann den MSIL in systemeigene Code

Der Stub wird so verändert, dass er jetzt auf dem systemeigenen Code verweist

So werden alle nachfolgenden Aufrufen direkt an den Systemeigenen Code geleitet

Page 18: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

.NET Framework

umfangreiche Klassenbibliothek, die alle Bereiche der Programmierung abdeckt

Sie vereinheitlicht die bisherigen Programmierschnittstellen

.NET ist komplett objektorientiert

Jeder Code ist innerhalb einer Klasse verborgen, was auch für ASP.NET-Seiten gilt

Page 19: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

.NET Framework

Page 20: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

Was ist neu an ASP.NET?

Was ist neu?

Features und Änderungen

WebForms

WebControls

Beispiele

Page 21: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Features und Änderungen

eine Reihe von sehr guten, aber leider tiefgreifenden Änderungen.

ASP und ASP.NET können parallel betrieben werden.

die Engine erkennt die ASP.NET Dateien an der neuen Endung .aspx.

Page 22: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Features und Änderungen

Da ASP.NET auf der Common Language Runtime aufsetzt, wird der Code kompiliert, nicht interpretiert.

Eine ASP.NET-Seite wird beim ersten Aufruf in eine .NET-Klasse kompiliert, die bei den nachfolgenden Aufrufen benutzt wird.

Da die ASP.NET-Seiten beim ersten Zugriff kompiliert werden, verbessert sich das Laufzeitverhalten deutlich

Page 23: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Programmiersprache

VBScript wird unter ASP.NET nicht weiter unterstützt.

ASP.NET kann in allen .NET Sprachen geschrieben werden.

Im Regelfall wird VB.NET oder C# verwendet.

Page 24: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

ASP.NET Anwendungen

Eine Anwendung besteht aus:

-ASP.NET SeitenWebForms (WebForm1.aspx)WebServices (Service1.asmx)

-Komponenten (assemblies)Resource1.resx

-Konfigurationsdateienconfig.webglobal.asax

Sämtliche Elemente einer Anwendung müssen sich in einem Verzeichnis befinden

Page 25: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Webforms

WebForms sind das Internet-Gegenstück zu WinForms.

WinForms kennen wir alle als Fenster von Windows Applikationen.

Mit WebForms ist die visuelle Gestaltung von Internet-Seiten möglich.

Page 26: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

HTML und Code trennen(CodeBehind)

Ein Formular besteht nunmehr aus zwei Teilen: dem Design- und dem Anweisungs-Code.

So wird endlich eine saubere Trennung von Code und Darstellung möglich. Diese Vorgehensweise wird auch als CodeBehind bezeichnet.

Page 27: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Die Beziehungen zwischen den Dateien

System.Web.UI.Page ist die Basisklasse für jede Webform

Die Klasse in der CodeBehind-Klassendatei erbt von der

KlasseSystem.Web.UI.Page

WebForm-Datei erbt von der CodeBehind-Klassendatei

Ergebnisdatei

System.Web.UI.PageSystem.Web.UI.Page

WebForm1.aspx.vbCodeBehind-Klassendatei

WebForm1.aspx.vbCodeBehind-Klassendatei

WebForm1.aspxWebForm1.aspx

Kompilierte .dll Kompilierte .dll

Page 28: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

WebControls

Objekte in Webforms: Eingabefeldern, Buttons alle anderen "<input>" Elemente, serverseitige Labels und auch ein komplexes Element DataGrid zur Darstellung von Datenbank-Inhalten.

WebControls sind serverseitige Steuerelemente.

Sie Entsprechen die von den Visual Basic und VBA her bekannten Steuerelementen.

Page 29: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

WebControls

Sie werden beim Aufruf eines Formulars vom Server passend erzeugt.

Die zugehörigen Frameworkklassen sind unter System.Web.UI.WebControls zu finden.

Erkennbar am Zusatz runat="server“

Page 30: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

WebControls

Erzeugen serverseitig HTML-Output

WebControls merken sich Ihren Zustand (Viewstate)

Controls können zusammengesetzt werdenEinfaches Beispiel 2 Textfelder für die Eingabe von Vor- und Nachname einer Person

Page 31: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Beispiele

Beispiel.aspx (WebForm) Beispiel.aspx.vb (CodeBehind-Klassendatei)

ChangeButton.aspx ChangeButton.aspx.vb

Login.aspx Login.aspx.vb

Page 32: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

ChangeButton.aspx

1. 2.

Page 33: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Login.aspx

Page 34: Seminar Sommersemester 2002 ASP.NET

ASP.NET Andre Margousian

ASP.NET

Links

www.gotdotnet.com

msdn.microsoft.com

www.asp.net

www.icsharpcode.net

www.brinkster.com