Microsoft Student Partner

Slides:



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

Einführung in Microsoft .NET 2.0
Microsoft Academic Program C# 2.0 Was gibts da Neues? Student Technology Conference 2005.
Progwerkstatt JAVA Klasse, Objekte, Konstruktoren, Methoden
FH-Hof Einbindung von JavaScript Anweisungen
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Programmieren mit JAVA
Programmieren mit JAVA
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.
Zusammenfassung Vorwoche
PKJ 2005/1 Stefan Dissmann Klassenhierarchie Person Kunde Goldkunde Lieferant Object.
Die Skriptsprache Perl (8) Wolfgang Friebel DESY Zeuthen.
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
C++ Vererbung und Polymorphie
DVG Einführung in Java1 Einführung in JAVA.
DVG Klassen und Objekte
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Einführung in die Programmierung Datensammlung
Klassen und Schnittstellen Klasse: Definiert Zustandsraum ihrer Instanzen vollständig (Implementierung der Struktur, soweit Voraussetzung für die Methoden-
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 5 Noch mehr Klassen und Strukturen (Level 100) Presenter: Daniel Walzenbach Technologieberater.
Presenter: Daniel Walzenbach Technologieberater
MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 9 Zeichenketten, Delegates und Events (Level 100) Presenter: Daniel Walzenbach Technologieberater.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Informatik 1 Übung 8. NACHBESPRECHUNG Übung 8 Rekursion Existiert Weg von A nach B?
C# Einheitliches Typsystem
Objektorientiertes Programmieren
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
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 I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 5 Folie 2 ADO.NET s.a:
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ADO.NET (1) Klassen für Zugriffe.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Tutorium PG Verbesserung Blatt 5 Beim instanziieren eines Fahrrades muss es möglich sein, alle benötigten Attribute dem Konstruktor zu übergeben.
Vortrag: Visual Basic Neuerungen Autor : Dennis Hoyer
Objectives Verstehen was unterDelegate verstanden wird
PL/SQL - Kurze Einführung April 2003Übung Data Warehousing: PL/SQL 2 PL/SQL.. ist eine Oracle-eigene, prozedurale Programmiersprache Sämtliche.
EPROG Tutorium #4 Philipp Effenberger
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
Parallele Programmierung im.NET Framework Darmstadt, Präsentation am Beispiel von C-Sharp (C#)  Wichtige Grundlagen  Generika, Delegate, Lambda,
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Java-Kurs - 3. Übung Hausaufgabe Arrays For-Schleifen.
Java-Kurs Übung Besprechung der Hausaufgabe
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Gerhard Gröger Einführung in die Programmierung mit Java 5. Vorlesung WS 2002/2003.
Einführung in die Programmierung mit Java 5. Vorlesung WS 2002/2003 Institut für Kartographie und Geoinformation Prof.-Dr. Lutz Plümer, Dr. Gerhard Gröger,
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Thomas H. Kolbe Einführung in die Programmierung mit Java 9. Vorlesung WS 2001/2002.
Abstrakte Klassen und das Interface-Konzept
Cloud Entwicklung: Web Services
Objektorientierte (OO) Programmierung
Vererbung. Klassen - Vererbung  Eine Klasse kann von einer Basisklasse abgeleitet werden  Die abgeleitete Klasse erbt die Eigenschaften und Methoden.
Variablen und Operatoren. C++ Teil 2: Grundstrukturen Variablen Operatoren Kontrollstrukturen Funktionen Header-Dateien Pointer und Referenzen.
Tutorium Software-Engineering SS14 Florian Manghofer.
Operator Overloading, Mehrfachvererbung, Safe Pointer, Observer.
C# LINQ Funktionen höherer Ordnung. Allgemein ● Language Integrated Query ● Verfahren von Microsoft zum Zugriff auf Daten ● Hauptentwickler Erik Meijer.
„Was du ererbt von Deinen Vätern hast, erwirb es, um es zu besitzen.“
OOP II.
 Präsentation transkript:

Microsoft Student Partner HERZLICH WILLKOMMEN C# Einführung Dennis Adrians Microsoft Student Partner

AGENDA Vorbereitung Grundlegendes C#/.NET Architektur Visual Studio Common Type System var & foreach Vererbung Generics

AGENDA Fortgeschrittenes LINQ & Lambda-Ausdrücke Delegates & Events Asynchrone Programmierung

Vorbereitung

C#/.NET Architektur C#/.NET Java CPU (x86, x64, ARM, …) kompilieren Quellcode (*.cs) .NET-Klassenbibliothek Quellcode (*.java) Java-Klassenbibliothek kompilieren kompilieren Intermediate Language (*.exe/.dll) Bytecode (*.class) Common Language Runtime Java Virtual Machine ausführen ausführen CPU (x86, x64, ARM, …)

C#/.NET Architektur C#/.NET C++ CPU (x86, x64, ARM, …) kompilieren Quellcode (*.cs) .NET-Klassenbibliothek Quellcode (*.cpp) Bibliotheken kompilieren kompilieren Intermediate Language (*.exe/.dll) Maschinencode (*.lib/.dll/.exe) Common Language Runtime ausführen ausführen CPU (x86, x64, ARM, …)

C#/.NET Framework .NET-Klassenbibliothek C#/VB/F#/C++ Intermediate Language (*.exe/.dll) Common Language Runtime

Visual Studio … eine mächtige IDE für die .NET-Entwicklung. Viele Versionen möglich. Download: https://www.visualstudio.com/de-de/ downloads/download-visual-studio-vs.aspx

Grundlegendes

Common Type System Groß-/Kleinschreibung Referenztypen Werttypen object class Referenztypen ValueType struct enum Werttypen bool int float … Groß-/Kleinschreibung Bsp.: Double & double sind in C# äquivalent

var & foreach Implizite Typsierung von Variablen mit dem var-Schlüsselwort foreach-Schleife über eine Objektauflistung, die IEnumerable implementiert Angabe der Auflistung mit in-Schlüsselwort

Vererbung Klassen können von genau einer Basisklasse erben und beliebig viele Interfaces implementieren Klassen erben von anderen oder implementieren andere Klassen mit dem :-Operator (Auto-) Properties und Methoden können unterschiedliche Zugriffsmodifizierer haben

Vererbung Mit dem virtual-Schlüsselwort markierte Methoden können überschrieben werden Methoden, die andere überschreiben müssen mit dem override-Schlüsselwort markiert werden Mit dem base-Schlüsselwort bekommt man Zugriff zur Funktionalität der Basisklasse

Generics Generische Methoden und Klassen durch Angabe von Typparametern in <T> Ermöglicht verzögerte Angabe von Typen bis zur Instanziierung oder Deklaration Es gibt unterschiedliche Generic Collections, alle implementieren IEnumerable<T>

Fortgeschrittenes

LINQ Die Language Integrated Query Features ermöglichen einfache und effiziente Abfragefunktionen auf unterschiedlichste Datenstrukturen (Arrays, Collections, SQL, ADO.NET, XML, …) Auswahl der Elemente und Struktur mit from und in Viele Standard-Funktionen werden mitgeliefert: select, where, orderby, select, …

Lambda-Ausdrücke … sind anonyme Funktionen, also lokal definierte Funktionen ohne Deklaration Verwendung: (params) => { statements; } Besonders nützlich für LINQ-Abfragen und Zuweisung an Delegates

Delegates Typ mit einer Referenz auf eine Funktion einer bestimmten Signatur Kann wie eine “Variable” verwendet werden Deklaration mit dem delegate-Schlüsselwort und der passenden Funktionssignatur

Delegates Vorhandene generische Delegates: Action und Func Action<T1, …, Tn>(T1 arg1, …, Tn argn) Func<T1, …, Tn, TResult>(T1 arg1, …, Tn argn)

Events Ereignisbasierte Programmierung ist eines der wichtigsten Konzepte der .NET-Entwicklung Erzeugung mit dem event-Schlüsselwort

Events Mit dem +=-Operator können Ereignisse von Handlern abonniert werden Handler sind Delegates! Zur Behandlung werden EventArgs übergeben

Asynchrone Programmierung Asynchrone Methoden müssen mit dem async-Schlüsselwort markiert werden Mögliche Rückgabetypen sind void, Task und Task<TResult> Mit dem await-Schlüsselwort kann auf das Resultat einer Aufgabe gewartet und entgegengenommen werden

Nützliche Links MVA: http://www.microsoftvirtualacademy.com/ Live- & Online-Schulungen MSDN: https://msdn.microsoft.com/de-de Community, Dokumentation C#: https://msdn.microsoft.com/de-de/library/618ayhy6.aspx C#-Referenz

Fragen ?