본문 바로가기

전체 글

(97)
[SwiftUI 기초] @Environment, Environment Values로 View의 계층적인 환경 관리하기 Environment values Share data throughout a view hierarchy using the enviroment. 스위프트UI의 View들은 Environment 프로퍼티 래퍼를 통해서 환경으로부터 읽은 confiugration 정보에 반응하여 스스로의 UI를 구성할 수 있다. 이러한 environement 정보는 Container로부터 계층적으로 내려가서 하위 View들에게 전해진다. 따라서 Envrionment values를 이용하면 전체적인 뷰 계층의 환경을 조정할 수 있다. @Environment A property wrapper that reads a value from a view’s environment @frozen @propertyWrapper struct E..
[SwiftUI 기초] SwiftUI 맛보기 목표 Xcode Canavas를 이용해서 코드와 UI를 동시에 보며 작업하는 방법 알아보기 재사용 가능한 뷰 만드는 방법 알아보기 @State 키워드에 대해 알아보기 Alert 띄우기 내용 1. App Protocol을 따르는 struct를 정의하여 App을 시작할 수 있다. @main struct RGBullsEyeApp: App { var body: some Scene { WindowGroup { ContentView(guess: RGB()) } } } App Protocol의 기본적인 구조는 아래와 같다. 연관 타입으로 Scene을 정의해주고, body를 구현하면 된다. @SceneBuilder와 같은 어트리뷰트는 추후에 공부해보자. 위의 코드를 보면 WindowGroup을 통해 시작할 Window..
[If kakao 후기] 카카오뱅크 iOS 프로젝트의 모듈화 여정: Tuist를 활용한 모듈 아키텍처 설계 사례 본문 내용은 모두 if kakao에서 진행된 세션을 바탕으로 정리되었고, 사진 자료 또한 발표 자료에서 가져왔음을 밝힙니다. https://if.kakao.com/2022/session/88 아키텍쳐 알아보기 1. MVVM의 데이터 바인딩을 이용하여 모델과 UI 간의 동기화 - > 비대해지는 viewModel - > Routing이 정형화되어 있지 않음 2. 2019년에 MVVM => RIBs로 전환함 RIBS는 템플릿을 제공하여 일관성 있는 코딩을 하게 해주고, 프로토콜 지향 프로그래밍으로 테스트 코드가 가능하다. 응집도 높은 코드와 Routing 기능이 된다. 단점은 기능 단위로 많은 파일이 생성된다는 점이 있다. 모듈화의 필요성 2020년 8월 31일 기준 11,000개 파일에 104만줄의 코드가 ..