Grundlagen .NET Hilmar Salomo Tobias Richling

Slides:



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

der Universität Oldenburg
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
SQL Server 2005.NET Integration Sebastian Weber Developer Evangelist Microsoft Deutschland GmbH.
Visual FoxPro 7.0: mehr als 'nur' .NET!
Neue Mobilität Frank Prengel Developer Evangelist Developer Platform & Strategy Group Microsoft Deutschland GmbH
Was ist neu in VS 2003 ? Ein Überblick. Bernd Marquardt Software & Consulting
Einführung .NET Tobias Richling Neno Loje Microsoft Student Partner
1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH.
Microsoft Academic Program C# 2.0 Was gibts da Neues? Student Technology Conference 2005.
Kapselung , toString , equals , Java API
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
Spec# Proseminar Assertions im SS 2007 Uni Paderborn Andreas Martens Betreuer: Dipl. Inform. Björn Metzler.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Listen Richard Göbel.
Indirekte Adressierung
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
Seminar Sommersemester 2002 ASP.NET Andre Margousian.
.NET Nico Orschel Microsoft Student Partner, TU-Ilmenau
Vererbung Spezialisierung von Klassen in JAVA möglich durch
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
PKJ 2005/1 Stefan Dissmann Zusammenfassung der Vorwoche Variable stehen für (einen) Wert, der sich im Programmablauf ändern kann. Variablen besitzen einen.
Zusammenfassung Vorwoche
Introducing the .NET Framework
Mono und andere freie.NET Implementierungen. Implementierungen Microsoft.NET Framework Win32, Win64? Microsoft.NET Compact Framework WinCE (Mobile, Phone)
05 - Reflection Das Reflection API Reflection2 Ziel Es kommt vor, dass eine Methode ein Objekt als Parameter übergeben bekommt, ohne dass bekannt.
Programmierung mit dem .NET Framework
Visual FoxPro 8.0 NameTitelUnternehmen. Agenda Jahre Visual FoxPro 10 Jahre Visual FoxPro Der Weg zu VFP 8.0 Der Weg zu VFP 8.0 Ziele von und Überblick.
Uwe Habermann Venelina Jordanova VFP Code in Silverlight Anwendungen ausführen.
Presenter: Daniel Walzenbach Technologieberater
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.
Presenter: Daniel Walzenbach Technologieberater
Björn Schmidt, Hoang Truong Nguyen
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Objektorientierte Modellierung
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Die .NET Common Language Runtime
Die .NET Common Language Runtime
Kollektionen in Java Aufzählungstypen, Generische Typen
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
C# Einheitliches Typsystem
Die .NET Common Language Runtime
SQL Server 2005 CLR-Integration
1 Softwareentwicklung mit.NET Teil 1 Was ist.NET? Die.NET Common Language Runtime Dr. Ralph Zeller DI. Wolfgang Beer Michael Willers.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
CuP - Java Elfte Vorlesung Montag, 11. November 2002.
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 2 Folie 2 XAML (1) s.a.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Projekt Pokémon (CSL) Evaluation Technologien / Entwicklungsumgebungen Schlusspräsentation, Philip Iezzi, BDLI 2.
Die AppDomain Das unbekannte Wesen?
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Programmierpraktikum Java SS 2005 Mag.Thomas Hilpold.
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
1 Softwareentwicklung mit.NET Teil 1 Was ist.NET? Die.NET Common Language Runtime Dr. Ralph Zeller.
Microsoft.NET - Plattform Kurzer Überblick Vergleich mit Java Von Thomas Zahn Januar 2001.
Microsoft Student Partner
Microsoft Silverlight Autor: Christian Pirker. Inhalt Einführung Silverlight Einführung XAML Silverlight 1.0 und 1.1 Silverlight 2.0 Silverlight 3.0 Ausblick.
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
 Präsentation transkript:

Grundlagen .NET Hilmar Salomo Tobias Richling Microsoft Student Consultant Student der Informatik FH Augsburg i-hilsal@microsoft.com Tobias Richling Microsoft Student Partner Student der Wirtschaftsinformatik Universität Münster tobias.richling@studentprogram.de Grundlagen .NET STC 02. – 03. Juni 2004

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

Gliederung Warum .NET? Relevante Sprachfeatures von C# Praxis Zusammenfassung Grundlagen .NET STC 02. – 03. Juni 2004

Warum .NET: Softwareinseln Sprachfeatures Beispiel Zusammenfassung ? ? ? ? Grundlagen .NET STC 02. – 03. Juni 2004

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

Warum .NET: Vision Warum .NET Sprachfeatures Beispiel Zusammenfassung Grundlagen .NET STC 02. – 03. Juni 2004

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

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

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

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

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

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

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

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

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

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

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, // 4 Blue, // 5 Yellow = 5 // auch 5!!! }; Grundlagen .NET STC 02. – 03. Juni 2004

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

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

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

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

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

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

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

Vielen Dank für die Aufmerksamkeit! Fragen Vielen Dank für die Aufmerksamkeit! Haben Sie noch Fragen? Grundlagen .NET STC 02. – 03. Juni 2004

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

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