728x90

 

3월 10일 목요일 / 46일 차

 


 

Part 5 - CH 01

내 근처 편의점 찾기 앱 마무리

 

 

 

완성된 코드

 

 

CLLocationManager
 - 앱에 대한 위치 관련 이벤트 전달을 시작하거나 중지하는 데 사용하는 객체
 - 앱에 위치 서비스를 추가하려면 CLLocationManager을 사용해서 CLLocationManagerDelegate를 구현하고 앱에 필요한 위치 정보에 액세스 할 수 있는 권한을 부여할지 여부를 결정하게 됨
 - 사용자가 권한을 거부했을 때 오류처리를 할 수 있음
 - 앱에 필요한 승인 상태를 결정할 수 있음(항상 사용, 이번 한 번만 사용, 앱을 실행할 때만 사용)

 - 사용자의 현재 위치에서 크거나 작은 변화를 추적
 - 나침반에서 방향 변경 추적
 - 사용자 위치 기반 이벤트 생성
 - 근거리 데이터 통신기기(Bluetooth Beacon)와 통신

Unit Test(단위 테스트)
 - 의도한 대로 작동하는지 테스트하는 것
 - 연속되어야 하는 동작이 수행되는지 검증

XCTest
 - xcode 프로젝트에 대한 단위 테스트, 성능 테스트, UI 테스트를 만들고 실행할 수 있는 프레임워크

XCTestCase
 - 테스트 케이스, 테스트 방법, 성능 테스트 등을 정의하기 위한 기본 클래스
    - setUp: 테스트 케이스가 시작되기 전에 초기 상태를 사용자 정의할 수 있게 기회를 제공
    - tearDown: 테스트 케이스 종료 후에 정리를 할 수 있게 기회를 제공함

Nimble(오픈소스 프레임워크임)
 - 읽기 쉬운 Test Assertion 표현(직관적임)
 - 간편한 비동기 테스트 작성

RxTest
 - Observable에 시간 개념을 주입
 - 임의의 Observer를 통해 subscribe 여부 관계없이 검증 가능

(둘의 차이는 구독의 차이)
HotObservable: 구독의 여부와 관계없이 이벤트가 발생
ColdObservable: 구독이 시작되어야만 이벤트가 발생함

RxBlocking
 - Observablr의 Event 방출을 검증
 - 특정 시간 동안 방출된 Observable Event 검증

 

 


 

 

완성된 앱

 

 

복습할 내용

 

- Model 테스트

 

 

 

 

오늘의 공부 후기

 

오늘은 지난 시간 만들었던 내 근처 편의점 찾기 앱을 마무리했습니다.

진행하던 도중 버전 문제가 생겨서 다 만들고 실행이 제대로 되지 않는 문제가 생겼었습니다.

 

코드는 똑같으나 오류가 계속 떠서 구글링 해보니 버전 관련 문제였습니다.

여차저차 만져보다가 우연히 해결되어 정상적으로 잘 작동했습니다.

 

또한 지난 시간 배웠었던 Model 테스트하기도 헷갈리는 부분이 있어서 

들으며 지난 시간 배웠던 부분을 다시 한번 상기시키는 계기가 되었습니다.

 

 

 

 

 

 

 

 

 

https://bit.ly/37BpXi

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

 

 

 

728x90

+ Recent posts