In diesem Workshop erfahren Sie von Manfred Steyer, Google Developer Expert und Microsoft MVP, alles, was Sie für den erfolgreichen Projektstart mit dem populären und weit verbreiteten Webframework Angular benötigen. Sie erfahren, auf welche Weise aus .NET bekannte Konzepte wie Komponenten oder Dependency Injection mit Angular umgesetzt werden und wie Sie dank TypeScript Klassen sowie eine statische Typisierung nutzen können. Zum Einstieg generiert Manfred mit der Angular CLI eine bewährte Projektstruktur und entwickelt eine Komponente für einen ersten Anwendungsfall. Dabei zeigt er, wie Sie Web-APIs einbinden und was die Reactive Extensions for JavaScript (RxJS) damit zu tun haben. Anschließend geht er auf die verschiedenen Arten der Datenbindung ein und zeigt „on the fly“ die Möglichkeiten von TypeScript auf. Danach erfahren Sie, wie man allgemeine Routen in Services auslagert und mit Dependency Injection die Flexibilität einer Anwendung steigert. Im Laufe der Zeit wird die Anwendung um zusätzliche Komponenten erweitert, anhand derer Manfred weitere Konzepte von Angular erklärt. Navigationsstrukturen werden mit dem Angular Router geschaffen, und zur Testautomatisierung kommt das Framework Jasmine zum Einsatz. Am Ende des Workshops liegt eine Angular-Anwendung vor, die alle wichtigen Konzepte enthält.
Microservices gehören im IT-Buzzword-Bingo zu den Neuzugängen der letzten Jahre, und sie beweisen dabei eine ihrer Qualitäten: sie stehen nicht für eins, sondern vieles, manchmal schon fast für alles. Microservices sind ein fundamentaler Wandel. Sie haben eine strategische Komponente, die auf die Architektur, den Programmierstil, die Arbeitskultur, das Geschäftsmodell und die Technologie Auswirkungen hat.
Microservices sind ein Buzzword Buzzword, denn DevOps, Container, Cloud, Plattform- und Sprachunabhängigkeit, Resilienz, Austauschbarkeit, Agilität, Serverless, bimodale IT, Continuous Delivery, APIs fallen gleich mit aus der Bingotrommel. Die Keynote räumt mit den üblichen Missverständnissen rund um Microservices auf, skizziert typische Architekturpatterns, Technologieoptionen und den Businessbezug.
Microservices treiben den Trend zur Modularisierung auf die Spitze, aber treiben sie auch die Polarisierung auf die Spitze?
Auch mit der einen oder anderen guten Bibliothek benötigt die Entwicklung von Datenbankanwendungen so einiges an Zeit. Mit neuen ausgezeichneten Ansätzen und mächtigen Features gehört das der Vergangenheit an. In unserem 60-minütigen Vortrag zeigen wir, wie dank neuer Konzepte und Hintergründe innovative Vorgehen zur Erstellung von Businessanwendungen geschaffen werden. In unterhaltsamer und spielerischer Weise wird die neue Art der Programmierung anschaulich erläutert – mit vielen Tipps und Best Practices für Entwickler und Architekten. Ein Muss für alle, die DevExpress nutzen.
Angular ist eine Plattform. Durch die konsequente DOM-Abstraktion im neuen Angular wird es ermöglicht, Angular auch für die Entwicklung von Desktopapplikationen, nativen Mobile-Apps oder sogar für die Programmierung von Microcontrollern zu nutzen. In diesem Vortrag wird von einer in TypeScript entwickelten Angular-Webanwendung eine native Mobile-App und eine Internet-of-Things-Applikation abgeleitet, die ebenfalls in TypeScript und Angular implementiert sind. Es wird ferner gezeigt, wie man Code zwischen diesen Implementierungen teilen kann und wie man seine Architektur gestalten sollte, damit ein solches Code-Sharing möglich ist. Durch die Vielzahl an Technologien wird es eine unterhaltsame und eher "geekige" Session. Der spielerische Charakter der Session eignet sich aber hervorragend, um die Philosophie hinter Angular in der Tiefe zu verstehen und Best Practices für die Architektur von Angular-Anwendungen kennenzulernen.
Do you want professional user interfaces, fast and secure three-tier architecture, built-in business modules for mail, document management and calendar integration, but lack the time or experience to build it all on your own? How about a standard solution that delivers many useful tools and components, and which you don’t need to program from scratch?
TimeLine Developer is 100 per cent compatible with MS Visual Studio. It helps you generate typical business components, from WPF and HTML5-based user interfaces to data-driven controls for sophisticated business apps. TimeLine Developer’s goal is to improve productivity and bring a professional look to your application without taking away any of the powerful features of Visual Studio and .NET. Let’s see how fast you can create a good-looking three-tier database application!
Visual Basic ist weder tot noch zu unattraktiv, um eine Alternative zu C# zu sein. In der aktuellen Version Visual Basic 2017 ist es sowohl beim .NET Framework als auch bei .NET Core 2.0 vertreten. Moderner Visual-Basic-Code läuft, etwa als Teil einer Webanwendung, damit auch unter Linux und macOS, und mit Xamarin Forms auf mobilen Geräten mit iOS und Android als Betriebssystem.
In dem Vortrag gibt Visual-Basic-Kenner Peter Monadjemi am Beispiel von .NET Core 2.0 einen Überblick über den aktuellen Stand der Sprache und zeigt an kleinen Beispielen, wo die Stärken der modernen Visual-Basic-Programmierung liegen. Eine nahtlose Integration von LINQ, Iteratoren, Tupel, mehrere Rückgabewerte bei Functions und die Möglichkeit eines Zeilenumbruchs innerhalb einer Anweisung sorgen dafür, dass sich auch mit Visual Basic moderner plattformübergreifender Code schreiben lässt. Ein Überblick über die Roslyn-Compilerplattform runden den Vortrag ab.
Docker ist für Microservices eine wichtige Technologie. Durch den Schritt in Richtung Plattformunabhängigkeit liegt der Gedanke nahe, .NET in Linux-Docker-Containern zu betreiben. Genau diese Strategie erleichtert Microsoft durch vorgefertigte Docker Images, auf denen man als .NET-Entwicklungsteam aufbauen kann. Container sind aber nicht nur interessant, wenn man Linux setzt. Wer noch beim .NET Framework bleiben möchte, der findet auch dafür Windows-basierende Basisimages im Docker Hub. In dieser Session zeigt Rainer Stropek, was Microsoft für .NET-Entwicklerinnen und Entwickler in Sachen Docker anbietet. Rainer verzichtet auf Slides und zeigt sowohl das Tooling (Visual Studio, Docker for Windows) als auch die Verwendung der Basisimages anhand von Livedemos. Man muss kein Docker-Profi sein, um von dieser Session zu profitieren. Grundlegendes Verständnis von Containertechnologie ist aber von Vorteil.
Gerade als GUI-Entwickler stößt man sehr schnell an die Grenzen von HTML und CSS, vor allem was die Möglichkeiten zum Layouten großer Anwendungen angeht. Seit einiger Zeit bietet das Flexbox-Modell alle notwendigen Hilfsmittel, um auch komplexe Anwendungslayouts einfach und komplett ohne JavaScript oder gar jQuery zu erstellen. Inzwischen findet endlich auch das Grid-Layout-System seinen Weg in immer mehr Browser und bietet damit eine weitere Möglichkeit, Layouts einfach und intuitiv zu erstellen. In dieser Session werden beide Systeme vorgestellt und es wird gezeigt, wie auch die schwierigsten Layoutanforderungen für Ihre Business-Apps einfach und hochperformant umgesetzt werden können.
Mit Ionic und dessen Basis Angular ist es möglich, eine Applikation einmalig zu entwickeln und auf allen Plattformen bereitzustellen. Dazu gehören neben den mobilen Plattformen wie iOS, Android und Windows 10 Mobile auch der Desktop mit macOS, Windows und Linux sowie der Browser als Plattform. Ionic bietet hierzu die entsprechenden Tools und stellt ein Framework zur Verfügung, das es dem Entwickler sehr leicht macht, eine Applikation zu entwickeln und dabei auch noch gut auszusehen. Ionic macht sich hierbei den Grundstein von Angular zunutze, sodass Angular-Entwickler nahtlos für weitere Plattformen entwickeln können. In dieser Session wird ein Einblick in die Entwicklung mit Ionic gegeben. Dabei werden die grundlegenden Funktionen, wie die Nutzung der Controls und das Navigation-Stack-Konzept, erläutert. Während der Session entsteht bei Live-Coding eine Applikation, die am Ende auf allen Plattformen lauffähig ist.
Die ursprünglich für diesen Slot vorgesehen Session fällt leider aus. Die gute Nachricht dabei: André Krämer und Dr. Holger Schwichtenberg beantworten Ihre Fragen rund um das Thema Datenzugriff, z.B. EF oder EFCore? Oder doch noch nHibernate? Wann ist EFCore reif? Lieber selbst einen ORM schreiben? Was ist mit dem DataSet? Was mache ich in verteilten Systemen? Wie kann ich einen ORM in einer App nutzen?
Sei es, um eine große Geschäftsanwendung in kleinere Teile zu zerlegen oder um allgemeine Funktionen projektübergreifend anzubieten: Jeder Angular-Entwickler wird früher oder später ein eigenes Angular-Paket entwickeln müssen. Diese Session zeigt unter Berücksichtigung des dazu vom Angular-Team veröffentlichten Package-Formats, wie Sie dazu die Möglichkeiten der aus der Welt von Node.js stammenden npm-Pakete nutzen können. Sie erfahren, auf was im Zusammenspiel mit Angular zu achten ist, welche Fallen es gibt und wie Sie eigene Pakete über ein privates Repository hausintern verteilen können. Danach werden Möglichkeiten zum dynamischen Laden von Bibliotheken zur Schaffung von Plug-in-Systemen betrachtet.
In Zeiten digitaler Veränderung wird die Cloud zunehmend ein fester Bestandteil jeder IoT-Lösung. Viele inkompatible kleine Geräte miteinander zu verbinden, ist eine Herausforderung, die es erfordert, ein hochkomplexes verteiltes System zu erstellen. In diesem Vortrag werden Sie am Beispiel von Amazon Alexa, Azure IoT Hub und Windows IoT Core lernen, wie man moderne IoT-Systeme erstellt, die Industrie 4.0 konform sind. Außerdem wird anhand vieler Demos gezeigt, wie das Azure IoT Hub
funktioniert und Geräte wie Amazon Echo Dot in Azure und die Windows-IoT-Plattform integriert werden können.
npm ist aus der modernen Softwareentwicklung nicht wegzudenken. Egal ob TypeScript-Compiler, DevOps-CLI-Tools oder JavaScript-Framework, alles kommt aus npm. Umso wichtiger ist es, ein performantes, verlässliches Tool zu haben, um seine npm-Pakete zu verwalten. npm 5 und Yarn sind in dieser Hinsicht ein großer Schritt in die richtige Richtung: Package Caching, Security, Stabilität und Offlineunterstützung sind nur einige Beispiele dafür. In dieser Session stellt Rainer Stropek die Neuerungen in npm 5 und das neue Tool Yarn vor. Er demonstriert die Unterschiede und bringt Anwendungsbeispiele für Server (Node.js) und Client (Angular).
Leckere Cocktails, gelungene Saftschorlen, erfrischende Smoothies…insbesondere im Sommer ein wahrer Genuss! Wenn man sich nur nicht so genau an die Rezeptur halten müsste. Die HoloLens-Anwendung „HoloBar“ unterstützt Schritt für Schritt beim Mixen des perfekten Fruchtsaftcocktails – Fehler ausgeschlossen!
Der Showcase verdeutlicht, wie die HoloLens als Lehrmedium, in der Produktion und zur Qualitätskontrolle in einer Vielzahl von Anwendungsbereichen genutzt werden kann. Christoph Müller führt in seinem Vortrag durch die Herausforderungen und Lösungsansätze bei der Entwicklung der Anwendung, so u.a. die Interaktion mit realen und virtuellen Objekten, der Objekt- und Spracherkennung sowie der Benutzerführung anhand von 3-D-Modellen und Animationen. Das Mixen und Servieren eines Cocktails darf natürlich auch nicht fehlen.
Seit einigen Jahren haben Abomodelle einen festen Platz ganz oben in der Liste der beliebtesten Lizenzmodelle von Softwareherstellern. Warum ist das so? Für den Endanwender bieten sie eine Möglichkeit zu einem kostengünstigen Einstieg mit einer flexiblen Laufzeit und einer Aktualitätsgarantie. Der Hersteller benötigt auf der anderen Seite einen längeren Atem, verfügt aber über eine kontinuierliche Einnahmequelle. Auch im B2B-Segment sind die Abomodelle nicht mehr wegzudenken. Die Session beleuchtet verschiedene bewährte Businessansätze und zeigt auch technische Ansätze der Realisierung. Dabei werden sowohl die Sicht des Entwicklers, aber auch die der Endanwender und des Softwareherstellers berücksichtigt.
Die künstliche Intelligenz erfährt ihre Renaissance. Machine Learning und Data Mining sind Dauerthema in unserer Entwicklerwelt. Als Theorie, Framework oder Service können wir sie in unsere Projekte einbinden. Die Session zeigt die aktuellen Möglichkeiten, die uns durch Microsoft-Technologien zur Verfügung stehen. Dabei wird auch ein Blick darauf geworfen, wie man die Möglichkeiten verbindet, um Mehrwerte in eigenen Projekten zu generieren.
Awendungsarchitekturen auf Basis von Microservices werden aktuell in den Entwicklercommunitys heiß diskutiert. Microsoft bietet mit Service Fabric eine Plattform an, mit der Microservices-Anwendungen sowohl On-Premises als auch in Azure betrieben werden können. Viele klassische Herausforderungen von Microservices (API-Management, Aktualisierung von Einzelservices, Gesamtfehlermanagement, Skalierung) lassen sich durch die Plattform leicht lösen. Der Vortrag zeigt anhand vieler Praxisbeispiele, wie Microservices in klassischem .NET und in .NET Core unter Nutzung der Service-Fabric-Plattform entwickelt und betrieben werden: Grundlagen von Service Fabric, Erzeugung eines Clusters, Stateless Services, Stateful Services, Actors, Kommunikation der Services untereinander und Versionierung von Schnittstellen.
***Nach dem Talk findet ein Praxis-Lab zu diesem Thema statt. Bitte tragen Sie sich dafür ab Dienstagmorgen am Check-in ein.***
Mit dem Akronym HATEOAS, abgekürzt für "Hypermedia As The Engine Of Application State", hat der Computerwissenschaftler Roy Fielding im Jahr 2000 erläutert, wie aus seiner Sicht das perfekte REST-API gebaut werden muss. HATEOAS ermöglicht ein API, das ohne zusätzliche sogenannte "Out-of-band"-Informationen verstanden und konsumiert werden kann. Dies wird ermöglicht, indem die Antworten des Servers dem Aufrufer über Links mitteilen, welche Folgeabfragen möglich sind. Seither streiten sich die Experten über das Thema und dessen Relevanz in der Praxis. In dieser Session zeigen wir, wie Enterprise-REST-APIs mit .NET Core gebaut werden können, und was es mit HATEOAS genau auf sich hat.
Der Vortrag stellt den Zuhörern typische Situationen aus dem Alltag der Softwareentwicklung vor. Angelehnt an das Setting eines klassischen Pen-and-Paper-Rollenspiels hat das Publikum die Möglichkeit, selbst zu entscheiden, wie es in den jeweiligen Situationen reagieren möchte, und bestimmt so den Verlauf des Vortrags maßgeblich mit. Je nach Entscheidung wird anschließend analysiert, welche Auswirkung diese Entscheidung hat, inwiefern sie negative Konsequenzen mit sich bringen kann und wie man ihnen entgegenwirkt. Der Themenbereich dieses Rollenspiels ist naturgemäß sehr weitläufig. So umfasst er zum einen technische Aspekte, wie beispielsweise die Bedeutung von Unit-Tests, aber auch der Umgang mit organisatorischen Fragestellungen und die Wichtigkeit von Soft Skills werden behandelt. Die Herausforderung, wie auf kleine bis große Änderungen der Anforderungen während eines Sprints reagiert werden kann, ist hierfür nur ein Beispiel.
Obwohl Angular von Haus aus schnell ist, bietet es dennoch eine Reihe an Ansätzen zur Performanceoptimierung. Dazu gehört der Template-Compiler, der gemeinsam mit Tree Shaking die Startgeschwindigkeit erhöht und die Dateigröße der Anwendung minimiert. Weitere Möglichkeiten zur Steigerung der Startgeschwindigkeit sind der Einsatz von Angular Universal zum serverseitigen Vorrendern von Ansichten, die Nutzung von Service Workers und das verzögerte Laden von Routen. Zusätzlich lässt sich die Datenbindung durch den Einsatz von Immutables und Observables drastisch beschleunigen. In dieser Session erfahren Sie anhand eines durchgängigen Beispiels, was sich hinter diesen Ideen verbirgt und wie Sie sie in Ihren performancekritischen Projekten erfolgreich einsetzen.
Funktionalität ist alles. Leider nicht, denn ein Softwareprodukt von hoher Qualität zeichnet sich durch weitere Merkmale aus. Ein großer Teil an qualitätssteigernden Kriterien kann toolgestützt und automatisiert ermittelt werden. Aber was kommt dann? In dem Vortrag soll das weitere Vorgehen zur kontinuerlichen Qualitätsverbesserung gezeigt werden. Dabei steht das Definieren und Erreichen von Zielen im Mittelpunkt. Zusätzlich müssen die Qualitätsmetriken richtig bewertet und priorisiert werden. Eines ist jedoch auch klar: Das richtige Tooling und ein paar Zahlen machen noch längst keine gute Software. Daher darf auch das Thema Review von Anwendungen, Dokumentation und Testing nicht fehlen.
Es ist zum Verzweifeln: Das Team hat mal wieder nicht verstanden, was man Tolles geplant hat, beim Pair-Programming hat der Beisitzer einen Blackout und der geniale Gag bei der Retro hat nicht gezündet, weil wieder einer den Witz nicht verstanden hat.
Scrum-Projekte schubsen IT-Teams auf die Bühne, nicht nur bei der Review. Und sie erleben dort dasselbe wie Improtheater-Ensembles: keiner kann Gedanken lesen, alle müssen enorm aufeinander achten und nur gemeinsam hat man Spaß und Erfolg.
Agile Soft-Skills lassen sich überraschend gut mit Improvisationstheater trainieren. Es ist das gleiche Mindset. Die Gemeinsamkeiten werden hier unterhaltsam und riskant vorgeführt mit Praktiken für den Scrum-Alltag.
Wo es viele Dienste gibt, ist potenziell der Overhead groß, sie miteinander kommunizieren zu lassen, Schnittstellen zu definieren oder gar architekturelle Entscheidungen zur Datenübermittlung zu treffen bzw. umzuwerfen. Für JavaScript gibt es das Framework Seneca, mit dessen Hilfe ein Message-Passing-Pattern für Microservices umgesetzt werden kann. Das ist angenehm einfach und transparent, und Seneca bietet weitere Hilfestellung durch die Unterstützung verschiedener "Transports", die auf niedriger Ebene den Datenaustausch implementieren. Vom ersten Einsatz bis zum Testen eines funktionierenden Systems zeigt Oliver in diesem Talk, wie einfach Microservices mit den richtigen Hilfsmitteln sein können.
Cloud-Größen wie Google, Twitter und Netflix haben die Kernbausteine ihrer Infrastruktur quelloffen verfügbar gemacht. Das Resultat aus vielen Jahren Cloud-Erfahrung ist nun frei zugänglich, und jeder kann seine eigenen Cloud-nativen Anwendungen entwickeln – Anwendungen, die in der Cloud zuverlässig laufen und fast beliebig skalieren. Die einzelnen Bausteine wachsen zu einem großen Ganzen zusammen, dem Cloud-Native-Stack. In dieser Session stellen wir die wichtigsten Konzepte und aktuellen Schlüsseltechnologien kurz vor. Anschließend implementieren wir einen einfachen Microservice mit .NET Core und Steeltoe OSS und bringen ihn zusammen mit ausgewählten Bausteinen für Service-Discovery und Konfiguration schrittweise auf einem Kubernetes-Cluster zum Laufen.
Monat für Monat hat der Sprecher Top-XAML-Tipps aufgeschrieben und im Windows Developer publiziert. Insgesamt sind es bereits über 180 Toptipps für Einsteiger und fortgeschrittene XAML-Entwickler. Der Vortrag zeigt davon die beliebtesten Tipps und Best Practices.
Keine App ohne Backend! In dieser Session erläutern wir die Möglichkeiten, wie mithilfe der Microsoft Azure Cloud ein Backend für mobile Line-of-business-Apps erstellt werden kann. Dabei zeigen wir die Möglichkeiten vom No-Code Backend, das komplett im Browser zusammengeklickt werden kann, bis zum kompletten skalierbaren API inklusive der Integration mit On-Premises-Systemen oder Software-as-a-Service-Diensten.
Wie kann ich aus einem Haufen (evtl. reaktiver) Microservices einen funktionierenden Ende-zu-Ende-Geschäftsprozess entstehen lassen? Wie kann ich langlaufende Prozesse oder „Sagas“ umsetzen? Wie vermeide ich chaotische Spaghettikommunikation, die meinen Businessanalysten in den Wahnsinn treibt? Was bedeutet eine Workflow-Engine für den Bounded Context, und wie schneide ich Prozesse und Verantwortung? Kann moderne Workflowtechnologie helfen, ohne dabei einen BPM-Monolithen einzuführen? Diesen Fragen möchte ich in der Session nachgehen und auf mögliche Patterns und Architekturkonzepte eingehen. Dabei werde ich von Praxiserfahrungen berichten sowie Alternativen anhand von Codebeispielen veranschaulichen.
Der universelle Quantencomputer verspricht ein hohes Anwendungspotenzial im Bereich der Kryptografie, der selbst lernenden Verfahren und der Quantensimulation. Ein Quantencomputer kann potenziell Probleme lösen, wie sie mit keinem anderen Verfahren lösbar sind. Erste Quantencomputer können bereits heute wie in herkömmlichen Cloud-Computing-Verfahren verwendet werden. Die größte Hürde zur Realisierung eines Quantencomputers ist momentan die hohe Anzahl an Qubits, die zur Fehlerkorrektur gebraucht werden. In dem Vortrag gebe ich einen Ausblick auf die vielfältigen und neuen Möglichkeiten und diskutiere den momentanen Stand der Technik.
Da mehr Threads nicht unbedingt mehr Performance bedeuten - das C#-5-Feature unter der Lupe: Wo kann und soll async-await verwendet werden und wo parallelisiert man lieber? Was ist überhaupt der Unterschied zwischen Parallelisierung und Asynchronität, was eignet sich wofür? Gemeinsam arbeiten wir uns von den async-await-Grundlagen hoch zur Abgrenzung zu Parallelisierung und gehen anschließend über zu häufige Implementierungsfehler und Fallstricke – oder wissen schon alle über Thread Stealing, die Probleme des „await Task.Run“-Antipattern im Server und die Vor- und Nachteile von async-void Bescheid?
Dokumentieren ist nicht des Entwicklers Lieblingsthema, jedoch für die Langlebigkeit eines Projekts unerlässlich. Nutzt man Tools, die Entwickler jedoch mögen, kann es die Dokumentationsbereitschaft enorm steigern. In diesem Talk möchte ich daher eine Einführung in Jekyll und Markdown geben und auch Dokumentationswerkzeuge aus dem Microsoft-Technologieumfeld zeigen.
Wenn es um optimale Datenbankzugriffe geht, kommt man trotz diverser Frameworks oft nicht darum herum, SQL-Abfragen oder auch kleine SQL-Skripte zu schreiben. Dabei haben manchmal selbst kleine Details gravierende Auswirkungen auf die Ausführungszeit. In diesem Vortrag wird gezeigt, worauf beim Schreiben von SQL-Code zu achten ist. Dabei steht aber nicht nur die Performance im Vordergrund, auch Coding Guidelines für bessere Lesbarkeit und fehlertolerantere Abfragen werden behandelt. Dazu kommen Tipps, wie man das eine oder andere Problem in SQL vielleicht etwas eleganter als mit dem offensichtlichen Lösungsweg angehen kann. Kurzum versorgt Sie diese Session mit verschiedenen Anregungen und Ideen, um künftig schöneren, schnelleren, robusteren oder einfach besseren SQL-Code zu schreiben.
In dieser Session schauen wir uns die Bitcoin Blockchain als "Datenbank" genauer an. Ausgangspunkt: Wie anonym ist das Ganze eigentlich wirklich, wo doch alles für alle sichtbar sein soll? Nach einem Einstieg in Hintergründe und Struktur der Bitcoin Blockchain, laden wir sie (d.h. alle Transaktionen, die bisher stattgefunden haben) in eine Datenbank, und zwar in Neo4j und schauen, welche Analysen in solch einer GraphDB möglich sind. Auch ein Vergleich mit unserem relationalen SQL Server darf natürlich nicht fehlen (warum schlägt sich so eine GraphDB hier eigentlich besser?). Visualisierung und weitere Analysen dann – wie könnte es anders sein – in PowerBI, das wir direkt an Neo4j andocken. Ziel: An prominentem Beispiel schauen, was da so an Coins geflossen sind.
TypeScript ist eine von Microsoft eingeführte Sprache, die eine typisierte Obermenge von JavaScript darstellt. Beim sogenannten Transpilieren wird TypeScript in reines JavaScript übersetzt, das der Browser ausführen kann. Spätestens seit Google mit Angular voll auf TypeScript setzt, weiß man, dass die vom C#-Erfinder Anders Hejlsberg vorangetriebene Sprache sehr ernst zu nehmen ist. Doch was macht TypeScript so interessant? Jeder C#-/Java-Entwickler weiß, dass die starke Typisierung von C#/Java hilft, soliden Code zu schreiben: Variablen können nur Werte enthalten, die auch vorgesehen waren. Genau diese starke, in JavaScript fehlende Typisierung ist das zentrale Feature von TypeScript. Entwickler erhalten somit IntelliSense, Kompilierungsfehler und vieles mehr. Neben der starken Typisierung lässt sich TypeScript auch in ältere JavaScript-Versionen transpilieren. Dadurch lassen sich JavaScript-Features nutzen, die zwar bereits als Standard abgesegnet, aber heute noch nicht in allen gängigen Browsern umgesetzt sind. Steigen Sie zusammen mit Thomas Claudius Huber mit diesem Workshop in die Programmierung mit TypeScript ein. Lernen Sie die Grundlagen und Konzepte der faszinierenden Sprache kennen, verstehen Sie den Zusammenhang mit JavaScript, lernen Sie, wie TypeScript in Angular eingesetzt wird und rüsten Sie Ihr Wissen auf, um auch als C#-/Java-Entwickler in der modernen Welt aus Desktop, Web und Mobile mitzumischen.