티스토리 뷰

네트워크 통신 로직 분리

 

 

 

싱글톤패턴을 이용해 네트워크 통신 매니저를 따로 만듦.

 

위처럼 API별로 전부 매니저를 만들어줌.

 

이때 completionHandler를 이용해 통신이 끝난 이후에 데이터를 담을 수 있게함.

 

그리고 뷰컨트롤러에서는 아래의 함수를 실행하도록 함.

 

이때 뷰와 관련된 코드는 반드시 메인스레드에서 작성해야하기때문에 DispatchQueue.main.async내에서 실행시킴.

 

 

 

고차함수 이용

 

 

이전에는 데이터를 받아오면 반복문을 이용.

 

 

map을 이용해 아래처럼 간단하게 바꿈.

 

마지막에 completionHandler의 매개변수로 list를 넘겨주어 뷰컨트롤러의 코드에서 사용할 수 있게함.

 

 

map을 이용해 dictionary로 만들고 싶을때 아래와 같이 변수 하나를 만들어서 해결했음.

 

꼭 변수를 선언해야하는지 좀 더 찾아봐야할듯.

댓글
최근에 올라온 글
Total
Today
Yesterday