+ All Categories
Home > Documents > Quo Vadis Microsoft - PIXEL GROUP · 2019-05-22 · ASP.NET IMVC, WebForms, WebAPI, SignalR...

Quo Vadis Microsoft - PIXEL GROUP · 2019-05-22 · ASP.NET IMVC, WebForms, WebAPI, SignalR...

Date post: 18-Mar-2020
Category:
Upload: others
View: 16 times
Download: 0 times
Share this document with a friend
23
IT-Development & Consulting it-people it-solutions Axel Eckenberger, 09.03.2017 Quo Vadis Microsoft? Multiplattform-Entwicklung mit .NET
Transcript

IT-Development & Consulting

it-people ���� it-solutions

Axel Eckenberger, 09.03.2017

Quo Vadis Microsoft?Multiplattform-Entwicklung mit .NET

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 2

Agenda

Was bedeutet „Multiplattform“ Entwicklung?

Welche Konsequenzen ergeben sich für die Entwicklung mit .NET?

Wohin wird die Reise gehen?

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 3

Multiplattform

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 4

Multiplatform: Hardware

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 5

Hardware

Systemarchitektur

I x86 – 32/64 Bit

I ARM – 32/64 Bit

Maßgebliche Eigenschaften

I Bildschirmgröße

I Speicher

I Prozessorleistung / Kerne

I Netzwerkverbindung

I Nutzerverhalten und -toleranz

I GUI Abhängigkeit

Geräteklassen

I IoT

I Phone

I Tablet

I PC

I Server

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 6

Multiplatform: Betriebssysteme

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 7

Betriebssysteme

Auf dem Gerät

I Windows – klassische Desktopanwendung / UWP Server, PC, Tablet, Phone, IoT

I OS X Mac

I iOS Tablet, Phone

I Linux Server, PC, IoT

I Android Tablet, Phone

Cloud

I Anbieter die .NET unterstützen

� Azure

� AWS

� Google

� …

I Infrastruktur (IaaS) und Dienste (PaaS)

I Frei kombinierbarer Leistungsumfang

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 8

Multiplatform: Entwicklung

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 9

Frameworks

.NET (Full) Framework

I Großer Funktionsumfang

I Teile windowsspezifisch, z.B.: Grafik, Networking, Web

Mono

I Umfang fast wie .NET Framework

I Windowsspezifische Anteile entfernt für Linux-Kompatibilität

.NET Core

I Neuentwicklung des .NET Frameworks (schrittweise)

I Aufteilung in separate Bibliotheken

+ Kleinere Bausteine

+ Modularere Systeme

- Höhere Komplexität

- Tooling

I Ein Großteil der Bibliotheken ist plattformunabhängig und kann auf Windows, Linux,

OS X oder mit Xamarin verwendet werden

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 10

Multi-Framework-DLLs

Problem: Wiederverwendung von DLLs in mehreren Frameworks

Shared Code

I Code wird in die Ziel-DLL wird in das Zielprojekt integriert

I Framework-spezifischer Code muss über Präprozessordirektiven abgegrenzt werden

Portable Library

I Verschiedene Profile bilden den kleinsten gemeinsamen Nenner ab

I Profil wird in eine eigene DLL zusammengefasst, welche verlinkt werden muss

.NET Standard

I Standard legt Funktionsumfang fest

I Frameworks unterstützen verschiedene Versionen des Standards

� Derzeit Version 1.x

� Version 2.0 Q3/2017

I Keine eigene DLL notwendig, da Funktionen im jeweiligen Framework enthalten sind

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 11

Desktopanwendungen

XAML (WPF/UWP)

I Trennung von UI-Design und UI-Funktionalität

I Viele Möglichkeiten zur UI-Gestaltung

I Windows und UWP

Windows Forms

I UI Darstellung klassisch

I Probleme bei Geräten mit höherer Auflösung

I Windows

GTK

I Setzt Mono voraus

I Windows, Linux und Mac

Xamarin.Forms

I UI Darstellung analog zu WPF

I UWP und Mac

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 12

Mobile Anwendungen

UWP – Universal Windows Platform

I Windows 10

I Plattformen: Server, PC, Tablet, Phone (?)

I Vertrieb über Microsoft-Store, Custom-Store oder per „side loading“

Xamarin („nativ“)

I iOS, Android, UWP

I Wrapper um native APIs

I Erlaubt die Wiederverwendung von DLLs

I Vertrieb über die Stores der Plattformen oder „side loading“

Xamarin.Forms

I iOS, Android, UWP

I Erlaubt die Wiederverwendung von DLLs und UI-Anteilen

I Immer die Möglichkeit plattformspezifisch (Xamarin „nativ“) zu entwickeln

I Höhere Abstraktion der nativen APIs

I Vertrieb über die Stores der Plattformen oder „side loading“

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 13

Webentwicklung

ASP.NET

I MVC, WebForms, WebAPI, SignalR

I Abhängig von Windows-Betriebssystem

I IIS oder IIS-Express

ASP.NET Core

I Im Rahmen von .NET Core komplett neu geschrieben

I Unabhängig vom Windows-Betriebssystem � Hosting auf Linux oder OS X möglich

I Performanceverbesserungen gegenüber klassischem ASP.NET

I MVC, WebAPI

I IIS, IIS-Express, Kestrel, …

Single Page Applications

I Frontend mit JavaScript

I Datenbindung und Content-Erzeugung auf dem Client

I Frameworks: AngularJS, Angular 2, React.js, Vue.js, Ember.js, …

I Backend-API i.d.R. REST (WebAPI, WCF REST, WCF DataService + Odata)

I Kommunikation mit Backend-API über Ajax

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 14

Entwicklung von Dienstanwendungen

WCF (klassisch)

I RPC

I SOAP

WCF REST-ful

I REST

I RPC oder datenorientiert

WCF Data Services

I REST

I Datenorientiert

I Abfragen über OData modifizierbar (Shaping, Filtering, Ordering, …)

WEB API

I REST

I Teil von ASP.NET und ASP.NET Core

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 15

Multiplatform: Entwicklungsumgebungen

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 16

Entwickungsumgebungen

Visual Studio

I Windows und Mac

I Umfangreiche IDE mit großem Funktionsumfang

I Projekttemplates von Plattform abhängig

I Primär .NET Sprachen jedoch auch andere Sprachen (z.B. Python)

I Erweiterung über Extensions möglich

Visual Studio Code

I Windows, Mac und Linux

I Texteditor / leichtgewichtige IDE

I Großer Umfang an unterstützten Sprachen

I Open Source

I Fokus auf Erweiterbarkeit durch Extensions

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 17

Konsequenzen für die Entwicklung

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 18

Architektur / Deployment

I Mehr cloudbasierte Systeme

� Platform as a Service (PaaS)

� Software as a Service (SaaS)

� Container

I Heterogenität der Systeme steigt

� Einbindung von Legacy-Systemen

� Micro-Services

� Container-Orchestrierung

I Nebenläufigkeit und nachrichtenbasierte Systeme als Standard

� Mehrkern-Prozessorarchitekturen

� Micro-Services

I Serverkomponenten auf Linux

� Verfügbarkeit und Kosten

� Container

I Komponentenorientierung

� Verpacken von Bibliotheken in NuGet-Pakete

� Firmenweite und projektspezifische NuGet-Streams

� Verwendung von .NET Standard für NuGet-Projekte und „shared Libraries“

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 19

Anwendungsentwicklung

I Web-Systeme

� Stärkere API-orientierung der Serverseite (OData, Json, REST)

� Wiederverwendung der Web-APIs in mehreren Frontends (z.B. Web, Desktop, Mobil)

� Web-Frontend

� „Single Page Applications“ (z.B. mit Angular JS, Angular 2, RactJS)

� Responsive Design (Bootstrap)

I Multi-Plattform Mobilsysteme

� Kostenfaktor

� Gemeinsame Grundfunktionalität

� Natives „Look and Feel“

I Desktop

� Oberfläche mit WPF oder UWP

� Backend durch Web-API oder Cloud bereitgestellt

� U.u. Verwendung der Designsprache des Modern UI in WPF-Anwendungen

� Responsive Design

I Datenbank

� SQL Server auf Linux

� JSON/XML in SQL Server

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 20

Ausblick

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 21

Wohin geht die Reise

Microsoft Ziele

I Mit MS-Technologie entwickelte Anwendungen auf allen Geräten und

Betriebssystemen

I Verlagerung des Backend von lokalen Servern in die Cloud

I Ablösung von Oracle als Standard-DB-System bei Neuprojekten

I Multiplattform-Entwicklung mit einer Codebasis

� Server (Windows, Linux und eingeschränkt OS X)

� Apps (iOs, Android, UWP für Desktop)

Client

I Mehr Web-Anwendungen

I Thin-Client-Lösungen wenn Web-Anwendungen nicht ausreichen

I Backend auf dem Server oder in der Cloud

I Im Einzelfall Berechnungen auf dem Client (Rechenleistung)

2017 PIXEL GmbH - Ein Unternehmen der PIXEL Group - www.pixel.de Folie 22

Vielen Dank für die Aufmerksamkeit

I Email

[email protected]

I Twitter

@Obalix

I Web

http://www.pixel.de

Zentrale

PIXEL GmbHLochhamer Schlag 17D-82166 Gräfelfing

Tel.: +49/89/8 98 68-100Fax: +49/89/8 98 68-111

[email protected]

Niederlassung

PIXEL GmbHIm Gewerbepark C15D-93059 Regensburg

© 2017 PIXEL GmbHEin Unternehmen der PIXEL Group


Recommended