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. Deutscher Genossenschafts-Verlag eG, Wiesbaden
  2. Robert Bosch GmbH, Stuttgart-Vaihingen
  3. VSA GmbH, München
  4. SCHOTT AG, Mainz


Anzeige
Spiele-Angebote
  1. 1,49€
  2. 7,99€
  3. 47,99€

Folgen Sie uns
       


  1. Energy Harvesting

    Biobrennstoffzelle erzeugt Strom aus Schweiß

  2. Neue Firmware

    Zwangsupdate für DJIs Spark-Drohne gegen Abstürze

  3. High Speed Rail

    Chinas Züge fahren bald wieder mit 350 km/h

  4. iPhone am Steuer

    Apple will an Autounfällen nicht schuld sein

  5. Filmfriend

    Kostenloses Videostreaming für Bibliothekskunden

  6. EMotion

    Fisker-Elektroauto soll in 9 Minuten Strom für 200 km laden

  7. Electronic Arts

    Hunde, Katzen und Weltraumschlachten

  8. Microsoft

    Age of Empires 4 angekündigt

  9. Google

    Android 8.0 heißt Oreo

  10. KI

    Musk und andere fordern Verbot von autonomen Kampfrobotern



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Nach Anschlag in Charlottesville: Nazis raus - aber nur aus PR-Gründen
Nach Anschlag in Charlottesville
Nazis raus - aber nur aus PR-Gründen
  1. Bundesinnenministerium Neues Online-Bürgerportal kostet 500 Millionen Euro
  2. EU-Transparenz EuGH bekräftigt nachträglichen Zugang zu Gerichtsakten
  3. Rücknahmepflicht Elektronikschrott wird kaum zurückgegeben

Radeon RX Vega 64 im Test: Schnell und durstig mit Potenzial
Radeon RX Vega 64 im Test
Schnell und durstig mit Potenzial
  1. Radeon RX Vega Mining-Treiber steigert MH/s deutlich
  2. Radeon RX Vega 56 im Test AMD positioniert sich in der Mitte
  3. Workstation AMD bringt Radeon Pro WX 9100

Threadripper 1950X und 1920X im Test: AMD hat die schnellste Desktop-CPU
Threadripper 1950X und 1920X im Test
AMD hat die schnellste Desktop-CPU
  1. Ryzen AMD bestätigt Compiler-Fehler unter Linux
  2. CPU Achtkerniger Threadripper erscheint Ende August
  3. Ryzen 3 1300X und 1200 im Test Harte Gegner für Intels Core i3

  1. Entwickelt lieber Carplay weiter!

    Melanchtor | 11:09

  2. Re: Nicht so bescheuert wie es auf den Ersten...

    Tantalus | 11:08

  3. Re: Endlich mal wieder ein FF am PC!

    MrReset | 11:08

  4. Re: 3rd Person wie in SCUM

    non_existent | 11:08

  5. Re: Wer von euch hat mit diesem Namen gerechnet?

    photoliner | 11:06


  1. 11:23

  2. 10:58

  3. 10:21

  4. 09:52

  5. 09:02

  6. 07:49

  7. 07:23

  8. 07:06


  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