[iOS/Swift] 접근제어자
·
IOS - Swift/UIkit
접근 제어는 캡슐화를 구현하기 위한 가장 기본적인 단계입니다.코드의 세부 구현을 숨기고 필요한 인터페이스만 노출함으로써, 우리는코드의 안정성 향상유지보수성 개선API의 명확성 제공의도하지 않은 사용 방지등의 이점을 얻을수 있습니다! Module의 정의와 특징엥 모듈이 뭐죠? 모듈은 코드 배포의 단위입니다. 하나의 모듈은 독립적으로 배포 가능한 코드의 묶음으로 생각하시면 됩니다.// 다른 모듈에서 이렇게 import하여 사용import UIKit // UIKit 모듈import Foundation // Foundation 모듈import YourCustomFramework // 사용자 정의 모듈모듈은 논리적으로 연관된 기능들의 집합이며, 재사용 가능한 코드의 단위입니다.예를 들면, UIKit은 UI 관련..
[iOS/Combine] Transforming Operators
·
IOS - Swift/Combine
Transforming Operators의 핵심 개념Transforming operators는 upstream publisher로부터 받은 값들을 변형해서 downstream으로 전달하는 연산자입니다.모든 operator는 publisher이며, upstream 이벤트를 받아서 조작한 후 downstream으로 전달합니다.에러 처리가 필요한 경우가 아니라면 upstream의 에러를 그대로 downstream으로 전달합니다.Mapmap은 업스트림 퍼블리셔의 모든 값의 타입을 변환시키는 Operator입니다.특징map 연산자는 업스트림 퍼블리셔로부터 전달받은 각 요소를 지정된 클로저를 사용해 변환합니다.Swift 문법 map 함수와 비슷하게 동작하고, 한 종류의 데이터를 다른 종류로 변환할 때 사용됩니다.구..
[iOS/SwiftUI] LunchScreen 적용하기
·
IOS - Swift/SwiftUI
UIkit 에는 main 스토리보드와 더불어,항상 같이 딸려왓고 기본으로 세팅되는 LaunchScreen 이 SwiftUI에는 없었습니다. 찾아보니 스유에서는 기본적으로 런치스크린을 Info.plist 에서 관리하는것을 알았고 UIkit처럼 런치스크린을 스토리보드에서 관리하는 방법도 만들 수 있었습니다! 1. Info.plist 으로 설정하는 방법 파일의 최상단 부분에 프로젝트를 선택 후 Target > Info 으로 들어가서 Key 부분에 아래 Launch Screen을 추가해준다. 이때 Value에 적혀있는 LaunchScreenBackgroundColor 등의 이름들은 Assets에 저장한 이름대로 작성해주면 됩니다. 2. 스토리 보드 추가하기 Cmd + n 으로 LaunchScreen 추가하기 스..