MIT DER NEUEN TWEAKS-BIBLIOTHEK VON FACEBOOK KÖNNEN ENTWICKLER IHRE IOS-APPS IM HANDUMDREHEN OPTIMIEREN - TECHCRUNCH - SOZIALEN MEDIEN - 2018

Anonim

Angenommen, Sie erstellen eine iOS-App.

Ihre iOS-App hat viele kleine Animationen und Sie (oder Ihre Designer) möchten genau das richtige Timing für diese Animationen erhalten. Sollte dieser ausgefallene Schubladeneffekt eine halbe oder dreiviertel Sekunde dauern?

Normalerweise würde ein Entwickler das richtige Timing schätzen, seine App kompilieren, testen, ändern, neu kompilieren, spülen, schäumen, wiederholen. Da komplizierte Apps ziemlich lange brauchen, um zu kompilieren, beginnen diese kleinen Änderungen Ihre Zeit zu verschlingen. Du fängst an, den Fortschrittsbalken zu hassen.

Warum neu kompilieren für etwas so einfaches? Und wenn die Person, die das Timing perfektioniert, eher ein Designer als ein Programmierer ist? Sollten sie über die Quelle graben müssen, nur um die Animationsgeschwindigkeit zu ändern?

Es gibt natürlich alle Arten von Abkürzungen. Sie könnten beispielsweise die Variable der Animationsgeschwindigkeit mit einem Schieberegler auf dem Bildschirm verknüpfen, den jeder Benutzer, der eine Vorabversion Ihrer App ausführt, im Handumdrehen anpassen könnte - aber Sie müssten diesen Code manuell in und eingeben Denken Sie daran, es vor der Veröffentlichung herauszunehmen. Es ist eine völlig gültige Option - aber es ist nicht sehr standardisiert, und jede Sache, die Sie in der Lage sein möchten, im laufenden Betrieb zu ändern, bedeutet zusätzliche Codezeilen. Es könnte besser sein .

Facebook denkt, dass sie es besser gemacht haben.

Sie haben gerade eine Bibliothek mit dem Namen "Tweaks" herausgebracht, mit der Entwickler bestimmte Dinge - wie das Timing einer Animation oder die Farbe einer Schaltfläche oder die Transluzenz eines Bildes - leicht als etwas markieren können, das sich auf dem Bildschirm ändern kann. Fliege, sobald die App auf dem Gerät ausgeführt wird. Die Bibliothek fügt all diese veränderbaren Variablen in einen kleinen, versteckten Einstellungsbildschirm ein und bereinigt dann alles, wenn es Zeit ist, die App tatsächlich zu veröffentlichen.

Wie Facebook es ausdrückt:

Der beste Weg, um eine App zu verbessern, ist es jeden Tag zu verwenden. Auch wenn Ideen vorab getestet werden können - zum Beispiel mit Origami - kann es mit der App noch einige Zeit dauern, um zu sehen, wie es in der Praxis funktioniert.

Gelegentlich ist es beim ersten Versuch perfekt. Manchmal funktioniert die Idee überhaupt nicht. Aber oft braucht es nur ein paar kleine Anpassungen. In diesem letzten Fall passt Tweaks. Tweaks macht diese kleinen Anpassungen einfach: Ohne Codeänderungen und ohne Computer können Sie verschiedene Optionen ausprobieren und entscheiden, welche am besten funktionieren.

Wenn eine Anwendung im Debug-Modus kompiliert wird, erscheint beim Schütteln des Telefons ein Bildschirm, auf dem der Benutzer mit den Einstellungen blättern kann, die der Entwickler angegeben hat. Wenn es in den normalen "Release" -Modus kompiliert wird (wie wenn es für den App Store vorbereitet ist), wird der "Tweak" -Wert durch einen normalen, unveränderbaren Wert ersetzt, und dieser ausgeblendete Konfigurationsbildschirm verschwindet für immer. Es gibt sehr wenig zusätzlichen Code zum Hinzufügen und sehr wenig zu vergessen, zu entfernen.

Die einzige wirkliche Änderung, die ein Entwickler in seinem Code vornehmen müsste: Anstatt einen Wert fest zu codieren, setzen sie diesen Wert auf einen "Tweak". Im Code sprechen, statt:

CGFloat animationDuration = 0.5

Sie würden verwenden:

CGFloat animationDuration = FBTweakValue (@ "Kategorie", @ "Gruppe", @ "Dauer", 0.5);

Also, was ist der Punkt?

Für Entwickler bedeutet dies, dass Anwendungen schneller und mit weniger Code optimiert werden können. Als zusätzlichen Bonus können alle ihre Designer, die vielleicht nicht gerne Code schreiben, die besten Einstellungen herausfinden, ohne in die Quelle zu kommen oder das Entwickler-Team für eine Million neuer Builds zu nerven. Jeder gewinnt! Hurra!

Facebook hat Tweaks auf GitHub veröffentlicht (kostenlos unter einer ziemlich restriktiven BSD-Lizenz) genau hier.