© saicle/Shutterstock.com
PHP Magazin
Teil 4: Flow - Typsicherheit auf React-Art

Typsicherer Code mit Flow

Im Bereich von JavaScript-Bibliotheken und JavaScript-Werkzeugen hat Facebook in letzter Zeit viel Aufmerksamkeit erzeugt. Allen voran sind hier React und der Paketmanager Yarn zu nennen. Neben diesen bekannten Werkzeugen gibt es noch eine ganze Reihe momentan noch weniger bekannter Hilfsmittel aus dem Hause Facebook wie zum Beispiel das Testframework Jest oder den Type Checker Flow, der im Mittelpunkt dieses Artikels stehen wird.

Sebastian Springer


ArtikelserieTeil 1: React – ein Blick unter die HaubeTeil 2: Redux – State-Management für ReactTeil 3: Native Applikationen mit React und Redux entwickelnTeil 4: Flow – Typsicherheit auf React-ArtTeil 5: React testen – gute und stabile Applikationen entwickeln

Mit seinen ambitionierten Projekten schafft es Facebook, zusammen mit der Community ein Ökosystem aufzusetzen, mit dem sich Projekte sicher, schnell und mit hoher Qualität umsetzen lassen. Wir werfen einen genauen Blick unter die Haube von Flow. Sie lernen die wichtigsten Features von Flow kennen und sehen, wie Sie typsicheren Code in Ihrer JavaScript-Applikation schreiben können. Außerdem sehen Sie, was dieses Werkzeug für Sie und Ihre Applikation leisten kann. Zunächst erfahren Sie, wo Flow im Vergleich zu TypeScript steht und worin die wichtigsten Unterschiede zwischen beiden Werkzeugen liegen.

Warum ein Typsystem?

Bevor Sie sich nun in die Welt von Flow stürzen, sollten Sie sich zunächst die Frage stellen, welchen Nutzen Ihnen Typsicherheit in JavaScript bringt. Grundsätzlich bedeutet der Einsatz eines Typsystems einen gewissen Mehraufwand. Dies gilt sowohl für die Einarbeitung in die Bibliothek beziehungsweise die Sprache als auch für den zusätzlich erforderlichen Quellcode und die etwas erhöhte Komplexität.

Die Vorteile, die Flow Ihnen bietet, wiegen diese Nachteile jedoch sehr schnell wieder auf. Allen voran reduziert die Typsicherheit potenzielle Fehlerquellen. Gehen Sie hier nur einmal davon aus, Sie schreiben eine Funktion und können festlegen, welche Datentypen die einzelnen Argumente haben und welchen Typ die Funktion zurückgibt. Der Umgang mit derlei Funktionen gestaltet sich gerade in umfangreichen Applikationen wesentlich einfacher, da die angegebenen Typen einerseits die Schnittstelle der Funktion genau festlegen und so eine Form von Dokumentation darstellen, und das Typsystem andererseits sicherstellt, dass Sie diese Schnittstelle nicht verletzen. Rufen Sie in normalem JavaScript eine Funktion mit den falschen Datentypen auf, führt dies erst zur Laufzeit der Applikation zu einem Fehler. Mit einem Typsystem werden Sie bereits zum Zeitpunkt der Überprüfung des Quellcodes, also wesentlich früher, auf Ihren Fehler aufmerksam gemacht, was Ihnen unter dem Strich wertvolle Zeit spart. Insgesamt gewinnen Sie durch die Verwendung eines Typsystems an Sicherheit bei der Entwicklung, die sich gerade bei Umbauarbeiten im Quellcode bezahlt macht. In diesem Abschnitt war nur die Rede von einem abstr...

PHP Magazin
Teil 4: Flow - Typsicherheit auf React-Art

Typsicherer Code mit Flow

Im Bereich von JavaScript-Bibliotheken und JavaScript-Werkzeugen hat Facebook in letzter Zeit viel Aufmerksamkeit erzeugt. Allen voran sind hier React und der Paketmanager Yarn zu nennen. Neben diesen bekannten Werkzeugen gibt es noch eine ganze Reihe momentan noch weniger bekannter Hilfsmittel aus dem Hause Facebook wie zum Beispiel das Testframework Jest oder den Type Checker Flow, der im Mittelpunkt dieses Artikels stehen wird.

Sebastian Springer


ArtikelserieTeil 1: React – ein Blick unter die HaubeTeil 2: Redux – State-Management für ReactTeil 3: Native Applikationen mit React und Redux entwickelnTeil 4: Flow – Typsicherheit auf React-ArtTeil 5: React testen – gute und stabile Applikationen entwickeln

Mit seinen ambitionierten Projekten schafft es Facebook, zusammen mit der Community ein Ökosystem aufzusetzen, mit dem sich Projekte sicher, schnell und mit hoher Qualität umsetzen lassen. Wir werfen einen genauen Blick unter die Haube von Flow. Sie lernen die wichtigsten Features von Flow kennen und sehen, wie Sie typsicheren Code in Ihrer JavaScript-Applikation schreiben können. Außerdem sehen Sie, was dieses Werkzeug für Sie und Ihre Applikation leisten kann. Zunächst erfahren Sie, wo Flow im Vergleich zu TypeScript steht und worin die wichtigsten Unterschiede zwischen beiden Werkzeugen liegen.

Warum ein Typsystem?

Bevor Sie sich nun in die Welt von Flow stürzen, sollten Sie sich zunächst die Frage stellen, welchen Nutzen Ihnen Typsicherheit in JavaScript bringt. Grundsätzlich bedeutet der Einsatz eines Typsystems einen gewissen Mehraufwand. Dies gilt sowohl für die Einarbeitung in die Bibliothek beziehungsweise die Sprache als auch für den zusätzlich erforderlichen Quellcode und die etwas erhöhte Komplexität.

Die Vorteile, die Flow Ihnen bietet, wiegen diese Nachteile jedoch sehr schnell wieder auf. Allen voran reduziert die Typsicherheit potenzielle Fehlerquellen. Gehen Sie hier nur einmal davon aus, Sie schreiben eine Funktion und können festlegen, welche Datentypen die einzelnen Argumente haben und welchen Typ die Funktion zurückgibt. Der Umgang mit derlei Funktionen gestaltet sich gerade in umfangreichen Applikationen wesentlich einfacher, da die angegebenen Typen einerseits die Schnittstelle der Funktion genau festlegen und so eine Form von Dokumentation darstellen, und das Typsystem andererseits sicherstellt, dass Sie diese Schnittstelle nicht verletzen. Rufen Sie in normalem JavaScript eine Funktion mit den falschen Datentypen auf, führt dies erst zur Laufzeit der Applikation zu einem Fehler. Mit einem Typsystem werden Sie bereits zum Zeitpunkt der Überprüfung des Quellcodes, also wesentlich früher, auf Ihren Fehler aufmerksam gemacht, was Ihnen unter dem Strich wertvolle Zeit spart. Insgesamt gewinnen Sie durch die Verwendung eines Typsystems an Sicherheit bei der Entwicklung, die sich gerade bei Umbauarbeiten im Quellcode bezahlt macht. In diesem Abschnitt war nur die Rede von einem abstr...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang