아키텍처 유형 질문이 있습니다. 나는 타임 엔트리 아이폰 앱을 만들고있다. 나는 데이터를 입력하기위한 탭 하나와 주별 및 월별 요약 데이터를 보여주는 또 다른 탭이있다. 웹 배경에서 왔기 때문에 데이터가 필요할 때마다 서버에 다시 요청하는 경향이 있습니다. 아이폰에 익숙하지 않다면 요약 탭을 클릭 할 때마다 (viewWillAppear를 통해) 요약 데이터를 요청하는 것이 좋은지 잘 모르겠다. 요약 데이터는 JSON이므로 상당히 가볍습니다. 요약 데이터는 정적이 아니며 사용자가 데이터를 입력 할 때 변경됩니다. 그렇다면 데이터를 검색해야 할 때 가장 좋은 방법은 무엇입니까? 데이터를 검색 할 때를 알 수있는 더 좋은 방법이 있습니까?요약 페이지의 json 데이터를 가져 오기위한 iphone 모범 사례
0
A
답변
3
나는 좋은 생각이라고 생각하지 않습니다. 적어도 네트워크에 연결되어 있지 않아도 사용자가 항목에 액세스 할 수 있도록 데이터를 캐시해야합니다.
데이터 구조를 핵심 데이터 모델로 미러링하고 적절한 시간에 서버를 호출하여 업데이트 할 수 있습니다. 서버 측을 구현하는 경우 서버가 변경되거나 아직 다운로드되지 않은 항목 만 보낼 수 있도록 요청을 모델링합니다.
편집 : 좋은 이유없이 데이터가 가벼운 경우에도, 당신은 지속적으로 생산하고 교통 :
이 더 설명하기. 어떤 사람들은 트래픽이 아닌 시간별로 트래픽을 측정하는 앱을 사용하며, 앱을 사용할 때마다 문자 그대로 지불합니다.
0
아직 읽어 보지 않은 경우 ASIHTTPRequest 프레임 워크를 확인하십시오. 대기열 요청을 지원합니다 (NSOperationQueue
또는 ASINetworkQueue
). 일부 요청을 대기열에 넣은 다음 NSTimer
콜백에서 [queue go]
과 같이 호출 할 수 있습니다.
네트워크가 활성화되었을 때 (네트워크 표시기) 반영하는 방식으로 UI를 구현하고 새 json 데이터를 사용할 수있을 때 UI 요소를 비동기 적으로 업데이트하십시오.
또한 캐시를 사용하여 토스터 (약 ASIDownloadCache
등에 대해 읽음)을 사용해보십시오.
관련 문제
- 1. 자바 JSON 직렬화 - 모범 사례
- 2. AJAX 호출에서 데이터를 반환하고 표시하는 모범 사례
- 3. 대기열에 데이터를 추가하는 모범 사례
- 4. iPhone 데이터 모범 사례 - 캐싱 대 원격
- 5. API SDK에 대한 JSON 데이터를 처리하는 모범 사례
- 6. iPhone 성능 최적화 모범 사례
- 7. iPhone 레이어 관리 - 모범 사례
- 8. iPhone + 웹 서비스 모범 사례
- 9. MVC에서 요약 바닥 글 (및 유사)에 대한 모범 사례
- 10. 데이터 읽기를위한 sqlite iphone 모범 사례
- 11. 모범 사례?
- 12. 데이터 저장을위한 모범 사례 iPhone Apps
- 13. iPhone 앱 : 정적 데이터를 저장/검색하는 모범 사례
- 14. 웹 서버에서 데이터를 가져 오기위한 제안 사항?
- 15. Rails 3에서 데이터를 가져 오기위한 조인의 범위
- 16. 여러 공급자로부터 데이터를 가져 오기위한 DB 디자인?
- 17. 새로운보기 컨트롤러 (iPhone)를 표시하기위한 모범 사례
- 18. iPhone SDK의 View-Routing 모범 사례
- 19. 안드로이드 네트워킹 - 모범 사례
- 20. 안전한 API의 모범 사례?
- 21. 웹 페이지의 "요약"얻기
- 22. CoreData 모범 사례
- 23. 선택한 조건을 충족하는 데이터를 검색하는 모범 사례
- 24. asp.net-mvc에서 javascript로 데이터를 전달하는 모범 사례
- 25. 연속/소형 UDP 데이터를 암호화하는 모범 사례
- 26. 백본보기 템플릿에서 데이터를 렌더링하는 모범 사례
- 27. 수백 개의 필드에서 데이터를 저장하는 모범 사례
- 28. 미리 설치된 데이터를 포함한 모범 사례?
- 29. 익명 사용자의 데이터를 관리하는 모범 사례
- 30. Ruby에서 바이너리 데이터를 처리하는 모범 사례?
모바일 데이터 연결을 사용하는 경우 대기 시간이 가장 큰 비용 일 수 있으므로 반환되는 패킷이 작다는 사실은 실제로별로 이점이 아닙니다. 그래서, 예, 적어도 로컬 캐시가 최선의 방법이라고 Toastor는 동의합니다. 피드백에 대해 – Tommy
주셔서 감사합니다. 이것은 저에게 많은 것을 생각하게 해줍니다. –
이것을 생각한 후에 "요약"JSON 데이터 결과를 파일에 저장 한 다음 데이터가 변경 될 때마다 "요약"파일을 다시 작성하는 것이 적절합니까? 시간이 제출 될 때마다 요약 데이터를 가져 오는 비동기 호출을 가질 수 있습니다. 요약 탭을 클릭하면 요약 파일의 내용이로드됩니다. 그렇지 않으면 요약 파일을 가져 와서 요약 파일을 만듭니다. –