 Apple Lover Developer & Artist

영속적인 디자인에 현대의 공감을 채워넣는 공방입니다

반응형

swift 39

Lecture 9 Review Part 1: EmojiArt Drag and Drop Multithreading

기존에 만들어온 Memorize 데모앱 대신 새로운 EmojiArt 를 만들어 볼 것이다. 앞으로 나올 강의에서는 EmojiArt를 기준으로 수업한다. Collections of Identifiable Memorize 앱에서 다음과 같은 코드를 사용해본 경험이 있을 것이다. func choose(_ card: Card) { if let index = cards.firstIndex(where: { $0.id == card.id }) { cards[index].isFaceUp = true } } 카드 배열에서 선택된 카드를 찾아서 isFaceUp 혹은 isMatch 와 같은 것들을 설정해줘야하기 때문이다. 카드는 구조체이고 구조체는 값 타입이며 값타입은 복사되기 때문에 배열에서 바로 변경해야한다. 위와 같은..

[Swift] 공식문서 씹어먹기: Strings and Characters

Overview String은 "hello, world" 혹은 "albatross"와 같은 문자들의 나열 (문자열) 이다. Swift에서의 문자열은 String type으로 사용된다. String의 내부값은 문자값들의 컬렉션을 포함하여 다양한 방식으로 접근할 수 있다. Swift의 String과 Character type은 코드에서 텍스트를 다룰 때 빠르고 유니코드 호환 방법을 제공한다. String을 생성(creation)하고 수정(manipulation)하는 문법은 가볍고 가독성이 좋으며 C와 유사한 String literal 문법을 제공한다. String Concatenation은 + 연산자를 사용하여 쉽게 두개의 String을 결합시켜준다. String mutability는 Swift에서의 다른 ..

[Swift] 공식문서 씹어먹기: Basic Operators

Overview operator(연산자)는 값을 확인, 변경 또는 결합하는 데 사용되는 특수기호 또는 구문(phrase)이다. 예를 들어 덧셈 연산자 (+)는 두 수를 더해주며 논리 AND 연산자 (&&)은 두 개의 Boolean 값을 결합해준다. Swift는 C와 같은 다른 언어에서 사용되는 연산자를 지원한다. 코딩 과정에서 공통으로 발생될 수 있는 오류를 제거하여 연산자의 일부 능력을 향상시킨 형태로 제공한다. = 연산자는 == 연산자와 혼동하여 사용되지 않도록 값을 리턴하지 않는다. 산술 연산자 (+, -, *, /, %)는 type이 제공하는 값 범위를 벗어난 overflow를 감지하여 예측되지 않은 결과를 막기 위해 오류를 발생시킨다. Swift의 overflow 연산자를 활용하여 값 overf..

[Swift] 공식문서 씹어먹기: The Basics

Overview Swift는 iOS, macOS, watchOS, tvOS의 어플리케이션 개발을 위한 새로운 프로그래밍 언어이며 C와 Objectice-C 개발 경험이 있다면 Swift를 쉽게 활용할 수 있다. Swift는 C와 Objective-C에서의 타입과 콜렉션에 대해여 자신만의 버전을 갖고 있다. Int Integer Double, Float Floating-point values Bool Boolean String Texture data Array, Set, Dictionary Collection type C와 같이 Swift는 변수를 이름으로 식별하여 값을 저장(store)하고 참조(refer)하는 용도로 사용한다. C에서의 상수(constant) 개념처럼 Swift에서도 값이 변할 수 없는..

Lecture 7 Review Part 1: ViewModifier Animation

Animation SwiftUI에서 애니메이션이 어떻게 동작하는가? 모바일 UI 측면에서 애니메이션은 중요한 요소이기 때문에 SwiftUI에서는 이를 쉽게 구현할 수 있도록 설계해두었다. 애니메이션을 구현할 수 있는 방법으로 Shape를 활용해 보는 방법이 존재한다. 예를들어 Memorize 앱에서 카드의 뒷쪽에 파이 모양의 카운트 다운 타이머를 사용하는 경우가 해당된다. 이 때에는 Angle을 활용하여 애니메이션을 구현하였다. 또다른 방법으로 ViewModifier를 사용하는 방법이 존재한다. 그렇다면 ViewModifier은 무엇인가? 우리는 이미 ViewModifier를 사용해본 경험이 있다. 예를들어 aspectRatio, padding, foregroundColor, font와 같은 것들이 해당..

반응형