Facebook: Debugging mittels Sonar frei verfügbar
Facebook hat mit Sonar ein Tool als Open Source freigegeben, das die eigenen Entwickler unter anderem zum Debuggen und Verwalten des Social Network einsetzen.
Facebooks Software-Ingenieur Emil Sjölander hat in einem Blogeintrag [1] bekanntgegeben, dass sein Unternehmen ein selbstentwickeltes Cross-Plattform-Debugging-Tool mit dem Namen Sonar ab sofort als Open-Source-Projekt [2]bereitstellt. Entwickler sollen mit Sonar ein Werkzeug an die Hand bekommen, mit dessen Hilfe sie die Struktur und das Verhalten ihrer iOS- und Android-Anwendungen untersuchen und besser verstehen können.
Sonar besteht grundsätzlich aus zwei Teilen: einem Desktop-Client und einem Mobile SDK. Entwickler, die Sonar einsetzen, arbeiten und interagieren mit dem Desktop-Client. Das SDK wird zusammen mit der Android- oder iOS-Anwendung installiert, die die Entwickler untersuchen möchten. Es transportiert die Daten zum Desktop-Client. Dieser Client wurde auf Basis von Electron und verschiedenen Open-Source-Projekten von Facebook entwickelt. Dazu gehören unter anderem React.js, Flow, Metro, RSocket und Yarn. Auch das Mobile SDK macht von den Open-Source-Projekten Gebrauch und nutzt beispielsweise Folly und RSocket.
Erweiterungen mit Hilfe von Open-Source-Plug-ins
Die Facebook-Entwickler haben Sonar so angelegt, dass die Software leicht zu erweitern ist. So haben sie im Rahmen ihrer Arbeiten mit dem Tool bereits eine große Anzahl von ergänzenden Plug-ins entwickelt. Es existieren sowohl Plug-ins speziell für den Facebook-spezifischen Einsatz als auch solche für mehr generische Zwecke. Sämtliche Plug-ins stellt Facebook zusammen mit Sonar als Open Source zur Verfügung.
Entwickler können zudem laut Aussagen von Sjölander Sonar recht einfach durch eigene Plug-ins erweitern. Dazu müssen sie ein Plug-in für den Desktop-Client, mit dessen Hilfe das UI gerendert wird, und eines für das SDK schreiben, durch das die Daten dann bereitgestellt werden. Dabei ist die React-Komponente für die Kommunikation mit dem Mobile SDK Plug-in verantwortlich. Es ist zudem in der Lage, auch Kommandos zurück an das SDK zu schicken. Wer ein Mobile SDK Plug-in entwickelt, wird dies in der nativen Programmiersprache der jeweiligen Plattform tun, auf dem es dann zum Einsatz kommt. Entwickler können daher beispielsweise Swift/Objective-C auf iOS und Java/Kotlin auf Android einsetzen.
Sonar steht auf GitHub [3] bereit und Facebook bietet zum Einstieg umfangreiche Getting-Started-Dokumente [4] auf der Sonar-Website [5] an. (fms [6])
URL dieses Artikels:
https://www.heise.de/-4076692
Links in diesem Artikel:
[1] https://code.facebook.com/posts/1461914677288302/open-sourcing-sonar-a-new-extensible-debugging-tool/
[2] https://fbsonar.com/
[3] https://github.com/facebook/Sonar/
[4] https://fbsonar.com/docs/getting-started.html
[5] https://fbsonar.com/
[6] mailto:fms@heise.de
Copyright © 2018 Heise Medien