IOS/UIKit 3

[iOS] MVVM에 대한 고찰

안녕하세요! 미니입니다. 프로젝트를 하면서 MVVM에 대해서 고민했던 부분들을 정리해보려고 합니다. 저도 학습을 하고, 생각을 정리하는 글이다 보니 틀린 부분이 있을 수 있습니다. ㅜㅜ (댓글 달아주시면 발전하겠습니다!!) 왜 MVVM 써야 하는뎅..? 전통적으로 Apple에서 정의한 MVC를 Massive View Controller라고 놀리곤합니다. 근데, 저는 Massive하다는 것이 어느정도 커져야지 그런 거지?라는 생각과 함께 좀 고민을 해야 할 표현이라고 생각했습니다. 실제 개발을 하면서 ViewController가 커지는 경우가 있기는 한데, MVVM으로 변경하는 적절한 이유라고는 생각하지 못했습니다. 이런 이유들보다는 View와 비즈니스 로직을 분리하고 객체들에게 명확한 책임을 주게 하기 ..

IOS/UIKit 2023.09.12

[iOS] 상단 탭바 구성하기

안녕하세요! 미니입니다. 오늘은 UI와 관련되서 글을 작성해보려고 합니다. 프로젝트를 진행하면서 상단에 탭바와 같은 UI를 구성하면서 고민한 점들과 구성 방법에 대해서 공유해보려고 합니다. 오늘 구성할 화면이며, 상단에는 하단 탭바처럼 버튼을 누를때마다 화면이 전환되도록 구성됩니다. 1. 탭 구성하기 우선, 처음으로 상단에 표시할 텍스트와 화면에 대해서 정의할 수 있는 타입을 구성할 겁니다. 또한, 화면의 구성을 일반화하기 위해서 protocol을 선언해서 구성하였습니다. 2. 상단 탭바 구성하기 그 후, 상단 커스텀한 상단 탭바를 구성합니다. 상단 탭바는 StackView를 상속하고 있으며, TabItem 을 채택하고 있는 타입들의 배열을 받을 수 있도록 구성합니다. 그리고, 상단 탭바의 화면을 구성해..

IOS/UIKit 2023.09.11

이미지 캐싱 라이브러리 비교

이미지 라이브러리 비교 분석 안녕하세요! 미니입니다. 오랜만에 글을 작성하게 되었네요 ㅜㅜ 오늘은 프로젝트를 수행하면서 비교하게 된 iOS 이미지 캐싱 라이브러리들에 대해서 비교해보려고 합니다. 비교를 하기전에 Cache라는 것이 무엇이고, 왜 쓰는지에 대해서 고민을 해 볼 필요가 있습니다. Cache 캐시 : 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간없이 더 빠른 속도로 데이터에 접근할 수 있다. 출처 : 위키 백과 (https://ko.wikipedia.org/wiki/캐시) 위에 있는 정의는 ..

IOS/UIKit 2023.09.07