Protocol을 학습하며 지속적으로 학습한 내용은 'blueprint(청사진)이다', '공통 기능을 가진다' 등 입니다. 이러한 학습을 하며 자연스럽게 동시에 떠오르는 생각은 위의 특징이 클래스의 상속(inheritance)와 유사하다는 점이며 이 두가지 개념을 구분
imgReference: Palindrome Linked List문제 자체의 난이도는 높지 않았습니다. 연결 리스트로 구현된 자료를 반환하며 리스트에 담아 처리하면 기존의 팰린드롬 문제와 다를게 없기 때문이고, 또한 이러한 풀이가 다른 방식의 풀이와 속도 측면에서 큰
컨트롤이 발생했을 때 그 컨트롤의 종류를 의미하며 UIControl에 Event라는 타입으로 정의되어 있습니다.컨트롤 객체에 발생할 수 있는 이벤트의 종류Reference: BoostCourse iOS 앱개발 - by 야곰
Xcode에 프로젝트를 생성하면 Assets.xcassets라는 폴더가 생성됩니다. 이 폴더에서 애플리케이션에서 사용할 에셋(자원)을 관리하고 이를 에셋 카탈로그라고 합니다.에셋과 디바이스의 속성, 사이즈 클래스, 주문형 리소스, 특정 타입 정보 등의 디바이스의 속성에
클래스나 구조체, 열거체의 객체 인스턴스가 그 내부에 가지고 있는 객체의 상태에 관한 정보를 말합니다(Properties associate values with a particular class, structure, or enumeration).저장 프로퍼티는 상수나
클로저는 여러 코드들을 모아둔 괄호 "{}"로 구분된 코드 블럭입니다. 이렇게 구현된 클로저는 일급 객체의 역할을 할 수 있습니다. 일급객체: 다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 객체로서, 일반적으로 매개변수로 넘기기, 변수 대입하기 같은 연산을
인자 값을 직접 변경하는 파라미터로 파라미터 앞에 inout이라는 키워드를 사용합니다. 아래 예시는 두 수의 값을 바꿔주는 함수입니다. 위의 함수를 실제로 사용하기 위한 방법은 아래와 같습니다. 일반적인 파라미터와 다르게 앞에 &를 붙여줍니다. 즉, inout을 붙
제한된 선택지를 주고 싶을 때정해진 값 외에는 입력받고 싶지 않을 때예상된 입력 값이 한정되어 있을 때각각의 케이스가 값으로 취급된다.C언어의 열거형에서는 정수값이 자동으로 할당되지만 Swift에서는 작동 방식이 다르다. Swift에서는 각 항목이 그 자체로 고유값이
데이터 타입 안심이란 데이터의 타입에서 오는 실수들을 줄일 수 있다는 말로서 Swift가 컴파일 시 타입을 확인하며 문제가 있을 경우 컴파일 오류로 알려준다.타입 확인: 컴파일시 타입을 확인하는 과정을 타입 확인이라고 한다.타입 추론: 특정 타입을 명시하지 않아도 컴파
optional 타입의 값이 nil인지 판단하고 nil이 아닐 경우 if 블럭 안에서 optional이 unwrapped 된 상태로 사용 가능하다. if-let을 사용할 때는 추출하려는 변수의 이름과 동일하게 사용해도 상관 없다.guard 뒤에 조건이 true일 때 코
If - else if - else 구문if 만 단독으로 사용 가능if 조건 뒤에는 Bool 타입 값만 존재해야함조건 부분의 소괄호는 선택사항switch 구문정수타입의 값만 비교하는 것이 아니라 대부분의 스위프트 기본 타입을 지원default 구문은 반드시 작성해야한다
Upper Camel Case: type(class, struct, enum, extension) 등Lower Camel Case: 그 외(function method, variable, constant)print 함수: 단순 문자열 출력dump 함수: 자세한 설명까지
시간복잡도가 O(1)이 아닌 것을 명시한다(Document the complexity of any computed property that is not O(1))사람들은 일반적으로 멘탈 모델로서 정보를 저장하고 가져오므로 정보에 접근하는 것에 코스트가 많이 들지 않는다
imgimage-20210305122800485(/Users/seungjinbaek/Library/Application Support/typora-user-images/image-20210305122800485.png)Include all the words needed