High-Level-Vorträge der ADC 2012
Mehr als 30 technologisch tiefgreifende Sessions an zwei Konferenztagen bieten erfahrenen
.NET-Entwicklern/-Architekten ein umfangreiches Konferenzprogramm.
Unser Content Management Team sorgt dabei für ein perfekt abgestimmtes und qualitätsgesichertes Programm anerkannter Technologie-Experten.
Wählen Sie auf der ADC 2011 aus drei parallelen Tracks Ihre Wunschvorträge aus diversen Kategorien aus:
Allgemein
Cloud-Strategie und Zukunft der Cloud
Cloud? Was ist Cloud? Wieso Cloud? Ist die Cloud nur eine Modeerscheinung? Christian Liensberger,
der als Program Manager im Windows Azure-Team in Redmond arbeitet, führt Sie in dieser Session in die
Cloud ein. Er zeigt dabei auf, welche Möglichkeiten die Cloud bietet, wieso die Cloud weit über Hosting
hinausgeht und wie Sie mit der Cloud auch Geld sparen können. Außerdem gibt Christian einen Überblick über
die verschiedenen Komponenten, die das „Cloud-Betriebssystem“ bietet, und wie diese in Ihren Lösungen
eingesetzt werden können.
Sprecher: Christian Liensberger
.NET & Sprachen
Betriebssystem-Internals mit .NET: Konfiguration, Diagnose, Management mit System.Diagnostics und WMI
Viele Anwendungen brauchen Informationen aus dem Betriebssystem oder wollen dort etwas verändern.
Festplattenplatz, Performance Counter, Event Log, Active Directory-Gruppen, vorhandene Hardware u.v.m.
Lassen Sie sich zeigen, was man mit System.Diagnostics und der Windows Management Instrumentation (WMI)
sowie dem Active Directory Service Interface (ADSI) an Internas vom Betriebssystem lesen und verändern kann.
Sprecher: Dr. Holger Schwichtenberg
.NET Deep Dive
Wenn sich das eigene Sprachniveau von C# auf einem Fortgeschrittenen-Level bewegt,
ist dies meist vollkommen ausreichend. Aber hin und wieder braucht man Expertenwissen,
um Aufgaben zu lösen oder Fehler zu beseitigen. In dieser Session tauchen wir in die Tiefen
von C# und der .NET CLR ab. Wie werden Werte und Referenztypen im Speicher behandelt? Wie baut man
ein eigenes LinqtoObjects? Was ist ein Delegate unter der Haube wirklich? Warum treiben captured Variables
Entwickler in den Wahnsinn, wenn sie nicht richtig verstanden werden? Dieses und vieles mehr erfahren Sie
in dieser Session. Tauchen Sie mit mir ab!
Sprecher: David Tielke
Software-Design mit C# 4: Patterns und fortgeschrittene Sprachelemente
In dieser Session wird eine funktionierende, jedoch schlecht entworfene Applikation Schritt für Schritt
refaktoriert, sodass sich im Laufe der Zeit ein erweiterbares und vor allem testbares Software-System ergibt.
Dabei kommen bewährte Design-Patterns ebenso zum Einsatz wie C#-Sprachelemente, darunter Events, Delegates,
Lambda-Ausdrücke, Erweiterungsmethoden und dynamische Klassen. Zur Abrundung wird gezeigt, in welcher Weise die
in .NET inkludierten Frameworks die besprochenen Design-Konzepte nutzen.
Sprecher: Manfred Steyer
Testbare Systeme mit Dependency Injection und Mocking-Frameworks
Unit-Tests sollen sich auf einzelne Komponenten beziehen. Was sich in der Theorie so einfach anhört,
ist es in der Praxis gar nicht. In vielen Systemen beispielsweise muss beim Testen der Geschäftslogiken auch die
Datenzugriffsschicht mitgetestet werden. Dependency Injection unterstützt bei der losen Kopplung von
Systembestandteilen und somit auch bei der Entwicklung testbarer Systeme.
In dieser Session geht Manfred Steyer auf diese Design-Technik ein und zeigt, wie sie sich mit Mocking-Frameworks kombinieren lässt.
Sprecher: Manfred Steyer
Code Contracts oder: Bugs finden, bevor der Kunde es tut
Das Paradigma Design by Contract hat das Ziel, Bugs so früh wie möglich zu erkennen - im Idealfall bereits
im Zuge des Kompilierens. Mit Code Contracts beinhaltet .NET seit Version 4 eine Implementierung dieses Ansatzes.
Diese Session geht auf diese Technologie ein und zeigt anhand eines Beispiels, wie Design by Contract in der
Praxis genutzt werden kann. Zur Abrundung wird Code Contracts auf Praxistauglichkeit untersucht sowie die Stärken
und Schwächen aufgezeigt.
Sprecher: Manfred Steyer
Garbage Collection in .NET 4.0
Mehr als 10 Jahre gibt es die CLR-Gruppe bei Microsoft. Die Mission: „... provide a safe and robust environment that also enabled great productivity
for developers...“. In dieser Session geht es um einen zentralen Bestandteil der CLR, den
„Garbage Collector“. Was passiert im Arbeitsspeicher? Was betrifft mich als Managed Code
Entwickler? Warum ist GC.Collect(); suboptimal? Was hat es mit den Generationen auf sich? Was bringen Finalization und die neuen Features wie
Background Garbage Collection und Concurrent Garbage Collection?
Sprecher: Patric Boscolo
Parallelisierung - Einführung
Warum müssen wir unseren Code heutzutage parallelisieren? Welche Probleme erwarten uns und was müssen wir
beachten? In dieser Session erhalten Sie einen Überblick über aktuelle Parallelisierungstechnologien, mit dem
speziellen Fokus auf das .NET Framework 4. Wir werden uns die "Task Parallel Library" (TPL) anschauen und an Hand
von Beispielen die verschiedenen Parallelisierungswege kennen lernen.
Sprecher: Bernd Marquardt
Parallelisierung - am Beispiel
In dieser Session nehmen wir uns reale Beispielanwendungen vor und parallelisieren den C#-Code mit Hilfe der
"Task Parallel Library" (TPL) aus dem .NET Framework 4. Hierbei handelt es sich um einfache Rechenanwendungen.
Der Aufwand für die Modifizierung des Code und die Performance-Gewinne durch die Parallelausführung werden
ausführlich betrachtet.
Sprecher: Bernd Marquardt
Parallelisierung - im User Interface
Diese Session geht auf die Probleme ein, die bei einer "Entkopplung" der Benutzerschnittstelle auftreten können.
An Hand mehrerer Beispiele wird gezeigt, wie in einer WPF-Anwendung der Code so parallelisiert werden kann, dass
einerseits alle Regeln beachtet werden und andererseits die Anwendung nicht mehr blockiert, wenn langwierige
Berechnungen ausgeführt werden müssen.
Sprecher: Bernd Marquardt
Was ist neu in Visual Studio 2011 und .NET 4.5?
Durchaus Handfestes hat Microsoft auf der BUILD-Konferenz zum Thema nächstes
Visual Studio und .NET 4.5 gezeigt. Da beides vermutlich deutlich vor Windows 8
fertig sein wird, sollten Sie sich das auf keinen Fall entgehen lassen. Auch
dabei sind die Neuerungen in den Sprachen VB und C#.
Sprecher: Holger Schwichtenberg, Bernd Marquardt, Neno Loje
Windows PowerShell für Entwickler
Die PowerShell ist nicht nur für Admins da. Dr. Holger Schwichtenberg zeigt Ihnen, wie Sie die PowerShell
nutzen (z.B. für Deployment) und wie PowerShell als interaktives Frontend für Ihre Geschäftslogik eingesetzt
werden kann.
Sprecher: Dr. Holger Schwichtenberg
Slice me nice – produktiv, schnell, zufrieden
Anforderungen müssen einfach nur weggeschafft werden? Nein. Wenn Sie Anforderungen einfach nur irgendwie
wegschaffen, dann schaffen Sie keine Effizienz. Da hilft auch keine Priorisierung im Backlog. Für maximale
Produktivität und auch für Ihre Zufriedenheit als Entwickler am Ende jedes einzelnen Projekttages ist mehr nötig.
Der Vortrag erklärt, wie Sie mit Grundbegriffen der Theory of Constraints (TOC) sowie mit Softwarearchitektur die
Implementierung „in Fluss bringen“. Bereiten Sie Ihre Entwicklung im Team durch rigoroses Zerschneiden von
Anforderungen in dünne Scheiben so vor, dass Sie Ihr Team optimal nutzen.
Sprecher: Ralf Westphal
Wie verwendet Microsoft eigentlich die Cloud?
In dieser Session sehen Sie wie Microsoft die Cloud nutzt, um skalierbare Lösungen zu entwickeln.
Nach einer kurzen Einführung in den Windows Azure Marketplace (http://datamarket.azure.com),
der zu 100% in der Cloud und für die Cloud entwickelt wurde, geht Christian im Detail auf die
Architektur und Lösungen ein, die das Marketplace-Team anwendet, um die Lösung skalierbar und
erweiterbar zu machen.
Sprecher: Christian Liensberger
Model-View-Viewmodel (MVVM)
Model-View-Viewmodel (MVVM) mit Flow Oriented Design verbinden Die Anwendung des MVVM Patterns ist
im Rahmen von "XAML Anwendungen" (WPF, Silverlight, WP7) nicht mehr wegzudenken. Mit Frameworks
wie dem MVVM Light Toolkit wird die Umsetzung unterstützt. Doch häufig bleibt die Frage offen, was
"hinter" dem Viewmodel passiert: Was versteht man unter dem Model? Wie gestaltet man den
"Rest" der Anwendung? Flow Design kann diese Lücke füllen. Der Vortrag zeigt an einem Beispiel,
wie die Kombination von MVVM und Flow Design zu einer evolvierbaren Anwendungsarchitektur führt.
Sprecher: Stefan Lieser
Cloud-Sync selbsgebaut
Das Thema Cloud Computing drängt sich mehr und mehr in den Vordergrund. Doch viele Entwickler warten ab,
weil ihnen das Risiko einer Ganz-oder-gar-nicht-Lösung zu hoch erscheint. Dennoch ist es wichtig, sich dem
Cloud-Thema anzunähern, um rechtzeitig Erfahrungswissen aufzubauen. Der Vortrag zeigt am Beispiel von
Datensynchronisation, was bei Lösungen, die auf die Cloud setzen, zu berücksichtigen ist. Dabei wird die
Amazon-SimpleDB Datenbank verwendet, um Daten zwischen mehreren Rechnern zu synchronisieren. Die Verwendung
von Cloud-Services wird an einer Beispielanwendung gezeigt. Dabei werden Themen wie Anforderungen an
die Architektur, Testbarkeit, etc. diskutiert.
Sprecher: Stefan Lieser
TFS-Versionsverwaltung für jedermann
Zielgruppe: Entwickler (alle Programmiersprachen)
Der Team Foundation Server
(TFS) beherbergt unter anderem ein modernes und leistungsfähiges
Versionsverwaltungssystem, welches Feature- und Bug-Tracking
integriert und auch für große und verteilte Teams geeignet ist. Auch gerade
deshalb sollte man sich nicht einfach blauäugig darauf stürzen, sondern sich
erst mit den Konzepten auseinandersetzen, da die Unterschiede – gerade auch
zu Visual SourceSafe – enorm sind.
Dieser Vortrag geht im Schnelldurchlauf durch die grundlegenden Konzepte
(Workspaces, Changesets, Locks, Shelves, Policies und Branches) sowie
Eigenarten des TFS und vertieft typische Herausforderungen des Alltags beim
Verwalten mehrerer paralleler Versionen, möglichst konfliktarmen "Mergen",
offline Arbeiten und einigen Neuerungen im kommenden TFS "vNext".
Sprecher: Neno Loje
TFS-Build für jedermann: Continuous Deployment
Zielgruppe: Entwickler, Build Manager, Release Manager
Die Zyklen in der
Softwareentwicklung werden immer kürzer (man denke nur an
Cloud-/ Internetanwendungen). Das oberste Ziel ist, funktionsfähige Software
möglichst häufig in die Hände der Tester bzw. Kunden zu bekommen.
Dieser Vortrag zeigt, wie sich automatische Build-Prozesse mit dem Visual
Studio Team Foundation Server /TFS) 2010 konfigurieren lassen, sodass sie
vor dem Einchecken in die Versionsverwaltung gestartet werden (Gated
Check-In), um die getätigten Codeänderungen zu überprüfen. Durch die
flexible Architektur können beliebige Qualitäts- und Verteilungsschritte in
den Build-Prozess mit eingebunden werden. Weiterhin lässt sich der
Build-Prozess dahingehend erweitern, die Anwendung automatisch in eine
virtualisierte Testumgebung zu verteilen, die dann für automatische, sowie
manuelle Tests eingesetzt werden kann.
Sprecher: Neno Loje
Branching mit Team Foundation Server 2010 Version Control
Branches dienen zur Isolation von Quellcode und ermöglichen parallele
Entwicklung, isolierte Stabilisierung oder die isolierte Wartung von
Releases. Auf diese Weise sind Branches mittlerweile ein Standardkonzept in
den meisten Versions Control Systemen. Die Session fokussiert nicht nur
Grundlagen wie die Erstellung von Branches und den Merge von Code zwischen
Branches, sondern zeigt auch verschiedene Branch-Modelle und diskutiert
diese. Im Fokus stehen folgende Fragen: Wofür brauche ich Branches? Welches
Branch-Modell ist für mich das richtige? Wie geht’s mit Team Foundation
Server 2010? Anschließend wird ein Beispiel zum Codesharing im TFS gezeigt
Sprecher: Christian Binder
Visual Studio 11 Application Lifecycle Management
Diese Session stellet einige Neuerungen der nächsten Visual Studio
Application Lifecycle Management Generation vor. Unter anderem der
PowerPoint StoryBoard Assistant zur einfachen Erstellung von Storyboards.
Die neuen Agile Tools und Dashboards für agil arbeitende Teams. Aber auch
die für Vistual Studio 11 so wichtigen, Developer-zentrischen Funktionalitäten, wie zum
Beispiel Code Clone Detection, verbessertes Unit Testing, Code Review
Support oder den neuen Team Navigator, der die eigenen Aufgaben in den Fokus
rückt und einfaches Wechseln zwischen diesen erlaubt, inklusive aller
Codeänderungen und Fenster in Visual Studio. Abschließend werfen wir noch
einen Blick auf den TFS in the Cloud, oder anders: in 30 Sekunden zum eigenen
Team-Projekt ganz ohne TFS-Installation.
Sprecher: Christian Binder, Neno Loje
Backend
Windows Server: Rest in Peace
Sie fragen sich, was an Cloud Computing so revolutionär sein soll? Besuchen Sie Rainer Stropek in
dieser Session und sehen Sie, warum Windows Azure so grundlegend anders ist als alles,
was wir bisher von Rechenzentren gekannt haben. Netzwerk, Server, Load Balancer, Fabric, CDN - was ist dran an
dem "Betriebssystem für die Cloud"?
Sprecher: Rainer Stropek
Azure, wie Sie es noch nie gesehen haben
Eine Webseite ohne Web-Rolle?! SQL in Azure ohne SQL Azure?! IIS in einer Worker-Rolle?!
Zusätzlich installierte Services ohne VM-Rolle?! Windows Azure ist eine wesentlich flexiblere Plattform, als
es auf den ersten Blick erscheinen mag. In dieser Session stellt Rainer Stropek Tipps und Tricks rund um Azure vor,
die über übliche Hello-World-Szenarien hinausgehen.
Sprecher: Rainer Stropek
WCF-Internals: Leistungsoptimierung
Windows Communication Foundation ist die .NET-Kommunikationsplattform, die sich seit Jahren in .NET-Anwendungen
am Markt sicher etabliert hat. Heute ist kaum eine Anwendung ohne einen zumindest geringen Einsatz von WCF denkbar.
Darüber hinaus bestimmt diese Technologie direkt die Architektur verteilter Anwendungen. Sie ist einfach und
schnell einsetzbar und ermöglicht die Verbindungen zwischen unterschiedlichsten Anwendungen und Plattformen.
Leider ist WCF hinter den Kulissen sehr komplex und unentdeckt. In dieser Session erfahren Sie durch viele
Demos zahlreiche versteckte Details, die Ihnen helfen können, WCF besser zu verstehen und die Performance zu
optimieren.
Sprecher: Damir Dobric
Wie funktioniert Windows Azure AppFabric und wann sollte es eingesetzt werden - Deep Dive
Es ist schon ein Jahr vergangen, seitdem Windows Server AppFabric als die Hosting-Plattform für
Geschäftsprozesse auf Windows-Plattform veröffentlicht wurde. In dieser Session lernen Sie durch viele
Demos die zahlreichen Features wie Caching, Monitoring und Hosting kennen, die den ultimativen Meilenstein
von Microsofts neuer Middle-Ware-Strategie darstellen. Weiterhin erfahren Sie, wie die neuesten Features von
WCF und WF im Zusammenspiel mit AppFabric die Entwicklung von modernen Enterprise-Applikationen,
Workflow-Services und lang laufenden Applikationen sehr vereinfachen. In dieser Session wird darüber hinaus
ein Überblick über Windows Azure AppFabric, Composite Applikation und die neue Strategie von BizTalk Server
gegeben.
Sprecher: Damir Dobric
Entity Framework Internals: Leistungsoptimierung
Es gibt das Gerücht, dass das ADO.NET Entity Framework langsam sei. Wie so oft im Entwicklerleben hängt
dies davon ab, wie gut (oder eben schlecht) Sie es verwenden. Wie lange dauert es wohl, rund 300.000 Datensätze
aus einer Tabelle mit 500 Millionen Einträgen zu lesen? Lassen Sie sich vom Entity Framework-Experten Dr. Holger
Schwichtenberg überraschen!
Sprecher: Dr. Holger Schwichtenberg
Performance-Optimierung auf der Leitung
Vermeintliche Flaterates verleiten zu nachlässiger Entwicklung des
Network Stacks mit WCF, REST oder RIA Services. Fakt ist aber, dass
Internet nicht immer und überall und oft auch nur mit sehr limitierter
Bandbreite zur Verfügung steht. Dabei stecken in den Protokollen vom
Layer 1 bis 7 sehr viele Optimierungsmöglichkeiten. Diese Session steigt
tief in die Protokolle ein und zeigt, wie man dies im heutigen Code
sinnvoll nutzen kann.
Sprecher: Hannes Preishuber
User Interface
Expression Blend für Entwickler
Für das „Fine-Tuning“ von Benutzeroberflächen wird im WPF- und Silverlight-Umfeld das Werkzeug Expression
Blend eingesetzt. Das Tool wurde für Designer konzipiert, damit diese ohne Know-how von .NET-Code die Oberfläche
erstellen und „designen“ können. In der Praxis hat sich Expression Blend auch für Entwickler im Parallelbetrieb
mit Visual Studio bewährt. Damit auch Du als Entwickler mit Expression Blend effektiv arbeiten kannst, gibt Dir
diese Session den geballten Überblick.
Sprecher: Thomas C. Huber
Control Templates mit WPF - very deep
Bei Silverlight und der WPF wird das Aussehen von Controls mit ControlTemplates beschrieben. In dieser
Session erfährst Du alles über die professionelle Entwicklung von ControlTemplates, um beispielsweise aus
einer gewöhnlichen Progressbar ein Tachometer zu machen. Features wie TemplateBinding, PART-Elemente und
natürlich der Visual State Manager werden gezeigt. Es geht ans Eingemachte, sei dabei!
Sprecher: Thomas C. Huber
WPF-Layout
Bei der Windows Presentation Foundation (WPF) findet zum Anordnen der Elemente ein zweistufiger
Layout-Prozess statt. Um eigene Layout-Panels zu entwickeln oder um komplexe Layouts zu erstellen,
ist es von grosser Bedeutung, den Layout-Prozess und dessen Funktionsweise zu verstehen. Diese "technische"
Session zeigt neben der Funktionsweise des Layout-Prozesses, wie eigene Panels entwickelt werden,
wie Elemente rotiert und skaliert werden und wie die Panels bei der WPF funktionieren.
Sprecher: Thomas C. Huber
First Look Metro APP
Ein neues Framework (WinRT), eine neue Shell für UI Entwicklung (METRO), wird das die Welt verändern.
Diese Session zeigt die Programmierkonzepte von Metro Styled APPs auf Windows 8 anhand echter Code Beispiele.
Etwas was Sie vermutlich nicht morgen tun werden, was aber Ihre Design Entscheidungen für die Zukunft durchaus
schon heute beeinflussen wird.
Sprecher:Hannes Preishuber
WPF Data Templates
Mit Data Templates lässt sich in der WPF und in Silverlight ein Aussehen für ein Datenobjekt,
beispielsweise eine Person-Klasse, definieren. Damit lassen sich Datenobjekte in Listen auf jede
beliebige Art und Weise darstellen. Wie DataTemplates funktionieren, wie Du mit DataTriggern für
Conditional Formatting arbeitest und wie Du implizite DataTemplates erstellst, all das erfährst Du
in dieser Session.
Sprecher: Thomas C. Huber
Zukunft
Windows Server AppFabric: die neue Middle-Ware für verteilte Systeme in der Cloud und On-Premise
Es ist schon ein Jahr vergangen, seitdem Windows Server AppFabric als die Hosting-Plattform für Geschäftsprozesse auf Windows-Plattform veröffentlicht wurde. Nach diesem bisher einzigen Release definierte Microsoft eine neue Middle-Ware-Strategie, die zurzeit die Entwicklung fast nur noch in Richtung Windows Azure AppFabric treibt. In dieser Demo-Powerded-Session lernen Sie den neusten Innovationen kennen, die das Thema AppFabric und begleitende Technologien wie WCF, WF, Comosite Applications, Cache, Access Control Service und Integration Services definieren.
Sprecher: Damir Dobric
nach oben
Diese Liste kann noch ergänzt bzw. verändert werden.
Bei Fragen zur Konferenz oder zu den Sessions hilft Ihnen Domenica Rothenaicher gerne telefonisch unter +49-8677-988 961 oder per
E-Mail weiter.