Functional Programming2 Swift에서의 렌즈(Lens) - Link 이번엔 더 복잡한 객체를 만들어 볼게요. 먼저 렌즈 함수를 다시 볼게요 struct Lens { let view: (Whole) -> Part let set: (Part, Whole) -> Whole} 스트리머의 채널정보를 알 수 있도록 속성을 하나 더 추가해 볼게요.struct Channel { let subscribers: UInt let videos: UInt} 좀 더 복잡한 객체가 되었습니다.struct Streamer { let name: String let mainPlatform: String let channel: Channel} 카더정원이라는 유튜버를 만들었습니다.let youtuber = Streamer( name: "카더정원", m.. 2025. 3. 15. Swift에서의 렌즈(Lens) - Basic 복잡한 데이터구조에서 특정구조에 접근하는 방법을 Lens라는 함수객체로 알아보도록 하겠습니다.먼저 전체에서 부분을 가져오는 함수를 만들어 보겠습니다.Whole -> Part (getter) 전체에서 부분만 수정하는 것도 필요할 거예요 (setter)Part, Whole => Whole여기서 Part => Whole가 아닌 이유는Whole에서 Part를 제외한 다른 부분은 기존의 Whole에 있던 것 그대로 있어야 하기 때문입니다. 그럼 이제 이러한 특성을 가진 함수객체 Lens를 만들어보겠습니다.//함수객체를 생성할때 get함수와 set함수를 지정해 줄 수 있습니다.struct Lens { let view: (Whole) -> Part let set: (Part, Whole) -> Who.. 2025. 3. 13. 이전 1 다음