개인과제를 진행중이다. 어제 글에 썼듯이 테이블뷰에 사용자 입력 데이터가 저장되지 않는 문제를 어떻게 해결하면 좋을지 감이 오지 않는다.
해설영상을 세번이나 돌려보며 따라 작성한 코드에 잘못된 곳은 없나를 찾는데 무엇이 문제인지 알 수가 없다.
조원분들께 코드리뷰를 부탁드려봤지만 내가 스스로 작성한 코드가 아니어서 어떤 식으로 짜여졌는지 설명을 못하기에 이해할 수 있는데 한계가 있어 결국 다시 스스로 해결해야하는 원점으로 돌아왔다.
한 조원분께서 왜 그런 버그가 생겼는지 알 것 같다 하셔서 시간이 되실 때 설명을 부탁드렸다. 그 설명을 듣고 진전이 있었으면 좋겠다.
결국 입문 강의와 해설영상을 맡으신 튜터님께 직접 질문을 드렸다.
원인은 너무나 어이없게도 컴포넌트들이 제대로 연결되어 있지 않았고, 뷰와 뷰 컨트롤러의 1:1 매칭이 적절히 이루어져있지 않았던 것!! 🤦♀️🤦♀️🤦♀️
컴파일 에러를 따라 원인을 찾고 그것들을 차례대로 하나둘씩 처리하니 오류가 해결되었다. 👀
급체가 내려가듯 체증이 쑥 가셨다.
이번에는 초보자의 입장에서 원인을 못찾았을 수도 있다고 생각하지만 너무 사소하고 어이없는 실수였으므로 다음에는 해결해야겠단 다급한 마음에 꼼꼼히 살피지 않는 우를 범하지 말자.
빠뜨린 것은 없는지 작성한 코드를 다시 한번 보고, 두번 보고, 세번 보자!!!
화,수,목 3일동안 하루에 미션 하나씩 수행할 예정이다.
주어진 미션은
우선 reduce 함수가 어떤 기능을 하는지부터 공부해봐야겠다. reduce 함수는 고차함수의 한종류이며
다른 함수를 전달인자로 받거나, 함수실행의 결과를 함수로 반환하는 함수를 뜻한다.
고차함수의 종류
ex) map, filter, reduce, forEach, compactMap, FlatMap 등이 있다.
정의한 클로저를 사용하여 기존 컨테이너의 요소를 결합한 결과를 반환한다.
func reduce<Result>(_ initialResult: Result, _ nextPartialResult: (Result, Element) throws -> Result) rethrows -> Result
파라미터(매개변수)
리턴타입