MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 2 Datentypen, Variablen, Namensräume, Ausdrücke und Operatoren (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 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Übungsaufgabe, Teil 1 Schreiben Sie ein Programm, das mit den Zeichen + I und – ein kleines Fenster ausgibt Verwenden Sie Console.WriteLine() und/oder Console.Write() +--------------------+ I I I VB.NET ist cool! I
Übungsaufgabe, Lösung Mehrfach den Befehl System.Console.WriteLine verwenden Module Module1 Sub Main() ' VB.NET ist cool! in einer Box auf der Console ausgeben System.Console.WriteLine("+--------------------+") System.Console.WriteLine("+ +") System.Console.Write("+ ") System.Console.Write("VB.NET ist cool!") System.Console.WriteLine(" +") End Sub End Module
Demonstration #1 demo VB.NET ist cool!
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Namensräume & Referenzen Was sind Namensräume und warum werden sie gebraucht? Namensräume gruppieren thematisch zusammenhängende Klassen --> geben logische Struktur vor In einem Namensraum müssen Namen EINDEUTIG sein In verschiedenen Namensräumen können Namen mehrmals vorkommen Soll auf eine Klasse außerhalb des aktuellen Namensraums zugegriffen werden, so muss dieser angeben werden Namensräume können beliebig angelegt werden Namensräume werden mit Imports angegeben
Demonstration #2 demo Das Imports Statement
Namensräume & Referenzen Um .NET Komponenten (Assemblies) zu verwenden muss auf diese in dem Projekt verwiesen werden Danach können diese Komponenten verwendet werden Namensraum System soll verwendet werden Alles eintippen: System.Console.WriteLine() Vereinfachung: Zuerst: Imports System Dann reicht Console.WriteLine() Namensräume und Assemblies müssen NICHT übereinstimmen!!!
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Datentypen Eingaben müssen gespeichert werden können Eingaben werden in „Variablen“ gespeichert Variablen sind von einem bestimmten Typ Mit VB.NET kann man Wertetypen und Referenztypen verwenden Wertetypen sind einfache, fertige Datentypen Liegen auf dem Stack Referenztypen sind eher komplexe Typen Liegen im Heap Können wir selber programmieren
Der Stack Was ist ein Stack Jedes Programm, das gestartet wird, erhält einen Stack mit einer bestimmten Größe In dem Stack können Daten abgelegt werden Zahlen, Zwischenergebnisse, Texte, …
Der Stack Was ist ein Stack Stackanfang 100 3.14 123.14324 6.0 90 Stackzeiger (Stack Pointer) Hier wird der nächste Wert eingetragen, danach wird der Stackzeiger erhöht Stackende
Wertetypen „Einfache“ Typen (Wertetypen) werden auf dem Stack angelegt SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong, … Sehr schnelle Verarbeitung Brauchen wenig Platz im Speicher Nachteil: Der Stack hat leider nur eine begrenzte Größe
Referenztypen Referenztypen werden auf dem Heap gespeichert Sind unter der Kontrolle des Garbage Collectors Das Erzeugen solcher Typen ist aufwändiger und auch langsamer Vorteil: Im Heap ist sehr viel Platz
Wertebereiche SByte: –128 bis 127 (1 Byte) Byte: 0 bis 255 (1 Byte) Short: –32.768 bis 32767 (2 Byte) UShort: 0 bis 65.535 (2 Byte) Integer: –2.147.483.648 bis 2.147.483.647 (4 Byte) UInteger: 0 bis 4.294.967.295 (4 Byte) Long: –9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 (8 Byte) ULong: 0 bis 18.446.744.073.709.551.615 (8 Byte) Char: 0 bis 65.535 (2 Byte)
Wertebereiche Single: 7 Stellen 1.5 x 10-45 bis 3.4 x 1038 (4 Byte) Double: 15-16 Stellen 5.0 x 10-324 bis 1.7 x 10308 (8 Byte) Decimal: 28-29 Dezimalstellen 1.0 x 10-28 bis 7.9 x 1028 (16 Byte)
Variablen Es gibt verschiedene Arten von Variablen Uns interessieren zunächst einmal die… … lokalen Variablen Sub Main() ' Main ist eine Methode ' Lokale Variablen befinden sich in einer Funktion ' Lokale Variablen anlegen Dim i As Integer Dim Wert As Double ' Lokale Variable anlagen und ' sofort einen Wert zuweisen Dim j As Integer = 5 Dim Ergebnis As Double = 1.75 End Sub Deklaration Initialisierung
Demonstration #3 demo Variablen deklarieren und initialisieren
Variablen Variablen müssen deklariert werden Variablen müssen einen Namen haben Wertetypen werden mit dem Defaultwert initialisiert Referenztypen müssen initialisiert werden Allgemein: Dim Name as Typ Dim Name as Typ = wert Typ ist: Integer, Double, Short, …
Variablen Namen von Variablen Müssen mit Unterstrich oder Buchstaben beginnen Dürfen Buchstaben, Ziffern und den Unterstrich beinhalten Leerzeichen sind nicht erlaubt Dürfen keine reservierten Wörter verwenden Zwischen Groß- und Kleinschreibung wird nicht unterschieden
Variablen Lokale Variablen haben einen Gültigkeitsbereich (engl. Scope) Sie gelten nur innerhalb des Blocks in dem sie deklariert wurden Sie dürfen nicht mehrfach in einem Block vorkommen
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Operatoren Einfache Operatoren Es gilt „Punkt vor Strich“ + - * / Mod = += -= *= /= Operatoren braucht man um mathematische Formeln (Berechnungen) auszudrücken Es gilt „Punkt vor Strich“ * / Mod vor + - Klammern ( ) können verwendet werden
Demonstration #4 demo Rechnen mit Variablen
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Dateneingabe Dateneingabe mit Console.ReadLine() Es wird immer ein String eingelesen Der String muss entsprechend umgewandelt werden (int, double) Convert.ToInt32(…) Convert.ToDouble(…)
Demonstration #5 demo Ein kleiner Taschenrechner
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Performance Wie schnell rechnet eigentlich VB.NET? Test: Wie viele Additionen schafft der Rechner (Intel Centrino Duo, 2 GHz) in einer Sekunde? 25.000 250.000 2.500.000 25.000.000 250.000.000 2.500.000.000
Demonstration #6 demo Wie schnell rechnet VB.NET denn jetzt genau?
Performance Mathematische Operationen sind sehr schnell Viele andere Dinge dauern aber länger (auch in anderen Sprachen) Daten aus der Datenbank holen Etwas ausdrucken Daten auf Festplatte speichern Download aus dem Internet…
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Übungsaufgabe Schreiben Sie ein Programm welches den Kreisinhalt (A) berechnet. A = πr² Verwenden Sie Console.WriteLine() und/oder Console.Write() und/oder Console.ReadLine() und System.Math.PI Bitte geben Sie den Radius des Kreises in cm ein: 5 Der Kreisinhalt eines Kreises mit Radius 5cm beträgt ca. 78,5cm².
Übungsaufgabe Übungsaufgabe bis zum 10.11.2006 an daniel.walzenbach@microsoft.com Betreff: „VB.NET, Übungsaufgabe Teil 2“ Unter allen Teilnehmern mit richtiger Lösung werden zwei Bücher „Von Microsoft Visual Basic 6.0 nach Visual Basic .NET (Gebundene Ausgabe)“ verlost
Agenda Übungsaufgabe Teil 1 Namensräume und Referenzen Datentypen und Variablen Operatoren Dateneingabe Performance Übungsaufgabe Zusammenfassung
Zusammenfassung Namespaces geben logische Struktur vor Um Klassen aus dem .NET Framework verwenden zu können muss in dem Projekt ein Verweis auf die Assembly erstellt werden Daten werden in Variablen zwischengespeichert Variablen sind von einem bestimmten Typ (Integer, Double, etc.) Variablen können addiert, subtrahiert, etc. werden Daten können mit Console.ReadLine eingelesen werden
Nächste Termine VB.NET für Einsteiger und Umsteiger, Teil 3 Programmausführung steuern Montag, 13.11.2006 16:00-17:00 Uhr VB.NET für Einsteiger und Umsteiger, Teil 4 Klassen und Strukturen Montag, 20.11.2006 16:00-17:00 Uhr VB.NET für Einsteiger und Umsteiger, Teil 5 Noch mehr Klassen und Strukturen Montag, 27.11.2006 16:00-17:00 Uhr
Referenzen & Downloads Visual Studio 2005 Express Editions http://www.microsoft.com/germany/msdn/vstudio/products/express/default.mspx Microsoft Visual Basic 2005 - Das Entwicklerbuch http://www.edv-buchversand.de/mspress/product.asp?cnt=product&id=ms-537&lng=0 Datentyp: Zusammenfassung (Visual Basic) http://msdn2.microsoft.com/de-de/library/47zceaw7(VS.80).aspx MSDN Solve http://msdn-solve.de/
Verlosung Programmieren lernen mit Visual Basic 2005 10 Bücher werden unter allen Teil- nehmern verlost, die an mindes- tens sieben Webcasts teilnehmen
Questions and Answers Daniel Walzenbach daniel.walzenbach@microsoft.com http://blogs.msdn.com/walzenbach