Prof. Dr. G. Hellberg EDV Beratung und Softwareengineering seit 1984
Mailadresse fuer Kontaktaufnahme
NewsNews
 
Die Hellberg EDV Beratung ist SuSE Business Partner
 
Professor Hellberg ist Certified Novell InstructorDie Hellberg EDV Beratung ist Novell Business Partner
 
Die Hellberg EDV Beratung ist Microsoft Partner
 
GDATA Software
 
News

Unter dem Namen Flow hat Facebook ein neues Werkzeug zur statischen Typüberprüfung vorgestellt. Da JavaScript – anders als etwa die Programmiersprachen Java, C oder C++ – standardmäßig keine statische Typisierung unterstützt, ist das Tool sinnvoll. Noch befindet sich das größtenteils in OCaml geschriebene und quelloffene Projekt in einem frühen Stadium. Über kurz oder lang soll es aber für eine bessere Qualität und Produktivität des JavaScript-Codes sorgen. Zahlreiche Eigenschaften des kommenden ECMAScript-6-Standards werden auch schon unterstützt.

Für die statische Typisierung sprechen Einblicke in den Code, aufgrund derer sich der Code besser transformieren, navigieren und verbessern lassen soll und eine frühe Fehlerprüfung, mit der sich bestimmte Laufzeitfehler vermeiden lassen. Gewöhnlich gestaltet sich die Kombination aus statischen Typen und JavasScript jedoch nicht einfach, weswegen Flow Kontrollfluss- und Datenflussanalysen, die auch die meisten Compiler um semantische Informationen zur Typableitung aus dem Code zu ziehen benutzen, verwendet. Der Entwicklung von Flow liegt die Annahme, dass der meiste JavaScript-Code implizit statisch typisiert sei, zugrunde.

Die Typüberprüfung von Flow geschieht als Opt-in – Entwickler können die zu untersuchenden Codepassagen selbst auswählen und müssen nicht ihren gesamten Code auf einmal überprüfen. Für das Finden von Typfehlern sind keine Änderungen am Code notwendig, da Flow die statischen Typen automatisch findet. Dass mancher JavaScript-Code, insbesondere bei Frameworks, inhärent dynamisch verwendet wird spricht des Weiteren für das Opt-in. Da die Typprüfung von Flow hier zu ungenau wäre, bietet das Werkzeug die Option, solchem Code explizit zu vertrauen und bei der Prüfung außen vor zu lassen.

Durch die große JavaScript-Codemenge bei Facebook bekommt diese Entscheidung Rückendeckung, denn der meiste Code falle hier in die Kategorie des implizit statisch typisierten Codes, weswegen Entwickler ihren Code, ohne dass sie ihn explizit mit Typen annotieren müssten, überprüfen können. Man unterscheide sich hierin laut Facebook auch von anderen Versuchen, die ein Typsystem für die Sprache, wie Microsofts JavaScript-Aufsatz TypeScript, bieten.

(mt, hannover)

(siehe auch heise-News-Ticker:)

Hannover · EDV-Beratung · Linux · Novell · Microsoft · Seminar · IT-Consult · Netzwerk · LPIC · CLE