Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Melusine Weitzel Geändert vor über 11 Jahren
1
Grundlagen .NET Hilmar Salomo Tobias Richling
Microsoft Student Consultant Student der Informatik FH Augsburg Tobias Richling Microsoft Student Partner Student der Wirtschaftsinformatik Universität Münster Grundlagen .NET STC 02. – 03. Juni 2004
2
Ziele Praxis !!! Verständnis der Vision hinter .NET
Theoretische Kenntnisse in C# Praktische Kenntnis im Umgang mit C# Grundlagen .NET STC 02. – 03. Juni 2004
3
Gliederung Warum .NET? Relevante Sprachfeatures von C# Praxis
Zusammenfassung Grundlagen .NET STC 02. – 03. Juni 2004
4
Warum .NET: Softwareinseln
Sprachfeatures Beispiel Zusammenfassung ? ? ? ? Grundlagen .NET STC 02. – 03. Juni 2004
5
Warum .NET: Probleme Schwieriges Deployment
Sprachfeatures Beispiel Zusammenfassung Schwieriges Deployment DLL Hell Versionierung Nicht interoperabel da inkompatibel Typsystem unterschiedliche Technologien Alte Techniken, z.T. nicht Objektorientiert Sicherheitsmängel Grundlagen .NET STC 02. – 03. Juni 2004
6
Warum .NET: Vision Warum .NET Sprachfeatures Beispiel Zusammenfassung
Grundlagen .NET STC 02. – 03. Juni 2004
7
Warum .NET: Vorteile Einfaches Deployment
Sprachfeatures Beispiel Zusammenfassung Einfaches Deployment Selbstbeschreibende Komponenten Interoperabilität und Kompatiblität Einheitliches Typsystem Portierbares Framework Vollständig Objektorientiert Strenge Sicherheitsmechanismen Sicherheit nach Codeidentität Grundlagen .NET STC 02. – 03. Juni 2004
8
Grundbausteine des .NET Framework
Warum .NET Sprachfeatures Praxis Zusammenfassung Security, Evidence Visual Studio.NET Intermediate Language VB C++ C# JScript J# Common Language Specifications Windows Forms Web Forms WebServices Windows- Applikation ASP.NET CLR: Garbage Collection erwähnen ADO.NET Base Class Library, XML Common Language Runtime, Common Type System Grundlagen .NET STC 02. – 03. Juni 2004
9
Operation System Services
Ausführungsmodell Warum .NET Sprachfeatures Praxis Zusammenfassung Sourcecode VB.NET VC#.NET VC++.NET Unmanaged Component Compiler Compiler Compiler Assembly Assembly Assembly IL-Code NGEN JIT Compiler CLR Managed Code Managed Code Managed Code Unmanaged Code Native Code CLR Services Operation System Services Grundlagen .NET STC 02. – 03. Juni 2004
10
Metadaten - Reflection
Warum .NET Sprachfeatures Praxis Zusammenfassung System.Type Felder Methoden . . . public class Person { public string firstName; public string lastName; public bool Save() { System.Type t = this.GetType(); foreach(FieldInfo f in t.GetFields()) { ... } } } Person p = new Person(“Hilmar",“Salomo"); p Salomo Person Hilmar Selbstbeschreibende Komponenten, keine Registrierung erforderlich (DLL HELL) Grundlagen .NET STC 02. – 03. Juni 2004
11
Klassenbibliothek System.Web System.Windows.Forms System.Drawing
Services UI Design ComponentModel Description HtmlControls Discovery WebControls Protocols System.Drawing Caching Security Drawing2D Printing Configuration SessionState Imaging Text System.Data System.Xml OleDb SqlClient XSLT Serialization Common SQLTypes XPath Einheitliche Klassenbibliothek, Sprachen haben keine „Mächtigkeit“ in Form eigener Logik System Collections IO Security Runtime InteropServices Configuration Net ServiceProcess Remoting Diagnostics Reflection Text Grundlagen .NET STC 02. – 03. Juni 2004 Serialization Globalization Resources Threading
12
Sprachfeatures von C# Typsystem und Typisierung Zugriffsrechte
Warum .NET Sprachfeatures Praxis Zusammenfassung Typsystem und Typisierung Zugriffsrechte Klassen und Strukturen Boxing und Unboxing Enumerations Felder Properties und Indexer Fehlerbehandlung For Each Schleifen Grundlagen .NET STC 02. – 03. Juni 2004
13
Typ System Basiert auf dem Common Type System Einheitliches Konzept
Warum .NET Sprachfeatures Praxis Zusammenfassung Basiert auf dem Common Type System Einheitliches Konzept „Alles“ ist ein Objekt Referenz- und Valuetypes Value Reference Interfaces Simple Types Classes Enums Arrays Structs Heap Stack Grundlagen .NET STC 02. – 03. Juni 2004
14
Zugriffsrechte Von C++ übernommen Erweiterungen in C# public protected
Warum .NET Sprachfeatures Praxis Zusammenfassung Von C++ übernommen public protected private Erweiterungen in C# sealed internal protected internal Grundlagen .NET STC 02. – 03. Juni 2004
15
Klassen vs. Strukturen Klasse Struktur Interface Interface Field Field
Warum .NET Sprachfeatures Praxis Zusammenfassung Klasse Struktur Interface Interface Field Field Properties / Indexer Properties / Indexer Methoden Methoden Events / Delegates Subclass Subclass Heap Stack Grundlagen .NET STC 02. – 03. Juni 2004
16
Boxing und Unboxing Werttypen können „boxed“ oder „unboxed“ werden
Warum .NET Sprachfeatures Praxis Zusammenfassung Werttypen können „boxed“ oder „unboxed“ werden Boxing erlaubt Werttypen als Referenzen zu übergeben Basiert auf der Tatsache, dass alles ein Objekt ist boxing double value; //Boxing object BoxedValue = value; //Unboxing value = (double)BoxedValue; Object Value Double Value unboxing Heap Stack Grundlagen .NET STC 02. – 03. Juni 2004
17
Enumerations Benannte Elemente anstatt Nummern Stark typisiert
Warum .NET Sprachfeatures Praxis Zusammenfassung Benannte Elemente anstatt Nummern Stark typisiert Einfacher zu nutzen: „Color.Red“ als „3“ enum Color { White, // 1 Red = 3, Green, // Blue, // Yellow = 5 // auch 5!!! }; Grundlagen .NET STC 02. – 03. Juni 2004
18
Felder Nullbasiert und typegebunden
Warum .NET Sprachfeatures Praxis Zusammenfassung Nullbasiert und typegebunden Deklariert mit Type und Shape, aber ohne Grenze Erzeugung mit „new“ und Grenzen oder Initialisierern int [ ] SingleDim = new int [20]; int [ , ] TwoDim = new [ ] {{1,2,3} {4,5,6}}; int [ ] [ ] Jagged = new int [1] [ ]; Grundlagen .NET STC 02. – 03. Juni 2004
19
Properties Mischung aus Membern (Feldern) und Methoden Nutzen bei
Warum .NET Sprachfeatures Praxis Zusammenfassung Mischung aus Membern (Feldern) und Methoden Nutzen bei „readonly“ / „writeonly“ Feldern Validierungen bei der Zuweisung / Berechnungen Klasse String test private String test; int wrong public property Name get String Name set String Name Grundlagen .NET STC 02. – 03. Juni 2004
20
Properties Klasse String test private String test; int wrong
Warum .NET Sprachfeatures Praxis Zusammenfassung public string name { get { return name; } set { name = value; } } Klasse String test private String test; int wrong public property Name get String Name set String Name Grundlagen .NET STC 02. – 03. Juni 2004
21
Indexer Konsistenter Weg, um Container zu erstellen
Warum .NET Sprachfeatures Praxis Zusammenfassung Konsistenter Weg, um Container zu erstellen Basieren auf der Property Idee Index Qualifizierer können von jedem Typ sein public object this[string index] { get { return Dict.Item(index); } set { Dict.Item(index) = value; } } Grundlagen .NET STC 02. – 03. Juni 2004
22
Fehlerbehandlung Try – Catch – finally Block Try Fehler Kein Fehler
Warum .NET Sprachfeatures Praxis Zusammenfassung Try – Catch – finally Block try { // gefährlicher Code } Catch (e as Fehlerobjekt) // Fehlerbehandlung Finally // Abschlussarbeiten Try Fehler Kein Fehler Catch Fehlerobjekt Fehlerbehandlung Finally Abschlussarbeiten Grundlagen .NET STC 02. – 03. Juni 2004
23
Foreach Schleifen Einfach Iterationsmöglichkeit für Collections
Warum .NET Sprachfeatures Praxis Zusammenfassung Einfach Iterationsmöglichkeit für Collections Einsatz für alle Arrays und sonstige Collections Können in eigenen Collections verwandt werden Point[] Points = GetPoints(); foreach( Point p in Points ) { MyPen.MoveTo(p.x,p.y); } Grundlagen .NET STC 02. – 03. Juni 2004
24
Zusammenfassung Verständnis der Grundkonzepte von .NET
Warum .NET Sprachfeatures Praxis Zusammenfassung Verständnis der Grundkonzepte von .NET Überblick über die Grundlegenden Sprachfeatures von C# Grundkenntnisse der Programmierung mit C# Grundlagen .NET STC 02. – 03. Juni 2004
25
Vielen Dank für die Aufmerksamkeit!
Fragen Vielen Dank für die Aufmerksamkeit! Haben Sie noch Fragen? Grundlagen .NET STC 02. – 03. Juni 2004
26
Wie geht es weiter auf der STC…?
Zeit Track 1 Track 2 15:30 Web Technologies mit ASP.NET Thorsten Planeth Share Point Portal Server Infrastruktur Eric Hellmich 16:00 16:30 17:00 Kaffeepause 17:30 Grundlagen .NET STC 02. – 03. Juni 2004
27
Wie geht es weiter auf der STC…?
Zeit Track 1 Track 2 Workshop 13:30 Grundlagen .NET (100) Hilmar Salomo & Tobias Richling (Andreas Jahrstorfer, Michael Wensauer, Marcel Kulicke) 13:45 14:00 14:15 ADO.NET, SQL Server 2000 & Yukon (200) Dirk Primbs Windows Server 2003 (200) Daniel Wessels 15:30 Grundlagen .NET STC 02. – 03. Juni 2004
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.