Empfohlen, 2024

Die Wahl des Herausgebers

Facebooks Flow könnte JavaScript-Programmierern dabei helfen, schwer fassbare Bugs ausfindig zu machen

[01/20] Установка и настройка Flow

[01/20] Установка и настройка Flow
Anonim

Erleichtert die bisher schwierige Programmierung Aufgabe, hat Facebook als Open Source ein Debugging-Tool für JavaScript, namens Flow, entwickelt, um Probleme durch den Missbrauch von Datentypen hervorzuheben.

"Flow verbessert die Geschwindigkeit und Effizienz, so dass Entwickler mit JavaScript, produktiver sein können", Facebook Ingenieure sagten in einem Blog-Artikel am Dienstag gepostet. Facebook hat Flow für viele seiner eigenen Projekte verwendet.

Flow ist ein statischer Typ-Checker, der sicherstellt, dass bei der Ausführung eines Programms seine Variablen, Funktionen und andere Code-Elemente ihren ursprünglichen Spezifikationen entsprechen. Es kann prüfen, ob ein einer Variablen zugewiesener Wert der richtige Typ ist, z. B. eine Zahl und keine Zeichenkette. Es kann auch prüfen, ob einer Funktion die korrekte Anzahl von Eingaben übergeben wurde.

Solche Fehlerprüfungen können Programmfehler verhindern und das Programm vor böswilligem Missbrauch schützen. Die Typprüfung kann auch helfen, die Codebasis des Programms zu erhalten.

JavaScript wurde in den letzten Jahren als Web-Entwicklungstool immer beliebter, nicht nur zum Hinzufügen von Funktionalität zu Webseiten, sondern auch zum Erstellen von vollständigen Webanwendungen. Im Gegensatz zu herkömmlichen Programmiersprachen wie C ++ bietet JavaScript keine systematischen statischen Typisierungsfunktionen. Da es sich um eine sehr ausdrucksstarke Sprache handelt, eignet sich JavaScript nicht gut für Typ-Checking-Systeme, schreiben die Facebook-Ingenieure.

Andere Unternehmen haben sich der Herausforderung gestellt, die statische Typprüfung in JavaScript zu integrieren. Microsoft hat zum Beispiel TypeScript entwickelt, eine Obermenge von JavaScript-Code, der kompiliert werden kann, damit Typprüfungen durchgeführt werden können.

Im Gegensatz zu TypeScript ermöglicht Flow dem Entwickler, nur Teile des Codes zu überprüfen. JavaScript-Frameworks verwenden häufig Techniken wie Reflektion, die die Typüberprüfung erschweren.

Beim Ausführen von Flow muss der Programmierer das Programm nicht kompilieren oder das Programm auf andere Weise vorbereiten. Stattdessen funktioniert es als Hintergrundprozess. Flow kann standardmäßige primitive Typen wie Zahlen, Strings und boolesche Werte sowie strukturierte Typen wie Funktionen, Objekte und Arrays überprüfen.

Flow ist zunächst als Plug-in für die Emacs- und Vim-Code-Editoren verfügbar. und Versionen für andere Editoren können in Zukunft veröffentlicht werden. Es bietet auch eine API (Application Programming Interface), so dass es von anderen Code-Analyse-Tools verwendet werden kann.

Facebook wird routinemäßig Tools als Open Source veröffentlichen, die ursprünglich für den internen Gebrauch entwickelt wurden, in der Hoffnung, dass andere die Tools weiterentwickeln . Das Unternehmen hat eine virtuelle Maschine zum Ausführen von in PHP geschriebenen Programmen freigegeben, die als Hip Hop Virtual Machine bezeichnet wird. Es hat auch eine populäre JavaScript-Bibliothek zum Erstellen von Benutzeroberflächen, genannt React, und eine Datenbank-Engine zum Abfragen verteilter Datenmengen namens Presto.

Top