Search

4주차 멘토링

진행 일자
2023/10/12 20:00
피드백 여부
피드백 완
1.
스위프트 공부할때 어떤 순서로 공부하면 좋을까요? 주요하게 알아야할 개념 같은 거 위주로 알고싶습니다.
기본 타입: string, int, double, collection(array, set…)
조건문, 함수, property, closure
오브젝트: Class, struct, enum, actor
Protocol, error, optional, concurrency, generics
2.
Typealias 타입 별명이라고 들었는데 타입 출력을 해도 원래의 타입으로 나오고 선언한 별명은 나오지 않았습니다. 사용하는 이유가 있나요?
typealias i = Int let one: Int = 1 let alsoOne: i = one print(alsoOne) // 예시 typealias Timestamp = Double let time: Timestamp = 1.0
Swift
복사
typealias CompletionCallback = (Bool) -> Void typealias VoidCallback = () -> Void let something: VoidCallback
Swift
복사
3.
함수 선언시에 매개변수에 _를 붙혀 함수 사용에 편의를 주는 경우를 배웠습니다. 실제 사용해보니 _ 매개변수로 사용함이 매우 편했던것 같아 _ 없이 매개변수를 사용하는 경우가 있을까요?
함수 파라미터 여러개 있을때
func something(width: CGFloat, height: CGFloat, x: Double, y: Double) { ... } something(width: 10.0, height: 20.0, x: 1.0, y: 10.0) // _ 예시 func something(_ width: CGFloat, _ height: CGFloat, _ x: Double, _ y: Double) { ... } something(10.0, 20.0, 1.0, 10.0)
Swift
복사
4.
주로 사용하는 옵셔널 언래핑 방법은 무엇일까요? 혹은 사용하면 안될 방법 같은것도 있을까요?
guard let, if let
옵셔널 체이닝 ??
let number: Int? = 0 if let number = number { // 사용 } // 체이닝 let new = number ?? 0 // new는 옵셔널이 아님
Swift
복사
강제 언래핑 !
number!
Swift
복사
5.
SwiftUI 에서 UIKit 처럼 버튼 등을 정의하여 사용할 수 있나요?
SwiftUI: Declarative (선언형)
UIKit: Imperative (명령형)
// 작동 x let button = Button("버튼") { } // 작동 o @ViewBuilder var button: some View { return Button("버튼") { } } var body: some View { button }
Swift
복사
6.
실무에서 주로 쓰는 디자인 패턴이 있을까요? 아니면 알고가면 좋은 패턴이 있나요?
MVVM 패턴
MVP, MVI, VIPER 패턴
7.
iOS 개발자에겐 디자인 감각이 필요할까요? 추가로 피그마 같은 툴을 공부할 필요가 있을까요?
디자인 감각: UI/UX 잘 작동하는지
현업에서는 사용할줄 알아도 거의 사용 못함
8.
재사용 가능한 요소들을 어떻게 관리하는지와 효율적으로 만드는 방법이 궁금합니다.
프로젝트내에 관리 - Tuist, 모듈화
Modular Achitecture in iOS