MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 9 Zeichenketten, Delegates und Events (Level 100) Presenter: Daniel Walzenbach Technologieberater.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

Forschungszentrum caesar
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
SQL Server 2005.NET Integration Sebastian Weber Developer Evangelist Microsoft Deutschland GmbH.
Design- und Entwicklungswerkzeuge
Was ist neu in VS 2003 ? Ein Überblick. Bernd Marquardt Software & Consulting
Web Matrix Project Kurzüberblick Dirk Primbs Technologieberater Developer Platform Strategy Group Microsoft Deutschland GmbH.
Objektorientierung mit VBA
3 Sprachelemente und Anweisungen JavaHS Merseburg (FH) WS 06/07 Strings (Zeichenketten)
Java: Dynamische Datentypen
Listen Richard Göbel.
Indirekte Adressierung
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
Ein Beispiel in Java.
Konstruktoren.
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 5 Polymorphismus Sommersemester 2003 Lars Bernard.
AWT – Detailbetrachtung Java 3D – Seminar im Wintersemester 2002/2003 Christian Schneider.
VB .NET Proseminar .NET SS04.
DVG Einführung in Java1 Einführung in JAVA.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Einführung in die Programmierung Datensammlung
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
WebCast: Managed Smart Tags mit VSTO Jens Häupel.NET Technologieberater Microsoft Deutschland GmbH
Presenter: Daniel Walzenbach Technologieberater
Presenter: Daniel Walzenbach Technologieberater
MSDN Webcast: VB. NET für Einsteiger und Umsteiger Einführung in VB
MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 7 Strukturierte Ausnahmebehandlung (Level 100) Presenter: Daniel Walzenbach Technologieberater.
MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 10 Die erste, eigene Klassenbibliothek (Level 100) 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
Silverlight Eine Einführung. Agenda 1.Was ist Silverlight? 2.Die Silverlight Philosophie 3.Vorstellung des Szenarios 4.Einführendes Beispiel 5.Konzepte.
OMRON 1 FINS Befehle schicken mit CX – Server Lite Aufgabe :
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Kontrollstrukturen Verwendung: Steuerung des Ablaufs.
SQL Server 2005 CLR-Integration
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Michael Köster User Experience Specialist Microsoft Corporation.
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Frank Fischer + Bernhard Frank Microsoft Deutschland GmbH.
3/28/2017 8:11 PM Visual Studio Tools für Office { Rapid Application Development für Office } Jens Häupel Platform Strategy Manager Microsoft Deutschland.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 2 Folie 2 ASP.NET HTTP-Handler (1)
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 8 Folie 2 ASP.NET Zustandsverwaltung
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ASP.NET Seitenübergänge
… und was man damit machen kann.
Variablenkonzept Klassisch, in Java Basistyp
Die Klasse String und ihre Methoden
Vortrag: Visual Basic Neuerungen Autor : Dennis Hoyer
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
Verarbeitung von Char, Strings und Zeichenketten 2.
Programmiervorkurs WS 2014 Referenzdatentypen
Mehrfachausführungen Schleifen in VB 2010 ee. Programmidee: Der Anwender gibt eine Zahl ein, und das Programm gibt die Mehrfachen dieser Zahl aus (das.
Sprachneuerungen des .NET Frameworks 3.5
12. Juli 2006Autor: Walter Leuenberger Computeria Urdorf Treff vom 12. Juli 2006 Outlook und Outlook Express nicht nur zum en.
7.-8. März 2013, Rosenheim Brand my SharePoint grafische Gestaltung von SharePoint 2013-Webseiten Fabian Moritz | MVP SharePoint Server.
Christian Binder Senior Platform Strategy Manager Microsoft Deutschland GmbH.
Einführung in die Programmierung mit Java
Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13.
Delphi Chars und Strings
Microsoft Student Partner
Arbeiten mit dem Terminal
«Delegierter» Methoden Schablone Funktionszeiger
 Präsentation transkript:

MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 9 Zeichenketten, Delegates und Events (Level 100) Presenter: Daniel Walzenbach Technologieberater Microsoft Deutschland GmbH daniel.walzenbach@microsoft.com http://blogs.msdn.com/walzenbach

Verlosung Programmieren lernen mit Visual Basic 2005 10 Bücher werden unter allen Teil- nehmern verlost, die an mindes- tens sieben Webcasts teilnehmen

Visual Studio 2005 Express Kleine Geschwister des Visual Studio 2005 Kostenlos http://www.microsoft.com/germany/msdn/vstudio/products/express/vb/default.mspx Visual Basic 2005 Express Edition Visual C# 2005 Express Edition Visual C++ 2005 Express Edition Visual Web Developer 2005 Express Edition SQL Server 2005 Express Edition

Agenda Übungsaufgabe Teil 8 Zeichenketten Delegates Events Zusammenfassung

Übungsaufgabe Teil 8 Berechnen Sie die Wurzeln von 1 bis n in einer for Schleife n soll von dem Anwender frei eingegeben werden Speichern Sie die Wurzeln in einem Array der richtigen Größe Bilden Sie den Mittelwert aller Wurzeln in dem Array Implementieren Sie Ausnahmebehandlung um potentielle Fehler abzufangen Geben Sie alle Wurzeln und deren Mittelwert aus

Demonstration #1 demo Übungsaufgabe, Teil 8

Agenda Übungsaufgabe Teil 8 Zeichenketten Delegates Events Zusammenfassung

Zeichenketten Eine Zeichenkette ist ein Array aus Char Das Arbeiten mit Char Arrays ist nicht so komfortable wie mit der String Klasse Die String Klasse ist Klasse aus dem .NET Framework kein VB.NET Feature

Zeichenketten Zeichenketten anlegen (geht ohne new) Zeichenketten können zusammengefügt werden Dim text As String = "Hallo Welt!" Dim text1 As String = "Hallo" Dim text2 As String = " Welt" Dim text3 As String = text1 & text2 & "!"   Console.WriteLine(text3)

Zeichenketten Die String Klasse des .NET Frameworks enthält viele Methoden und Properties Length EndsWith, StartsWith IndexOf, LastIndexOf IndexOfAny, LastIndexOfAny Insert, Remove, Replace Trim, TrimLeft, TrimRight Substring, Split, Concat, Join, ToCharArray ToLower, ToLowerInvariant, ToUpper, ToUpperInvariant

Zeichenketten Die String Klasse des .NET Frameworks enthält viele statische Methoden und Properties Empty Concat Format IsNullOrEmpty Join

Zeichenketten Achtung, Performance!!! Sting ist unveränderlich Viele neue String Objekte können ein Programm langsam machen Dim Text As String = String.Empty For i As Integer = 0 To 100000 Text += "Hallo" Next Console.WriteLine(Text)   ' Besser!  Dim TextConcat As New System.Text.StringBuilder TextConcat.Append("Hallo") Console.WriteLine(TextConcat)

Demonstration #2 demo Strings

Agenda Übungsaufgabe Teil 8 Zeichenketten Delegates Events Zusammenfassung

Delegates (Funktionszeiger) Wofür werden Zeiger auf Funktionen benötigt? Beispiel: Sortierung Bei der Sortierung muss entschieden werden, welches das größere von zwei Objekten ist Problemlos sind: Integer, Double, String, … Was ist mit eigenen Klassen?

Demonstration #3 demo Bubblesort

Delegates (Funktionszeiger) Es muss festgestellt werden, welches Objekt größer ist… … egal um welchen Objekttyp es sich handelt => eigene Vergleichsroutine schreiben If Daten(j) > Daten(pos) Then pos = j End If

Delegates (Funktionszeiger) Ein Delegate ist ein Objekt das auf eine Methode zeigt Wenn dieses Objekt verwendet wird, dann wird die Methode aufgerufen auf die das Delegate zeigt

Delegates (Funktionszeiger) Schritt 1: Delegate deklarieren Schritt 2: Delegate Objekt instanzieren Schritt 3: Delegate verwenden Delegate Function Add(ByVal i1 As Integer, ByVal i2 As Integer) As Integer Dim a As New Add(AddressOf Addiere) Console.WriteLine(a(5, 6))   Function Addiere( _ ByVal Summand1 As Integer, _ ByVal Summand2 As Integer) As Integer Return Summand1 + Summand2 End Function

Delegates (Funktionszeiger) Vollständiges Beispiel Delegate Function Add(ByVal i1 As Integer, ByVal i2 As Integer) As Integer   Sub main() Dim a As New Add(AddressOf Addiere) Console.WriteLine(a(5, 6)) End Sub Function Addiere( _ ByVal Summand1 As Integer, _ ByVal Summand2 As Integer) As Integer Return Summand1 + Summand2 End Function

Demonstration #4 demo Delegates Flexibler Bubblesort

Agenda Übungsaufgabe Teil 8 Zeichenketten Delegates Events Zusammenfassung

Events (Ereignisse) Was sind Events? Typische Beispiele: Eine E-Mail ist angekommen Ein Button wurde angeklickt Der Inhalt einer Datei auf der Festplatte ändert sich

Events (Ereignisse) Ein Event ist eine Nachricht, die von einem Objekt (Sender) gesendet wurde um über ein bestimmtes Ereignis zu informieren. Das Objekt, welches die Nachricht erhält ist der Empfänger Problem: Der Sender weiß im Vorfeld nicht, welches Objekt oder Methode das Ereignis bearbeitet. Zwischen dem Sender und Empfänger wird ein „Vermittler“ benötigt => Delegate

Demonstration #5 demo Events

Events (Ereignisse) Entscheidende Eigenschaft bei Events: Es wird NICHT festgelegt, welche Methode beim Auslösen des Events aufgerufen wird Die aufzurufende Methode wird von dem Programmierer angegeben Beispiel: Wenn der Button „btn1“ geklickt wird soll die Methode „xyz“ aufgerufen werden

Events (Ereignisse) Jedes Event hat Argumente Standard: EventArgs Spezielle Argumentklassen sind möglich Eigene Argumentklassen sind auch möglich Eigene Klasse durch Ableitung von der Klasse EventArgs Eigene EventArgs-Klasse wird im Delegate angegeben

Agenda Übungsaufgabe Teil 8 Zeichenketten Delegates Events Zusammenfassung

Übungsaufgabe Schreiben Sie ein Programm, welches eine „horizontale“ Balkengrafik darstellen kann Die Höhe der Balken liegt in einem Integer Array ACHTUNG: Max. Länge des Balkens muss berücksichtigt werden (Breite des Fensters) Die Balkenerzeugung und –verwaltung soll in einer eigenen Klasse implementiert werden Das verwendete Zeichen für die Balken soll frei wählbar sein

Übungsaufgabe Sonstige Features: Aussehen Links neben dem Balken soll die Höhe ausgegeben werden Die Balkendaten sollen von der Tastatur eigelesen werden Implementieren Sie eine Sortierroutine Aussehen 25:xxxxxxxxxxxxxxxxxxxxxxxxx 18:xxxxxxxxxxxxxxxxxx 5:xxxxx 7:xxxxxxx 12:xxxxxxxxxxxx

Agenda Übungsaufgabe Teil 8 Zeichenketten Delegates Events Zusammenfassung

Zusammenfassung Strings sind ein sehr mächtiges Werkzeug Werden in jedem Programm verwendet Delegates und Events ermöglichen Flexible Programme Sehr wichtig beispielsweise bei Benutzerschnittstellen

Nächster Termin VB.NET für Einsteiger und Umsteiger, Teil 10 Die erste, eigene Klassenbibliothek Montag, 12.02.2007 16:00-17:00 Uhr

Referenzen & Downloads String-Klasse http://msdn2.microsoft.com/de-de/library/system.string(VS.80).aspx Übersicht über Formatierung http://msdn2.microsoft.com/de-de/library/26etazsy(VS.80).aspx Behandeln und Auslösen von Ereignissen http://msdn2.microsoft.com/de-de/library/edzehd2t(VS.80).aspx Ereignisse und Delegaten http://msdn2.microsoft.com/de-de/library/17sde2xt(VS.80).aspx

Referenzen & Downloads Microsoft Visual Basic 2005 - Das Entwicklerbuch http://www.edv-buchversand.de/mspress/product.asp?cnt=product&id=ms-537&lng=0 MSDN Solve, Antworten für Entwickler http://msdn-solve.de/

Questions and Answers Daniel Walzenbach daniel.walzenbach@microsoft.com http://blogs.msdn.com/walzenbach