본문 바로가기
728x90

iOS4

MVVM패턴 MVVM패턴은 Model-View-View Model의 약자로 이뤄진 디자인 패턴이다. MVVM패턴의 핵심은 명령어의 흐름이 단방향이라는 것이다. 명령어는 View → ViewModel → Model 방향으로만 전달이 되며, 이 외의 방향으로 전달된다면 그것은 MVVM패턴을 제대로 구현하지 않은 것이다. 이 말은 MVVM패턴의 데이터의 흐름은 명령어 흐름의 반대인 Model → ViewModel → View 방향인 것이다. Model 그저 데이터의 구조만 있으면 된다. 비즈니스 로직은 API통신이 있어서는 안된다. (모델 그 자체로서만 존재해야한다.) View UI에 대해서만 있어야한다. UI를 그리는 일과 사용자의 입력을 받아내는 곳이다. ViewModel UIKit 또는 SwiftUI를 import .. 2022. 11. 11.
웹뷰 구현하기(WebView) - UIKit WebView란? 프레임워크에 내장된 웹 브라우저 컴포넌트로 뷰(View)의 형태로 앱에 임베딩하는 것을 말한다. 쉽게 말해서, App에서 웹브라우저를 이용해 화면을 보여주는 방식을 뜻한다. 웹뷰의 구현방식 3가지 (기존의 UIWebView는 ios2.0에 출시 되었기 때문에 성능적인 측면에서 너무 부족하다. 그렇기 때문에 사용하지 않는 것을 추천한다.) 1. WKWebView ios 8.0에 출시 되어 현재 가장많이 사용되고 있는 방식이다. 가장 큰 장점은 웹페이지에서 할당하는 메모리는 앱과 별도의 스레드에서 관리하는 것이다. 즉, 웹페이지의 메모리가 아무리 크더라도 앱에는 영향이 없다는 뜻이다. 2. SFSafariView ios 9.0에 출시되었고 safari를 이용하는 웹뷰이다. WkWebview.. 2022. 11. 6.
Lottie(애니메이션 라이브러리) Airbnb에서 제공해주는 라이브러리로 스플래시 화면을 만들 때 매우 유용하다. https://github.com/airbnb/lottie-ios GitHub - airbnb/lottie-ios: An iOS library to natively render After Effects vector animations An iOS library to natively render After Effects vector animations - GitHub - airbnb/lottie-ios: An iOS library to natively render After Effects vector animations github.com 이 라이브러리를 다운받고(선호방식은 SPM) https://lottiefiles.com/.. 2022. 10. 31.
델리게이트 패턴(Delegate_Pattern) 시작전에 프로토콜이 무엇인가? 프로토콜 지향프로그래밍이 무엇인가? 스스로에게 질문을 해보고 만약, 잘 모르겠다면 델리게이트패턴 전에 프로토콜에 대해 더 공부해야한다는 것을 잊지 말아야한다. 프로토콜지향 프로그래밍에 대해서 적은 글인데 생각이 안나면 이 글부터 다시 읽고 오자! https://i-yongil.tistory.com/7 델리게이트 패턴이란? 이벤트처리의 방법중 하나이며 iOS앱개발에서 기본적인, 가장 중요한 패턴이라고 할 수 있다. 애플이 제공하는 프레임워크를 제대로 활용하려면 정확히 알고 있는 것이 좋다. - (모조리 외운다고 해도 전혀 아깝지 않은 개념이다.) 한마디로 설명하자면, 하나의 객체가 다른 객체의 기능을 대신처리(== 위임) 한다는 개념이다. 물론, 델리게이트 패턴을 쓰지 않고(.. 2022. 10. 27.
728x90