Übergang von der RESTKIT zu Pure Afnetworking 2.0
-
20-12-2019 - |
Frage
Ich habe den Restkit in den letzten zwei Jahren benutzt, aber kürzlich habe ich angefangen, über den Übergang von diesem Monolith-Framework nachzudenken, da es wirklich übertrieben ist.
Hier sind meine Profis zum Umzug:
- .
- Es besteht ein großes Bedürfnis, die NSURLSESSESSION für Hintergrundvorrichtungen zu verwenden, und die RESTKit hat nur einen experimentellen Zweig für den Übergang zum Afnetworking 2.0. Keine tatsächlichen Termine, wenn der Übergang abgeschlossen ist. (Hauptgrund)
- Nein Notwendigkeit von Coredata-Support in der Netzwerkbibliothek, da keine voll funktionsfähige Offline-Datenspeicherung erforderlich ist.
- mit Kopfschmerzen mit neuem Konzept von Reaktions- / Anforderungsdeskriptoren, da sie keine unterschiedlichen Parameter in Pfadmustern unterstützen (ex. Zugriffsparameter), und es gibt keine Möglichkeit, den Objektanforderungsvorgang in einer Zeile mit benutzerdefiniertem Deskriptor zu erstellen. Hier verliere ich die Funktionen des Objektmanagers als Fassade.
i. Der größte Verlust von Restkit für mich in Objektzuordnungsprozess. Könnten Sie Standalone-Bibliotheken empfehlen, die Sie verwenden, die sich als flexibel und stabil anzeigen?
iii. stellt jemand mit den gleichen Problemen?
Welche Lösungen haben Sie angewendet?
Vielleicht könnte jemand etwas
Lösung
i. In Übereinstimmung mit anderen, die kommentiert haben, afnetworking + mantle ist ein einfacher und effektiver Weg, um mit einer erholsamen API zu interagieren und zum Ersetzen des Objekt-Zuordnungsvorgangs von Restkit, den Sie vermissen.
ii. Um die Anforderungen Ihrer Caching-Unterstützung zu beantworten, hängt stark vom Kontext ab. Ich habe jedoch für meine jüngsten funktionalen Anforderungen gefunden, die ein View-Modell für einen bestimmten Controller-Bildschirm zwischenspeichern, und nur Caching-Referenzdaten, die von APIs zurückgegeben werden, ermöglicht es mir, die Anwendungslogik relativ einfach aufrechtzuerhalten, während der Benutzer die Kontinuität ergibt. Eine einfache Fehlerbenachrichtigung für Konnektivitätsprobleme kann mit einer Querschnittsart behandelt werden.
iii. Ein Gedanke auf der für diesen Aspekt relevanten Architektur besteht darin, sicherzustellen, dass die APIs die App abhängig von der App-Erfahrung ist. Dadurch kann sich Ihre App auf das Fokussieren, auf das es gut ist (ein sehr glattes User-Erlebnis) und bewegt die Logik in die APIs näher an API-Abhängigkeiten wie Daten. Dies hat einen weiteren Vorteil, um die Chatteriness der App zu reduzieren.