예전에 진행됐던 프로젝트를 다시 살리던 중, 빌드가 굉장히 오래걸리며 (빌드하는데만 3~40분 소요된거 같다..) 결국 에러가나서 하루를 꼬빡 날렸던 적이 있다.. (내 맥북 배터리만 엄청나게 녹아내렸다😭) The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions swiftUI로 작성된 프로젝트에서 해당 오류가 발생한다... 구글에 검색하면 보통 "타입추론 오류"이며, 너무 과한 타입추론을 중간에 한번 나눠줌에따라 해결하라는 글이 대다수이다. 근데, 난 그렇게 해결할 수가 없었다 import SwiftUI struct Tes..
오늘은..! 많이들 시도하고 싶지만, 시도하기 어려워하는 하지만 매우매우 좋은!! TDD(Test-driven development)에 대해 정리해보려고 합니다! 🧪 테스트 주도 개발(Unit Test First) Test-driven development 즉, 테스트가 개발을 주도해간다! 말 뜻 그대로, 매우 짧은 테스트 개발 사이클을 반복하는 소프트웨어 개발 프로세스를 의미합니다! ☝🏻 테스트 진행 과정 이 방법을 고안해낸 Kent Baeck은 TDD가 단순한 설계를 장려하고, 자신감을 불어넣어준다고 말했습니다. 동작하는 깨끗한 코드를 만들 수 있기 때문이라지요! 진행 싸이클 실패하는 경우의 테스트를 작성합니다. 단순히, 테스트가 통과할 수 있도록 만듭니다. 순수하게 코드를 정갈하게 변경합니다. 테스..
Understanding Auto Layout 공식문서에서 말하는 오토레이아웃🔲이란, constraints(뷰에 주는 제약? 뷰에주는 명령? 뷰에 주는 조건?)를 기반으로 뷰의 크기와 위치를 동적으로 계산해주는 것이라고 합니다! 기존에는 frame을 이용하여 view의 절대적인 길이를 조절했었는데요, 아이폰 기기가 다양해지면서 오토레이아웃을 이용하여 상대적인 위치값을 찾아서 스스로 배치시키도록 만들어 준 것이죠🎯 Anatomy of a Constraint Attributes Attributes는 오토레이아웃을 위해, constraints를 계산하기 위해 사용되는 요소를 말해요! 이는, size attributes(Height, Width)와 location attributes(Leading, Left, ..