728x90
2월 6일 일요일 / 14일 차
CH08
코로나 현황판 앱 만들기
내용 요약 |
기능 상세 - 시도별 신규 확진자 수가 파이 차트로 표시되어야 한다 - 도시 항목을 선택하면 상세 현황을 볼 수 있는 화면으로 이동되어야 한다 활용 기술 - 굿바이 코로나 19 API - Alamofire - Cocoapods Alamofire : Swift 기반의 HTTP 네트워킹 라이브러리 - 연결 가능한 리퀘스트 리스폰스 메서드를 제공 - URL JSON 형태의 파라미터 인코딩을 지원 - 파일 데이터 스트링, 멀티 파트 폼 데이터 등 업로드 기능을 제공 - HTTP 리스폰스 검증과 광범위한 단위 테스트 및 통합 테스트를 보장 URLSession 대신 Alamofire을 사용하는 이유 - 코드의 간소화, 가독성 측면에서 도움을 주고 여러 기능을 직접 구축하지 않아도 쉽게 사용할 수 있음 Escaping Closer : 클로저가 함수의 인자로 전달됐을 때, 함수의 실행이 종료된 후 실행되는 클로저 1. 클로저가 fetchData() 함수의 completion 인자로 전달됨 2. 클로저 completion이 completionhandler 변수에 저장됨 3. fetchData() 함수가 값을 반환하고 종료됨 4. 클로저 completion은 아직 실행되지 않음 Escaping Closer를 사용한 이유 서버에서 비동기로 데이터를 응답받기 전 즉, response data 메서드 파라미터에 정의한 completionHandler closer가 호출되기 전에 함수가 종료되서 서버의 응답을 받아도 completionHandler가 호출되지 않기 때문에 함수 내에서 비동기 작업을 하고 비동기 작업의 결과를 completionHandler로 callback을 시켜줘야한다면 Escaping Closer을 사용하여 함수가 반환된 이후에도 실행되게 해주는 것 |
복습할 내용
- cocoapod, Alamofire에 대해
- 외부 라이브러리 사용법
- Escaping closer
오늘의 공부 후기
코로나 현황판 앱을 API와 외부 라이브러리를 통해 구현해봤습니다.
초기 셋팅시에 맥북 m1 환경차이로 인한 문제가 생겨 강의와는 달리 프로그램이 설치되지 않는 문제가 생겼는데
구글링을 통해서 해결하고 강의를 시작했습니다.
cocoapods과 Alamofire, Chart를 통해 앱을 구현하니
이전에 만들었던 날씨 앱에서 사용한 URLSession보다 간편하게 구현할 수 있었으며,
URLSession과 Alamofire의 명확한 차이점을 알게 되어 유익한 강좌였습니다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
728x90