VB .NET Proseminar .NET SS04.

Slides:



Advertisements
Ähnliche Präsentationen
C Sharp (C#) Martin Saternus Senior Student Partner
Advertisements

Ziele von EINI I + II Einführen in „Informatik“
ALP II: Objektorientierte Programmierung Sommersemester 2006
der Universität Oldenburg
Imperative Programmierung
Forschungszentrum caesar
Programmierung II Prof. Dr. Michael Löwe
Variablen und Datentypen
Was ist neu in VS 2003 ? Ein Überblick. Bernd Marquardt Software & Consulting
der Universität Oldenburg
der Universität Oldenburg
Objektorientierung mit VBA
Java: Grundlagen der Sprache
Datentyp- umwandlung. Literale sind: Bezeichner mit einem festen Wert wie z.B:
Objekte und Arbeitsspeicher
Basisinformationstechnologie WS 2003/04 T.Schaßan
Sommersemester 2003 Lars Bernard
Robotik mit LEGO Mindstorms
Java-Kurs - 2. Übung Entwicklungsumgebung Struktur von Programmen
Zusammenfassung Vorwoche
Vortrag in DVG 3 Hans Zais Matr. Nr
Presenter: Daniel Walzenbach Technologieberater
Presenter: Daniel Walzenbach Technologieberater
MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 2 Datentypen, Variablen, Namensräume, Ausdrücke und Operatoren (Level 100) Presenter: Daniel.
MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 5 Noch mehr Klassen und Strukturen (Level 100) Presenter: Daniel Walzenbach Technologieberater.
Presenter: Daniel Walzenbach Technologieberater
Wichtige Fachausdrücke in C
Einführung in die Programmiersprache C 1
Einführung in Programmierung in Access - VBA
Programmieren Kapitel 3 – Variablen.
Kontrollstrukturen Verwendung: Steuerung des Ablaufs.
C# Einheitliches Typsystem
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Konzept einer Programmiersprache!
Programmiersprachen Proseminar Grundlagen wissenschaftlichen Arbeitens
Variablen in Programmiersprachen
Datentypen: integer, char, string, boolean
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Datentypen Überblick Datentypen Einfache / fundamentale Datentypen
Programmieren in C Grundlagen C 2
BMEVIEEA100 Grundlagen der Programmierung
Zeichenketten in PASCAL
PI Burgenland Java und JavaScript 1. Teil
Hochschule Fulda – FB ET Sommersemester 2014
Programmieren mit BASIC
Java Syntaxdiagramme Buchstabe A B Z a z ... Ziffer
Übersicht Nachtrag zu Ausdrücken
Java-Kurs - 3. Übung Hausaufgabe Arrays For-Schleifen.
RelationentheorieObjektorientierte Datenbanken  AIFB SS C++-ODL (1/6) Erweiterung des deklarativen Teils einer C++-Klasse Datentypen d_String,
Vordefinierte Datentypen (1)
Kapitel 5Strukturen Information aus der realen Welt werden in einem informationsverarbeitenden System als Daten abgelegt. Diese stellen also eine (vereinfachte)
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Zusammenfassung des Kapitel 6
Extended Pascal ( Erweitreung von Pascal) Name: Mehmet CELIK Matr :
The Programming Language Pascal
Programmierung mit ArcObjects Frank Münster Proseminar Geoinformation II.
Extended Pascal Erweiterung von Pascal shadi Behzadipour shadi Shadi behzadipour.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Sequenzen: Lineare Programme
Variablen und Datentypen
Seminar Internettechnologie Prof. Dr. Lutz Wegner Julia Mikov WS 06/07
Objektorientierte Programmierung §Klassen §Objekte §Attribute §Eigenschaften §Methoden §Datenkapselung §Ereignisse §Vererbung §Entwicklungszeit §Laufzeit.
Variablen und Operatoren. C++ Teil 2: Grundstrukturen Variablen Operatoren Kontrollstrukturen Funktionen Header-Dateien Pointer und Referenzen.
C++ FÜR cOMPUTERSPIELENTWICKLER
Tutorium Software-Engineering SS14 Florian Manghofer.
Pointer. * und &  Bei der Definition int var1; ○ // „normale“ Variable int *var2; ○ // Zeiger auf einen Integer int *var2 = NULL; ○ // … incl. Initialisierung.
Datentypen: integer, char, string, boolean
Datentypen: integer, char, string, boolean
Variable: typ varName = Wert Kiste: Art Aufschrift  Inhalt
SS 04 Christiane Rauh Christian Hellinger
 Präsentation transkript:

VB .NET Proseminar .NET SS04

Inhalt Visual Basic und die Microsoft-Welt Prozedurale Programmierung Objektorientierte Programmierung Literatur VB .NET

Visual Basic und die Microsoft-Welt das erste Microsoft-Produkt war ein Basic-Interpreter von Microsoft stammende Basic-Dialekten: QBasic, GW-Basic, Visual Basic für DOS (MS-DOS) Visual Basic für Windows, Word Basic, Access Basic Visual Basic für Applikationen (VBA) VB Script (Explorer) Visual Basic ist die unter Windows am häufigsten eingesetzte Programmiersprache Visual Basic und die Microsoft-Welt VB .NET

Prozedurale Programmierung Variablen, Konstante und Felder Operatoren Steueranweisungen Prozeduren VB .NET

Variablen, Konstante und Felder (1) Deklaration ‘ Deklaration von Variablen Dim Variable1, Variable2 As Datentyp Dim Variable3 As Integer = 1 ‘ Deklaration von Arrays Dim Array1(), Array2(,,,) As String Dim Array3(10) As Long Dim Kunden() As String = {“Maier“, “Hans“} ‘ Deklaration von Konstanten Const PI = 3.1415 VB .NET

Variablen, Konstante und Felder (2) elementare Datentypen Ganzzahlen (Byte, Short, Integer, Long) Gleitkommazahlen (Single, Double, Decimal) alphanumerische Zeichen (Char, String) sonstige (Boolean, Date) VB .NET

Variablen, Konstante und Felder (3) Schlüsselwort Zugriff möglich: Public in der gesamten Anwendung Protected in der eigenen oder in einer abgeleiteten Klasse Friend in derselben Assembly Protected Friend in der eigenen oder in einer abgeleiteten Klasse und in derselben Assembly Private innerhalb des Moduls oder der Klasse Static nur auf Prozedurebene VB .NET

Variablen, Konstante und Felder (4) Wertzuweisung ‘ Über Zuweisungen erhalten variablen einen Wert Dim Variable1 As Double Variable1 = 1.23456789 Dim Kunden(2) As String Kunden(0) = “Maier“ Kunden(1) = “Hans“ Dim Variable2 As Klasse1 Variable2 = New Klasse1() VB .NET

Variablen, Konstante und Felder (5) Typkonvertierung implizite Konvertierung (Option Strict Off) Dim i As Integer, d As Double i = 432 d = i explizite Konvertierung (CBool, CByte, CChar, CDate, CDbl, CDec, CInt, CLng, CObj, CShort, CSng, CStr) d = CDbl(i) generische Umwandlungsfunktion CType d = CType(i, Double) VB .NET

Operatoren Arithmetische Operatoren (=, +, -, *, /, \, ^, Mod, &, +=, -=, *=, /=, \=, ^=, &=) Vergleichsoperatoren (<, >, =, < >, >=, <=, Like) “VB .NET“ Like “*.[M-O]??“ Verkettungsoperatoren (&, +) Logische Operatoren (Not, And, Or, Xor, AndAlso, OrElse) Bitweise Operationen (Not, And, Or, Xor) VB .NET

Steueranwesungen (1) die If-Anweisung If Bedingung1 Then ‘ Bedingung1 wahr ElseIf Bedingung2 Then ‘ Bedingung1 falsch und Bedingung2 wahr Else ‘ Bedingung1 falsch und Bedingung2 falsch End If VB .NET

Steueranwesungen (2) die Select Case-Anweisung Select Case Variable1 Case Ausdruck1 ‘ Variable1 hat den Wert Ausdruck1 Case Ausdruck2 ‘ Variable1 hat den Wert Ausdruck2 Case Else ‘ Variable1 hat keinen der genannten Werte End Select VB .NET

Steueranwesungen (3) die For...Next-Schleife For Zählervariable = Anfangswert To Endwert Step Inkrement ‘ Auszuführender Code Next Zählervariable die For Each...Next-Schleife For Each Elementvariable In Liste ‘ ‘ Auszuführender Code Next Elementvariable VB .NET

Steueranwesungen (4) die While-Schleife While boolescher Ausdruck ‘ Auszuführender Code End While die Do...Loop-Schleife Do Loop Until boolescher Ausdruck VB .NET

Steueranwesungen (5) (strukturierte) Ausnahmebehandlung Try ‘ Zu schützender Code Catch Ausnahme As Ausnahmetyp ‘ beim Eintreten einer Ausnahme auszuführender Code Finally ‘ dieser Code wird ausgeführt, ob nun eine Ausnahme ‘ ausgelöst wird oder nicht End Try VB .NET

Prozeduren Visual Basic-Code wird immer in Prozeduren geschrieben Prozedurtypen in Visual Basic: Sub-Prozeduren Function-Prozeduren Property-Prozeduren Ereignisbehandlungsprozeduren VB .NET

Sub-Prozeduren (1) Eine Sub-Prozedur (Subroutine) ist ein Block von Visual Basic .NET-Code, die zwischen dem Anweisungen Sub und End Sub eingeschlossen ist. Sub Name() ‘ Code der Subroutine End Sub Sub Name(Argumentliste) VB .NET

Sub-Prozeduren (2) Argumentliste Sub Sub1(ByRef a As Long, ByVal b As Long, _ Optional c As Long = 0) a += b + c End Sub Aufrufen Dim x As Long = 0 Call Sub1(x, 1) Sub1(x, 2, 1) Call MsgBox(x) VB .NET

Function-Prozeduren (1) Eine Function-Prozedur ist ein Block von Visual Basic .NET-Code, die zwischen dem Anweisungen Function und End Function eingeschlossen ist, und einen Rückgabewert an das aufrufende Programm zurückgibt. Function Name[(Argumentliste)] As Datentyp Dim Rückgabewert As Datentyp ‘ sonstiger Code der Funktion Return Rückgabewert End Function Aufrufen Wert = Funktion1(100) VB .NET

Die Main-Prozedur Jedes Visual Basic-Programm muss eine Prozedur mit der Bezeichnung Main enthalten Varianten von Main Sub Main() Sub Main(ByVal Args() As String) Function Main() As Integer Function Main(ByVal Args() As String) As Integer VB .NET

Objektorientierte Programmierung Klassen und Objekte Felder, Eigenschaften, Methoden und Ereignisse Vererbung und Schnittstellen Module und Strukturen VB .NET

Klassen und Objekte (1) Deklaration von Klassen [Public|Private|Friend] Class Klasse1 ‘ restlicher Code der Klasse End Class Deklaration von Objekten Imports System.Collections Dim Variable1 As Klasse1 Dim Variable2 As New Hashtable VB .NET

Klassen und Objekte (2) Konstruktoren Class Klasse1 Public Sub New() ‘ Code zur Initialisierung End Sub Public Sub New(Variable1 As Datentyp) End Class VB .NET

Klassen und Objekte (3) Destruktoren Class Klasse1 ‘ wird vom Garbage Collector aufgerufen (NDD) ‘ NND = Nondeterministic Distruction Protected Overrides Sub Finalize() ‘ Code zum Aufräumen End Sub End Class VB .NET

Klassen und Objekte (4) Class Klasse1 Implements System.IDisposable Protected Overrides Sub Finalize() Dispose(false) End Sub Public Sub Dispose() Implements _ System.IDisposable.Dispose GC.SuppressFinalize(Me) Dispose(true) Protected Sub Dispose(Disposing _ As Boolean) ‘ Freigabe von lokalen nicht ‘ verwalteten Ressourcen If (Disposing) Then ‘ Member.Dispose() End If End Sub End Class VB .NET

Klassen und Objekte (5) Ein Namensraum ist ein abstraktes Konzept, das verwendet wird, um eine reihe von Klassen oder Modulen zusammenzufassen Namespace Namensraum1 Class Klasse1 ... Module Modul1 ... End Namespace Dim Variable1 As New Namensraum1.Klasse1 Variable1.Feld1 = Namensraum1.Modul1.Funktion1() VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (1) Deklaration von Feldern Class Klasse1 [Public|Private|Friend|Protected|Shared] Feld1 As Datentyp End Class Das Schlüsselwort Shared gibt an, dass die Variable freigegeben ist, d.h. sie ist keiner bestimmten Instanz einer Klasse zugewiesen Zugriff auf Felder Dim Variable1 As New Klasse1 Variable1.Feld1 = 0 VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (2) Deklaration von Eigenschaften Class Klasse1 Private Variable1 As Datentyp Public Property Eigenschaft1() As Datentyp Get Return Variable1 End Get Set (ByVal Wert As Datentyp) Variable1 = Wert End Set End Class VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (3) Deklaration von Methoden Class Klasse1 [Public|Private|Friend|Protected|Shared] Sub Methode1() End Sub End Class Zugriff auf Methoden Dim Variable1 As New Klasse1 Call Variable1. Methode1() Dim Heute As Date Heute = DateTime.Today() VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (4) Ereignisse ermöglichen es einem Objekt, anderen Elementen mitzuteilen, dass etwas geschehen ist (z.B. Benutzeraktionen) Ein Ereignishandler ist eine Sub-Prozedur, die aufgerufen wird, wenn ein entsprechendes Ereignis auftritt Der Aufruf eines Ereignishandlers erfolgt automatisch VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (5) Deklaration von Ereignissen Class Klasse1 Public Event Event1(Argumente) Private Sub RaiseEvent1() ‘ Ereignis wird ausgelöst RaiseEvent Event1(...) End Sub End Class VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (6) Abfangen von Ereignissen mit der Handles-Klausel Dim WithEvents Variable1 As New Klasse1 Sub Variable1_Event1() Handles Variable1.Event1 ‘ Code der Ereignisbehandlungsprozedur End Sub VB .NET

Felder, Eigenschaften, Methoden und Ereignisse (7) Abfangen von Ereignissen mit der AddHandler-Anweisung Dim Variable1 As New Klasse1 ... AddHandler Variable1.Event1, AdressOf Variable1_Event1 Sub Variable1_Event1() ‘ Code der Ereignisbehandlungsprozedur End Sub RemoveHandler Variable1.Event1, AdressOf Variable1_Event1 VB .NET

Vererbung und Schnittstelen (1) Vererbung von Funktionalität Public Class Klasse1 ‘ Code der Klasse1 Public Sub Methode1() ‘ Code der Methode End Sub End Class Public Class Klasse11 Inherits Klasse1 ‘ Code der Klasse11 VB .NET

Vererbung und Schnittstelen (2) Modifizierer zur Vererbung Versiegelte Klassen Public NonInheritable Class Klasse1 Public Shared Sub Methode1() ‘ Code der Methode1 End Sub End Class Abstrakte Klassen Public MustInherit Class Klasse1 Public MustOverride Sub Methode1() VB .NET

Vererbung und Schnittstelen (3) Erweiterung von Funktionalität Public Class Klasse11 Inherits Klasse1 Public Function Methode2() As String End Function End Class VB .NET

Vererbung und Schnittstelen (4) Überschreiben von Funktionalität Public Class Klasse1 Public Overridable Sub Methode1() End Sub End Class Public Class Klasse11 Inherits Klasse1 Public Overrides Sub Methode1() ‘ neue Implementierung VB .NET

Vererbung und Schnittstelen (4) Überschatten von Funktionalität Public Class Klasse1 Public Sub Methode1() End Sub End Class Public Class Klasse11 Inherits Klasse1 Public Shadows Sub Methode1() ‘ neue Implementierung VB .NET

Vererbung und Schnittstelen (5) Überschatten Überschreiben Schutz von späteren Änderungen der Basisklasse, durch die ein Member eingeführt wird, der bereits in der abgeleiteten Klasse definiert wurde Gewährleisten des Polymorphismus durch die Definition einer anderen Implementierung einer Prozedur oder Eigenschaft mit derselben Aufrufabfolge Wenn weder Shadows noch Overrides angegeben wurden wird Shadows angenommen Overridable ist in der Basisklasse erforderlich. Overrides ist in der abgeleiteten Klasse erforderlich Jeder deklarierter Elementtyp kann überschattet werden Nur Prozeduren (Function oder Sub) oder Eigenschaften können überschrieben werden

Vererbung und Schnittstelen (6) Class Klasse1 Public Sub Methode1() End Sub Public Sub Methode1(I As Integer) Public Sub Methode2() Public Sub Methode2(I As Integer) End Class Class Klasse11 Inherits Klasse1 Public Overloads Sub Methode1() End Sub Public Shadows Sub Methode2(I As Long) End Class VB .NET

Vererbung und Schnittstelen (7) Deklaration von Schnittstellen Public Interface Schnittstelle1 Public Sub Methode1() End Interface Public Class Klasse1 Implements Schnittstelle1 Public Sub Methode1() Implements Schnittstelle1.Methode1 End Sub End Class VB .NET

Module und Strukturen (1) Module stellen eine einfachere Möglichkeit zur Organisation von Hilfsfunktionen und globalen Daten bereit Module sind ein mit Klassen vergleichbarer Verweistyp Die Member eines Moduls sind implizit Shared Module können nicht instanziiert werden, können keine Schnittstellen implementieren, können nicht vererbt werden Deklaration Module Modul1 ‘ Code des Moduls End Module VB .NET

Module und Strukturen (2) Strukturen stellen ähnlich wie Klassen Datenstrukturen dar Verallgemeinerung des benutzerdefinierten Typs, der in älteren Versionen von Visual Basic unterstützt wird Strukturen sind im Gegensatz zu Klassen Wertetypen Strukturen können nicht vererbt werden Deklaration Structure Struktur1 Public Variable1 As String Private Array1() As Long End Stucture VB .NET

Literatur Michael Kolberg: “VB .NET Programmierung“, Franzis‘ Verlag GmbH, 2003 “Programming in the .NET Environment“ Jeff Prosise: “Microsoft .NET Entwicklerbuch“, Microsoft Press, 2002 VB .NET