:아이폰 OS - API 객체와 컨트롤러 사이의 통신 내가이 일에 대해 궁금
1 무슨 API와 통신 객체와 viewcontrollers
사이의 통신을 설계 할 수있는 효율적이고 쉬운 스케일 방법2 방법 (확장 성하는 방법을 설계하는 방법, ..) 통신하는 개체 자체를 디자인하는
(내 방식 아래 언급이 지저분하다, 나도 알아,하지만 마감이 미쳤다 지금까지 난 정말 그것에 대해 생각할 시간이 없었다)
은 제가 처리 된 작업을 소개하자.
내가 2-3 API와 통신에 따라 앱은 써야했다입니다. API가 응답 한 약 10-15 가지 방법이있었습니다 (HTTP POST를 통해 전송, JSON 결과). 물론 통신은 비동기 적이어야했습니다.
내 방식 : 그래서 API (짧은 apiComm)와 communicationg 객체가 모든 UIViewControllers에 의해 공유 된
. apiComm은 API가 처리 할 수있는 각각의 메소드가 10-15 개였습니다. 개별 요청 콘텐츠와 큰 변화가 있었다 .. API의 apiComm 받았다 데이터, 그것은 [NSNotificationCenter defaultCenter]에 통지를 게시 = "질문 2
. 즉, apiComm을 사용하고자하는 모든 UIViewController는 알림을 위해 self를 등록하고 수신 통지를 처리하는 메소드를 구현해야했습니다. 일부 UIViewController에 더 많은 API 요청을 처리했다으로이 방법은 불쾌한 성장 ... =>질문 1는
나는이 문제를 desining 할 때 사용하는 보편적 인 패턴이 있는지 알고 싶습니다.. 에게 나는 것 이 문제의 모든 부분에 대한 의견을 보내 주시면 감사하겠습니다.
나를 위해
웹 서비스를 처리하기위한 멋진 구조를 만들려면이 블로그 게시물을 확인하십시오. 나는 지금 두 개의 큰 프로젝트에서 그것을 사용했고 ** ** 매우 좋았습니다 : http://commandshift.co.uk/blog/2014/01/02/nice-web-services/ – liamnichols
" 알림 방법 "- 이것은 매우 일반적인 iOS 프로그래밍 결정입니다 - 다양한 방법이 있습니다! 종종 KVO는 훌륭하게 작동합니다. 종종 통지 센터. 가장 가능성있는 것은 상태 머신입니다. 앱에 이미 "주"싱글 톤이 있습니다. 하나의 호출 인 [STATE newFeedDataIsReady]를 호출하면됩니다. 그런 다음 IN 상태에서 앱을 기반으로 할 일을 결정할 수 있습니다.당신이 KVO를 시도하지 않았다면, 그것으로 실험 해보십시오. – Fattie
예. 감사합니다, @liamnichols - 아주 좋은 블로그 게시물 및 프로젝트. – pothf