- Accessibility
- UIKit
- 애플
- 디자인패턴
- github
- iPad
- Apple
- lineBreakMode
- lineBreakStrategy
- iTerm
- GOF
- UILabel
- IOS
- orthogonalScrollingBehavior
- 앱개발
- Human Interface Guidelines
- WWDC
- 야곰아카데미
- Swift
- Combine+UIKit
- CollectionView
- HIG
- LanguageGuide
- 전달인자 레이블
- Split View
- Keychain
- 스위프트
- TOSS
- 애플사이다
- DiffableDataSource
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Today
- Total
목록스위프트 (12)
애플사이다의 iOS 개발 일지
안녕하세요. 애플사이다 입니다. Swift는 명령형, 객체지향 프로그래밍 패러다임을 기반으로 함수형 프로그래밍 패러다임 및 프로토콜 지향 프로그래밍 패러다임을 지향하는 언어입니다. OOP (Object-oriented Programming, 객체지향 프로그래밍)에서 타입과 인스턴스란 무엇인지, Swift에서는 왜 객체라는 용어 대신 인스턴스라는 용어를 사용하는지 정리해보겠습니다. OOP란? OOP (Object-oriented Programming, 객체지향 프로그래밍)는 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하여, 객체 간의 상호작용으로 프로그램의 동작을 구현하는 것이다. 기존의 계산기처럼 컴퓨터에 명령만 시키겠다는 관점에서 벗어..
안녕하세요. 애플사이다 입니다. 변수 이름, 함수 이름 짓기는 모든 개발자의 영원한 숙제입니다. 어떻게 하면 코드를 10년 뒤에 다시 봐도 3초 만에 이해할 수 있도록 네이밍할 수 있을까요? Swift에서는 API Design Guidelines라는 공식문서를 통해 변수/함수/매개변수/전달인자 레이블의 네이밍 및 주석 작성 방법에 대한 기준을 제시합니다. Swift Language Guide 만큼이나 중요한 문서입니다. API Design Guidelines *API : Application Programming Interface Fundamentals (기본 원칙) 1. 사용 시점을 기준으로 명확히 작성하는 것이 가장 중요한 목표이다. (Clarity at the point of use is your ..
안녕하세요. 애플사이다 입니다. [Swift Language Guide 정독 시리즈]의 여섯 번째 챕터 Functions에 대해 정리해보겠습니다. *Swift Language Guide를 읽어야 하는 이유는 시리즈 0. Language Guide란? 포스팅을 참고해주세요. 이번 챕터는 제가 함수 개념을 처음 접했을 때 헷갈렸던 내용을 중점적으로 다루었습니다. Functions (함수) 함수는 특정 작업을 수행하는 코드 덩어리 (chunks of code)이다. Swift의 함수는 C와 같이 매개변수 (parameter) 이름이 없는 간단한 함수부터 Object-C와 같이 여러 매개변수와 전달인자 레이블 (argument label)을 가진 복잡한 형태의 함수까지 다양한 함수를 나타낼 수 있는 유연한 문법..
안녕하세요. 애플사이다 입니다. 이니셜라이저에 대한 용어가 가끔 헷갈릴 때가 있습니다. 기본 이니셜라이저, 멤버와이즈 이니셜라이저, 사용자 정의 이니셜라이저 등 이니셜라이저의 종류에 대해 간단히 요약해보겠습니다. 인스턴스 초기화란? 초기화는 새로운 인스턴스를 사용하기 전에 미리 준비하는 작업이다. 저장 프로퍼티의 초기값을 설정하는 등의 역할을 한다. 구조체, 클래스, 열거형의 인스턴스를 초기화할 수 있다. 초기화를 완료하면, 인스턴스의 모든 저장 프로퍼티의 값이 확정된다. (옵셔널 저장 프로퍼티는 제외) 저장 프로퍼티에 초기값을 지정하는 방법은 두 가지이다. 1) 프로퍼티를 정의할 때 프로퍼티 기본값 (default value)를 할당한다. 2) 이니셜라이저를 실행하여 초기값 (initial value)..
안녕하세요. 애플사이다 입니다. [Swift Language Guide 정독 시리즈]의 다섯 번째 챕터 Control Flow에 대해 정리해보겠습니다. *Swift Language Guide를 읽어야 하는 이유는 시리즈 0. Language Guide란? 포스팅을 참고해주세요. Control Flow (흐름 제어) Swift에는 코드의 흐름을 제어하기 위한 여러 종류의 구문 (statements)이 있다. 1) 작업을 여러 번 반복하는 while문 (while loop), 2) 특정 조건 (conditions)에 따라 다른 코드 덩어리 (branches of code)를 실행하는 if / guard/ switch문, 3) 코드의 실행 흐름 (flow of execution)을 다른 곳으로 이동시키는 br..
안녕하세요. 애플사이다 입니다. [Swift Language Guide 정독 시리즈]의 네 번째 챕터 Collection Types에 대해 정리해보겠습니다. *Swift Language Guide를 읽어야 하는 이유는 시리즈 0. Language Guide란? 포스팅을 참고해주세요. Collection Types (컬렉션 타입) Swift에는 세 가지 기본 컬렉션 타입이 있다. 1) 배열 (arrays), 2) sets (집합), 3) dictionaries (딕셔너리) 여러 개의 값을 묶어서 (collections of values) 1개의 상수/변수에 저장할 때 사용한다. Array는 순서가 있는 값의 묶음이다. Set는 순서가 없는 값의 묶음이며, 값은 중복되지 않는다. (unique) Dictio..
안녕하세요. 애플사이다 입니다. Swift Language Guide의 네 번째 챕터 Collection Types에 "Hashable"과 "해쉬값 (Hash Value)"이 등장합니다. 해쉬 개념을 제대로 이해하려면 해쉬 테이블 (Hash Table)이라는 자료구조에 대해 알아야 합니다. 그에 앞서, 이번 포스트에서는 "해쉬값"이 무엇인지 기초 개념을 정리해보겠습니다. 해쉬값 (Hash Value) 이란? - 데이터를 간단한 숫자로 변환한 것 원본 데이터를 특정 규칙에 따라 처리하여 간단한 숫자로 만든 것을 해쉬값이라고 한다. 정확히는 원본 데이터 (객체)를 해쉬 함수 (hash function)을 사용하여 64bit의 Int값으로 변환한 것이다. ✅ 2개의 데이터를 비교할 때, 데이터가 동일하면 각 ..
안녕하세요. 애플사이다 입니다. [Swift Language Guide 정독 시리즈]의 세 번째 챕터 Strings and Characters에 대해 정리해보겠습니다. *Swift Language Guide를 읽어야 하는 이유는 시리즈 0. Language Guide란? 포스팅을 참고해주세요. Strings and Characters (문자열 및 문자) "hello, world"와 같이 문자열은 여러 개의 문자이다. Swift의 문자열은 String 타입으로 나타낸다. 문자열의 요소 (contents)에 접근하는 방법은 다양하다. 주로 Charater 타입 값의 Collection 형태로 접근한다. Swift의 String 및 Character 타입은 코드의 텍스트를 처리하며, 빠르고 유니코드 호환 (U..