iOS(+macOS, watchOS) 개발자에겐 필수인 Xcode는 2003년 처음 출시된 macOS 전용 IDE입니다. 2003년에 출시되어 현재 (2022년 11월 9일 기준) 최신 버전은 Xcode 14.1 (2022년 11월 1일), Swift 5.7이며 Swi
StoryboardNIB(XIB)Code
iOS의 화면 전환 방법은 여러가지가 있는데요, 그 중 많이 쓰이는 아래 네 가지 방법을 소개하겠습니다.\##4. Code로 Present
UIViewController를 상속받아 이니셜라이저를 작성하려고 하면, 아래와 같은 에러가 나옵니다.이니셜라이저인 init(coder:)를 작성해야한다는 것인데,이 requred init을 작성해야 하는 것일까?궁금해서 찾아보다가 알게 된 결과를 공유합니다.... 작
오늘은 메모리 관리의 핵심인 ARC, GC를 비교한 글을 올리고자 합니다!이 두가지를 비교하는 질문은 면접 단골 질문 중의 하나이기도 하답니다 :)ARC (Automatic Reference Counting) 설명을 하자면 사실, Strong/Weak/Unowned 키
"Swift의 꽃!"이 뭔가요? 라고 물으면 단연 Optional일 거에요. (두가지를 꼽자면 Optional과 Closure라고 말할 수 있습니다.)그만큼 Swift에서 중요한 개념이고, Objective-C나 다른 언어를 사용하다 Swift를 접하면 가장 난해한 개
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용을 요약한 것입니다.Swift는 2010년 크리스 라트너(Chris Lattner)를 필두로 애플의 프로그래머들이 개발을 시작했습니다. Objective-C, 루비, 파이썬 등 많은 프로그래밍
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다. 5.1 연산자의 종류 1) 할당 연산자 > A = B : A에 B의 값을 할당. 서로 다른 데이터 타입이라면 오류 발생 2) 산술 연산자 > A + B :
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다. 6.1 조건문 1) if 구문 Swift에서 소괄호(())는 생략 가능하지만, 중괄호({})는 생략할 수 없습니다. 참고자료 스위프트 프로그래밍 3판(지
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다. 객체지향 프로그래밍 패러다임을 안다면 클래스라는 용어를 들어봤을 것입니다. 그리고 데이터를 구조화하여 관리하는 데 구조체를 사용해봤을 것입니다. 스위프트에서
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다.프로퍼티는 크게 저장 프로퍼티(Stored Properties) 와 연산 프로퍼티(Computed Properties), 타입 프로퍼티(Type Properti
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다.스위프트의 클로저는 C 언어나 Objective-C의 블록(Block) 또는 다른 프로그래밍 언어의 람다(Lambda)와 유사합니다. 함수는 클로저의 한 형태입
옵셔널 체이닝은 옵셔널에 속해 있는 nil일지도 모르는 프로퍼티, 메서드, 서브스크립션 등을 가져오거나 호출할 때 사용할 수 있는 일련의 과정입니다.옵셔널 체이닝(Optional Chaining)은 Swift 프로그래밍 언어에서 옵셔널(Optional) 값에 대한 속성
모나드는 여러 영역에서 다양한 뜻을 가지기도 하고 한 문장으로 설명하기 참 어려운 개념입니다. 범주론에서의 모나드는 매우 추상적인 수학적 개념이지만, 그 개념은 프로그래밍과 같은 구체적인 분야에서 매우 유용한 추상화와 도구를 제공합니다. 함수형 프로그래밍에서의 모나드는
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다. 클래스는 메서드나 프로퍼티 등을 다른 클래스로부터 상속받을 수 있습니다. 어떤 클래스로부터 상속을 받으면 상속받은 클래스는 자식클래스(Subclass, C
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다. 스위프트에서 프로토콜 지향 프로그래밍이 큰 화두로 떠올랐습니다. 20.1 프로토콜이란 스위프트에서 프로토콜은 특정 작업이나 기능을 수행하기 위한 메서드,
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다.제네릭(Generic)은 스위프트의 강력한 기능 중 하나입니다. 제네릭을 이용해 코드를 구현하면 어떤 타입에도 유연하게 대응할 수 있습니다. 제네릭은 타입에 의
Swift에서 타입 중첩(Nested Types)은 하나의 타입 내부에 다른 타입을 정의하는 기능을 말합니다. 이 기능을 통해 타입을 논리적으로 그룹화하고, 코드 구조를 더 깔끔하고 이해하기 쉽게 만들 수 있습니다.열거형은 특정 클래스나 구조체의 기능을 명확히 사용하기
스위프트에서 where절은 특정 패턴과 결합하여 조건을 추가하는 역할을 합니다. 26.1 where 절의 활용 where 절은 크게 두 가지 용도로 사용됩니다. > - 패턴과 결합하여 조건 추가 타입에 대한 제약 추가 where 절의 다양한 예시를 살펴보겠습니다.
28.1 오류처리 오류처리(Error Handling)는 프로그램이 오류를 일으켰을 때 이것을 감지하고 회복시키는 일련의 과정입니다. 예를 들어 디스크의 파일을 읽어오는 기능을 구현한다고 하면, 파일이 존재하지 않을 수도 있으며, 읽기 권한이 없을 수도 있고, 잘못된
본 글은 야곰의 스위프트 프로그래밍: Swift5 교재를 토대로 공부한 내용과 찾아본 내용을 요약한 것입니다.반환 타입에 불명확 타입(Opaque Types)을 사용하면 반환할 타입의 정확한 타입을 알려주지 않은채로 반환하겠다는 것을 의미합니다.프로퍼티나 서브스크립트의