2012-12-13 12 views
20

W mojej aplikacji na system iOS próbuję pobrać i opublikować dane z serwera (RESTful). Myślę, że zarówno RestKit, jak i AFIncrementalStore są dobrymi kandydatami. Muszę też mieć możliwość zapisywania danych w trybie offline i przesyłania ich na serwer, gdy aplikacja jest online.Różnice między modułem RestKit i AFIncrementalStore

Próbuję zrozumieć, który jest lepszy ramy do użycia dla aplikacji.

Z niektórych z , wydaje się, że za pomocą błędów w AFIncrementalStore może potencjalnie zablokować obsługę wątku ManagedContext (zazwyczaj mainThread) podczas dostarczania żądania sieci, aby uzyskać właściwość. Czy to wielka sprawa?

PS: Dodanie afnetworking tag od afincrementalstore tagu nie jest dostępny

Odpowiedz

28

AFIncrementalStore pracuje w podstawowych danych, wysyłanie z powrotem do swojego serwisu internetowego. Używa stosunkowo nowego API Apple zapewnia NSIncrementalStore.

RestKit działa spoza Core Data, wiążąc żądania HTTP z Core Data luźno, korzystając z architektury odwzorowania obiektów, którą zapewnia RK.

Oto kilka zalet & minusy dla obu:

  • New RestKit wersja (0.2.x) jest ligther niż wersja 0.1
  • RestKit teraz korzystać z naprawdę dobrą AFNetworking do wszelkiego dzieła swego żądania HTTP, podobnie jak AFIncrementalStore.
  • Reskit ma dużo pokrycia testowego
  • AFIS jest naprawdę lekki ponieważ jest zbudowany na NSIncrementalStore
  • AFIS daje nieco większą elastyczność, ponieważ jesteś prawie na własnym
  • RestKit jest dość ogromny i może być przerażające na pierwszy
  • RestKit jest kompletnym rozwiązaniem, ale potrzeba czasu, aby w pełni owinąć głowę wokół wszystkich swoich koncepcjach

Moje ostatnie zalecenie byłoby poświęcić czas i spróbować obu. Mogę potwierdzić, że będziesz musiał opuścić nieco więcej linii kodu za pomocą AFIS, ponieważ nie zabiera ci to aż tak dużo, jak RestKit, więc to naprawdę kwestia preferencji.

Mam nadzieję, że pomoże ci to w dokonaniu właściwego wyboru!

+0

Dzięki za podzielenie się swoim punktem widzenia. Zacznę próbować z RestKitem (ponieważ przewaga, jaką przynosi AFIncrementalStore, jest wadą właściwości, która nie jest teraz w moim priorytecie najważniejsza). – Devang

Powiązane problemy