TechDays 2016 in Baden – Teil 2

TechDays 2016 in Baden - Teil 2

Creating real Internet of Things solutions today using Microsoft Technology

Als Beispiel für eine Internet of Things (IoT) use case wird der Campus von Microsoft genannt. Hier werden sämtliche technische Daten wie Stromverbrauch, Liftsteuerungen, Licht, etc. in die Cloud übermittelt. Durch verschiedene Auswertungen (Azure Analytics-Service) können zusätzliche Auswertungen getätigt werden. So lassen sich mit Daten von Aussentemperatur, Stromverbrauch der Klimaanlage und Temperatur im Raum, Störungen oder Abweichungen an der Klimaanlage früh erkennen und mögliche Ursachen beheben. IoT eignet sich hervorragend, um verschiedene Daten zu kanalisieren und diese zu einem späteren Zeitpunkt oder in Echtzeit auszuwerten. Das Betriebssystem Windows 10 IoT Core hat minimale Anforderungen an die Hardware, somit läuft es problemlos auf dem Raspberry Pie 2, Raspberry Pie 3 (comming soon), Minnow Board Max oder Dragon Board 410c.

Introducing .NET Core: Building cross-platform and native executables in .NET

Auf einem Mac Book wird gezeigt, wie eine einfache „Hello World“ C# Anwendung in Sekunden geschrieben werden kann. Dazu benötigt wird nur Visual Studio Code.

Die Vorteile von .Net Code sind neben Cross-Plattform (Windows, Mac, Linux) Kompatibilität, auch die Unabhängigkeit von Laufzeit-Umgebungen (z.B. .Net). So werden zu sämtliche Laufzeit-Komponenten in das Programm eingebettet. Dadurch wird zwar das Programm etwas grösser, ist aber Unabhängiger und um einiges schneller. Zum Kompilieren wird der .Net Compiler Plattform, auch unter dem Namen Roslyn bekannt, verwendet.

Ein weiterer Vorteil von .Net Core ist das der Compiler Open Source und auf GitHub verfügbar ist.

Christoph Möhring an einer Keynote Session

What’s new with ASP.NET 5

ASP.NET Core verfolgt ebenfalls den Cross-Plattform Gedanken, ist modular und leichtgewichtig. Somit werden nur Komponenten in den Webserver (Kestrel) eingebunden, welche wirklich verwendet werden. Demzufolge kann zum Beispiel die Möglichkeit zum Aufrufen von statischen HTML Seiten (z.B. /test.html) per Laden eines Modules hinzugefügt werden. Auch wird in ASP.NET Core MVC, WebAPI, WebPages unter dem Begriff ASP.NET Core MVC vereint. Verschiedene Basisklassen sind neu Geschichte. Wann der RC2 und die 1.0.0 Version erscheint ist noch offen. Angestrebt wird jedoch ein Release in diesem Jahr (2016).

Webentwicklung mit AngularJS 2.0, SignalR und ASP.NET 5

Die Unterschiede zwischen Angular 1.1 und 2.0, welches zwar noch nicht final verfügbar ist, jedoch bereits in der Beta Version einen guten Eindruck macht, werden gezeigt. Vor allem die Performance und das Rendering/Binding versprechen grosse Fortschritte. So soll die Darstellung einer Liste mit 50’000 Items nur noch 0.8 Sekunden benötigen. Mit AngularJS 1.1 waren es noch deren 11 Sekunden. Eine weitere grundlegende Neuerung ist die verbesserte Asynchronität beim Laden von Daten und Modulen, One-Way Binding (DOM -> Contoller, Controller -> DOM), hierarchische Dependency-Injection sowie die Möglichkeit noch modularer zu entwickeln. Ebenfalls neu ist die Unterstützung von TypeScript Dateien, ohne diese vorher in JavaScript zu kompilieren. Dies sollte jedoch nur zur Entwicklung verwendet werden, da die Performance durch die Echtzeitkompilierung schlechter ist. AngularJS kommt aufgeräumter daher und verfolgt eine Minimal-Loading Strategie, wobei nur Module geladen werden, welche auch verwendet werden.
;