Abo
  • Services:
Anzeige
Facebook bringt statische Typen für Javascript.
Facebook bringt statische Typen für Javascript. (Bild: Facebook)

Facebook: Flow bringt statische Typen für Javascript

Facebook bringt statische Typen für Javascript.
Facebook bringt statische Typen für Javascript. (Bild: Facebook)

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.

Anzeige

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.

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.


eye home zur Startseite
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...



Anzeige

Stellenmarkt
  1. Daimler AG, Düsseldorf
  2. Dataport, Hamburg
  3. VBL. Versorgungsanstalt des Bundes und der Länder, Karlsruhe
  4. Alfred Kärcher GmbH & Co. KG, Winnenden bei Stuttgart


Anzeige
Top-Angebote
  1. 69,99€ (Liefertermin unbekannt)
  2. (heute u. a. mit 40% auf Polar A360, Sony DSC-RX10M2 für 999,00€)
  3. 1169,00€

Folgen Sie uns
       


  1. Bundesverwaltungsgericht

    Firmen müssen Rundfunkbeitrag zahlen

  2. Zenbook 3 im Test

    Macbook-Konkurrenz mit kleinen USB-Typ-C-Problemen

  3. id Software

    Update für Doom entfernt Denuvo

  4. Project Evo

    Microsofts Vorbereitungen für einen Echo-Konkurrenten

  5. Industrial Light & Magic

    Wenn King Kong in der Renderfarm wütet

  6. Auto

    Faraday Future zeigt neue Details seines Elektro-SUVs

  7. iTunes

    Apple plant Streaming aktueller Kinofilme

  8. Bluetooth 5

    Funkleistung wird verzehnfacht

  9. Microsofts x86-Emulator für ARM

    Yes, it can run Crysis

  10. Spielebranche

    Shadow Tactics gewinnt Deutschen Entwicklerpreis 2016



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Gear S3 im Test: Großes Display, großer Akku, große Uhr
Gear S3 im Test
Großes Display, großer Akku, große Uhr
  1. In der Zuliefererkette Samsung und Panasonic sollen Arbeiter ausgebeutet haben
  2. Vernetztes Auto Samsung kauft Harman für 8 Milliarden US-Dollar
  3. 10LPU und 14LPU Samsung mit günstigerem 10- und schnellerem 14-nm-Prozess

Robot Operating System: Was Bratwurst-Bot und autonome Autos gemeinsam haben
Robot Operating System
Was Bratwurst-Bot und autonome Autos gemeinsam haben
  1. Roboterarm Dobot M1 - der Industrieroboter für daheim
  2. Roboter Laundroid faltet die Wäsche
  3. Fahrbare Roboter Japanische Firmen arbeiten an Transformers

Super Mario Bros. (1985): Fahrt ab auf den Bruder!
Super Mario Bros. (1985)
Fahrt ab auf den Bruder!
  1. Quake (1996) Urknall für Mouselook, Mods und moderne 3D-Grafik
  2. NES Classic Mini im Vergleichstest Technischer K.o.-Sieg für die Original-Hardware

  1. Re: Für 1 - 2 Personen unattraktiv

    Enter the Nexus | 10:59

  2. Re: Na das ist mal ne Tolle News!

    opodeldox | 10:57

  3. Displayport via USB-Alternatemod auf HDMI-Buchse???

    Wuestenschiff | 10:57

  4. Re: Stinkefinger an Intel

    Dieselmeister | 10:56

  5. Re: Kurzfassung

    Phreeze | 10:55


  1. 10:56

  2. 10:37

  3. 10:28

  4. 10:00

  5. 09:00

  6. 08:01

  7. 07:44

  8. 07:35


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel