-
210801 - TILTIL/2021 2021. 8. 2. 00:29
UIAlertAction handler와 present(_:animated:completion:)의 handler
코드를 리팩터링 하는 과정에서 기존에 만들어둔 alert을 수정하려고 했는데 completion이 두 곳에 있길래 무슨 차이일까 궁금해서 알아봤다.
UIAlertAction의 핸들러는 유저가 action을 선택하면 실행되는 방식이다.
block to execute when the user selects the action. This block has no return value and takes the selected action object as its only parameter.
present(_:animated:completion:) 메서드의 핸들러는 view가 나타나고 viewDidAppear(_:)가 호출된 다음에 호출된다.
The completion handler is called after the viewDidAppear(_:) method is called on the presented view controller.
내가 원하는 기능은 유저가 선택을 하면 기능을 하는 것을 원했으므로 UIAlertAction의 completion에 구현을 하면 됐다.
UnitTest에서 collectionView가 원하는 데이터를 표현하지 않는 문제
Custom Calendar Test에서 2021년 7월 달력을 만들고 이 달력으로 Testcase를 만들었는데 8월로 넘어오니 테스트 캘린더가 8월로 넘어갔다. 분명 날짜를 2021년 07월 10으로 전달해 7월 달력을 만들었는데 현재 날짜가 전달돼서 뭐가 문제인지 한참 헤맸다....
문제는 test에서 날짜를 7월로 전달후 viewDidLoad()를 호출하지 않아서 test에서 7월 달력이 만들어지지 않고 현재 달의 달력이 만들어진 것이었다.
UIViewController를 테스트할 땐 꼭 viewDidLoad()를 호출해주자
Command CompileSwift failed with a nonzero exit code 에러
이전에도 발생한 적이 있었는데 그때는 Clean Build Folder와 Clean Test Results를 하고 Derived data를 삭제하고 재실행하니 해결이 됐었는데 이번에는 계속해서 에러가 났다.
알고 보니 이전에 만들어둔 Test class가 동일한 이름으로 있었는 데 그걸 모르고 똑같은 이름으로 하나 더 생성해서 생긴 문제였다.
Page 기능 구현
어려운 기능은 아니지만 page 기능을 구현했다.
예전에 한 번 공부한 적이 있었는데 사용할 일이 없어서 까먹고 있다가 프로젝트 진행에 필요해서 다시 공부했다.
운영체제(Operating System)
- 운영체제의 역할
- Shell과 Sysyem call
- 운영체제의 구조
- 프로세스와 스케쥴링
- 프로세스의 구조
- 스케쥴링의 종류
- 인터럽트의 정의, 종류
운영체제에 대해서 공부를 했다.
운영체제가 어떠한 일을 하고 간단하게 어떻게 동작하는지에 대해서 공부를 했다.
728x90'TIL > 2021' 카테고리의 다른 글
210802 - TIL (0) 2021.08.03 21년 7월 2주차 회고 (0) 2021.07.12 210630 - TIL (1) 2021.07.01 210629 - TIL (0) 2021.06.29 210628 - TIL (0) 2021.06.28