• IT-Karriere:
  • Services:

Facebook: Flow bringt statische Typen für Javascript

Mit Flow soll sich eine statische Typisierung in Javascript umsetzen lassen. Die Software überprüft die Typen im Hintergrund und soll die Fehlersuche sowie die Codeverwaltung deutlich vereinfachen.

Artikel veröffentlicht am ,
Facebook bringt statische Typen für Javascript.
Facebook bringt statische Typen für Javascript. (Bild: Facebook)

Javascript besitzt anders als C und C++ standardmäßig keine statischen Typen. Ob etwa ein Argument zu einer bestimmten Funktion passt, wird zur Laufzeit ermittelt und nicht durch die Typen beim Kompilieren bestimmt. Das erschwert jedoch die Fehlersuche und die Pflege oder die Optimierung von viel Javascript-Code. Das meint zumindest Facebook und stellt mit Flow nun eine statische Typenüberprüfung für Javascript bereit.

Stellenmarkt
  1. CHECK24 Services GmbH, München
  2. Reitsport Schockemöhle GmbH, Steinfeld-Mühlen

Da die Vereinigung von statischen Typen mit klassischem Javascript eher schwierig in der Umsetzung ist, verwendet Flow eine Analyse der Daten- und Kontrollflüsse, die viele Compiler benutzen, um semantische Informationen zu erhalten. Zusätzlich dazu wird die Annahme genutzt, dass der meiste Javascript-Code implizit statische Typisierung nutzt. Die Typenzugehörigkeit schlussfolgert Flow schlicht aus dem Code.

Die Typenüberprüfung geschieht dabei als Opt-in, dass heißt Nutzer können selbst entscheiden, welche Codebestandteile kontrolliert werden. Hilfreich ist das vor allem für Frameworks, die meist inhärent dynamischen Code verwenden. Diese Teile können mit Flow einfach übergangen werden. Damit unterscheide sich die Herangehensweise fundamental von anderen Typsystemen für Javascript wie etwa Typescript.

Flow unterstützt einfache Standard-Typen wie number, string, boolean, aber auch Typen-Verbunde wie für Funktionen, Objekte oder Arrays. Zudem dürfen Typen polymorph sein. Darüber hinaus wird der Typ any unterstützt, der genutzt werden kann, um das statische Typensystem in besonderen Situationen explizit zu umgehen.

Außerdem unterstützt Flow bereits viele Eigenschaften des Ecmascript6-Standards. Serverseitig benutzt Flow eine ähnliche Architektur wie Hack und überprüft verschiedene Module eines Projekts einzeln, so dass die Anwendung sehr gut skalieren können soll. Der hauptsächlich in OCaml geschriebene Code findet sich auf Github, Details zu dem Projekt bietet die Dokumentation.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • ohne Tracking
  • mit ausgeschaltetem Javascript


Anzeige
Top-Angebote
  1. 215,99€ (mit Rabattcode PURZELPREISE)
  2. 419,00€ (Bestpreis!)
  3. mit 19% Rabatt auf Samsung-Galaxy-Produkte
  4. (u. a. RTX 2080 ROG Strix Gaming Advanced für 699€, RTX 2080 SUPER Dual Evo OC für 739€ und...

TheUnichi 21. Nov 2014

React und Jest sind nun keine besonderen Erfindungen, HHVM ist bis heute unbenutzbar für...

TheUnichi 21. Nov 2014

Und zwar? Es existiert gar kein Unterschied, im Gegenteil, TypeScript ist sogar mächtiger...


Folgen Sie uns
       


Pixel 4 XL - Test

Das Pixel 4 XL ist Googles erstes Smartphone mit einer Dualkamera. Im Test haben wir uns diese genau angeschaut.

Pixel 4 XL - Test Video aufrufen
Mobile-Games-Auslese: Fantasypixel und Verkehrsplanung für unterwegs
Mobile-Games-Auslese
Fantasypixel und Verkehrsplanung für unterwegs

Wunderschöne Abenteuer in einer Fantasywelt bietet das Mobile Game Inmost, Verkehrsplanung auf mobilen Endgeräten gibt's in Mini Motorways - und mit The Swords of Ditto mehr als eine Hommage an The Legend of Zelda für unterwegs.
Von Rainer Sigl

  1. Mobile-Games-Auslese Superheld und Schlapphutträger zu Besuch im Smartphone
  2. Mobile-Games-Auslese Verdrehte Räume und verrückte Zombies für unterwegs
  3. Dr. Mario World im Test Spielspaß für Privatpatienten

Gardena: Open Source, wie es sein soll
Gardena
Open Source, wie es sein soll

Wenn Entwickler mit Zeitdruck nach Lösungen suchen und sich dann für Open Source entscheiden, sollte das anderen als Vorbild dienen, sagen zwei Gardena-Entwickler in einem Vortrag. Der sei auch eine Anleitung dafür, das Management von der Open-Source-Idee zu überzeugen - was auch den Nutzern hilft.
Ein Bericht von Sebastian Grüner

  1. Linux-Kernel Machine-Learning allein findet keine Bugs
  2. KernelCI Der Linux-Kernel bekommt einheitliche Test-Umgebung
  3. Linux-Kernel Selbst Google ist unfähig, Android zu pflegen

Nitrokey und Somu im Test: Zwei Fido-Sticks für alle Fälle
Nitrokey und Somu im Test
Zwei Fido-Sticks für alle Fälle

Sie sind winzig und groß, sorgen für mehr Sicherheit bei der Anmeldung per Webauthn und können gepatcht werden: Die in Kürze erscheinenden Fido-Sticks von Nitrokey und Solokeys machen so manches besser als die Konkurrenz von Google und Yubico. Golem.de konnte bereits vorab zwei Prototypen testen.
Ein Test von Moritz Tremmel

  1. iOS 13 iPhone bekommt Webauthn per NFC
  2. Webauthn unter Android ausprobiert Dropbox kann, was andere nicht können

    •  /