분류 전체보기
-
Create custom visual effects (feat. WWDC 2024)SwiftUI 2024. 7. 22. 18:30
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI에서 커스텀한 시각 효과를 만드는 방법에 대해 학습해보겠습니다 🙋🏻 WWDC 2024에서 SwiftUI로 custom visual effect를 만드는 방법에 대해 더 진보적이게 발전시켜 소개하고 있기에 한번 알아보려고 가져와봤어요 😃 이전 포스팅인 What's new in SwiftUI (feat. WWDC 2024)에서 마지막쯤에 해당 비주얼 이펙트에 대해 간단히 소개하고 넘어갔는데, 이번에 더 자세히 알아보게 되었습니다ㅎㅎ What's new in SwiftUI (feat. WWDC 2024)안녕하세요. 그린입니다 🍏이번 포스팅부터는 조금씩 미뤄왔던 WWDC 2024 세션들을 다시 살펴보면서 관심있는 주제들에 대해 리캡을 해볼까 합니다..
-
UIScrollView의 contentInsetAdjustmentBehavioriOS 2024. 7. 18. 08:15
안녕하세요. 그린입니다 🍏이번 포스팅에서는 UIScrollView의 contentInsetAdjustmentBehavior에 대해 알아보고 적용해보려 합니다 🙋🏻 contentInsetAdjustmentBehavior?우선 UIKit 프레임워크에서 제공하는 UIScrollView의 인스턴스 속성인 contentInsetAdjustmentBehavior를 공식문서를 살펴보면 조정된 컨텐츠 오프셋을 결정하기 위한 동작이라고 소개하고 있어요 🤔 조정된 컨텐츠 오프셋?? 이게 대체 뭔말일까요 🤔 해당 인스턴스 속성은 UIScrollView의 get set 프로퍼티로 아래와 같이 정의되어 있습니다. var contentInsetAdjustmentBehavior: UIScrollView.ContentIns..
-
SwiftUI - ViewThatFitsSwiftUI 2024. 7. 15. 18:20
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 ViewThatFits 컴포넌트에 대해 알아보겠습니다 🙋🏻 오랜만에 정말 가볍게 요런것도 활용해볼 수 있구나 하는 주제이니 편하게 같이 훑어보시죠 😃 ViewThatFits해당 컴포넌트는 SwiftUI에서 하위 자식 뷰들중에서 현재 사용 가능한 공간에 제일 적합한 뷰를 선택해 화면에 렌더링해주는 뷰 컴포넌트입니다.즉, 해당 뷰 컴포넌트는 대게 다양한 화면 사이즈나 레이아웃에서 유연하게 뷰를 선택해서 표시할때 이용됩니다.iOS 16.0 이상이라면 모두 적용할 수 있어요! 선언을 볼까요? @MainActor @frozen @preconcurrencystruct ViewThatFits where Content : View 이렇게 일반적인 다른 ..
-
Demystify SwiftUI containers (feat. WWDC 2024)SwiftUI 2024. 7. 11. 19:00
안녕하세요. 그린입니다 🍏이번 포스팅에서는 WWDC 2024에서 말아주는 Demystify SwiftUI containers 세션에 대해 같이 볼까 합니다 🙋🏻 세션 타이틀부터 느껴지는게 SwiftUI 컨테이너 뷰에 대해 알아보면서 어떻게 뷰들이 컨테이너에 의해 관리되는지 우리에게 설명해줄것 같아요 😃 그럼 바로 들어가볼까요? 🏃🏻 Demystify SwiftUI containersSwiftUI는 API에서 리스트 컨테이너와 같이 모든 기능을 갖춘 다양한 종류의 컨테이너를 제공합니다. 이렇게 컨테이너 뷰는 컨텐츠를 래핑하기 위해서 후행 뷰 빌더 클로즈를 사용합니다.뷰 빌더를 사용하면 하드 코딩된 텍스트 뷰들의 리스트처럼 콘텐츠를 정적으로 정의할 수 있죠! 또한, ForEach를 이용하여 동적..
-
What's new in SwiftUI (feat. WWDC 2024)SwiftUI 2024. 7. 8. 18:12
안녕하세요. 그린입니다 🍏이번 포스팅부터는 조금씩 미뤄왔던 WWDC 2024 세션들을 다시 살펴보면서 관심있는 주제들에 대해 리캡을 해볼까 합니다 😃그 중에서 첫번째로 리캡해볼것은 SwiftUI입니다 🙋🏻이번 WWDC 2024에서 SwiftUI의 새로운것들은 어떤것들이 나왔는지 한번 살펴보겠습니다! 물론, 여기서는 딥하게 들어가는 느낌이 아닌 전반적으로 어떤것들이 생겨났는지 톺아보는것이고 그에 대해 더 딥한 주제들은 별도 세션으로 또 마련되어 있습니다. 즉, 저도 한번 간단히 톺아본 후 이후 포스팅들에서 하나씩 생겨난것들에 대해 딥한 세션을 정리해볼까해요 ☺️ 그럼 함축된것으로 알아보시죠 👀 What's new in SwiftUIFresh apps이제 SwiftUI를 통해 새로운 탭 뷰 그리고 ..
-
What's new in Tuist v4Tuist 2024. 7. 4. 18:45
안녕하세요. 그린입니다 🍏이번 포스팅은 Tuist v4로 오면서 기존 v3에서 어떤것들이 변경되었는지 한번 공식문서를 통해 살펴보려 합니다 🙋🏻 Tuist v4로 넘어오면서 몇가지 변경사항들이 생겨났고 이를 통해 프로젝트를 더 편하게 관리하고 유지하기 쉬워졌습니다. 어떤것들이 변경되었는지 주요 사항들을 살펴보시죠! tuistenv를 통한 버전 관리 방법의 삭제Tuist v3까지는 설치 스크립트가 tuistenv라는 툴을 설치했습니다.tuistenv는 특정 버전의 Tuist를 설치하고 활성화하여 환경 간 일관성을 보장해주는 역할을 했습니다.즉, 버전 관리를 해준것이죠.그런데 이제는 Tuist의 기능 범위를 줄이기 위해서 tuistenv를 제거하고, 동일 역할을 하지만 더 유연하고 다양한 도구에 사용..
-
Tuist v4 설치 및 사용 (with. 자동화)Tuist 2024. 7. 1. 18:52
안녕하세요. 그린입니다 🍏이번 포스팅에서는 Tuist v4을 기준으로 설치하고 간단히 사용하는 방법에 대해 학습해보겠습니다 🙋🏻 Tuist v4프로젝트를 관리하며 모듈화에 도움을 주는 우리 익숙한 Tuist가 3 버전대에서 4 버전대로 오면서 변화가 생겼죠.로고가 바뀌었을뿐만 아니라, 기존 curl이나 homebrew등을 이용해 설치하였던 Tuist가 이제는 mise를 이용해 설치하라고 권장하고 생겨났습니다😃 물론, 아직까지도 homebrew 및 다양한 방법으로 설치할 수 있지만 mise를 활용하라고 권장하네요.mise는 마이스? 마이즈로 읽는줄 알았는데 미즈라고 읽더라구요 ㅎㅎ 뿐만 아니라, 프로젝트 생성을 위한 의존성들을 관리하는것들과 타겟 및 프로젝트 생성을 위해 작성하던 코드들의 일부분도..
-
TCA - Dependency 설계TCA 2024. 6. 29. 15:53
안녕하세요. 그린입니다 🍏이번 포스팅에서는 TCA에서 Dependencies 설계에 대해 알아보겠습니다 🙋🏻Designing dependencies종속성을 기능에 주입하고 테스트를 위해서 재정의하는데 도움이 되는 설계가 필요합니다.즉, 핵심적으로 가져가야할것은 종속성을 제어할 수 있게 만들기 위해서 격리 및 테스트가 가능하게 만드는것이죠! 한단계씩 알아볼까요? Protocol-based dependenciesSwift에서 종속성을 설계하는 방법 중 가장 널리 사용되는것이 프로토콜을 이용하는것입니다.예시로, 아래와 같이 오디오 플레이에 대한 프로토콜을 설계해본다고 가정해봅시다. protocol AudioPlayer { func loop(url: URL) async throws func play(u..