
안녕하세요. iOS Developer, 멍구입니다. 🤗 iOS 개발을 하다보면, 특정 코드의 실행시간이 어느정도 소요되는지 성능 테스트를 해보고 싶을때가 있습니다. 오늘은 이렇듯, 특정 코드 연산의 실행속도를 확인하고자 할 때, Date구조체를 활용해서 간단하게 실행시간을 확인하고 성능을 체크할 수 있는 방법에 대해 알아보도록 하겠습니다. iOS swift, Date 구조체로 연산 실행시간 확인하기 먼저, Date를 사용하기 위해서는 기초 프레임워크, Foundation을 import 해주어야합니다. 그래야 Date 구조체를 사용할 수 있습니다. 4행) Date() 구조체 인스턴스, currentDate를 만들었습니다. 단순 Date()로 초기화해서 인스턴스 생성 시, 생성 직후의 시간정보가 들어가게 됩..

Protocol CaseIterable enum 열거형의 값들을 배열 컬렉션과 같이 순회할 수 있도록 해주는 프로토콜이 있습니다. 바로 CaseIterable이라는 프로토콜입니다. CaseIterable 프로토콜은 모든 case 값들에 대한 컬렉션을 제공하는 타입입니다. enum 타입에 CaseIterable 프로토콜을 채택해서 enum의 case 값들을 for in loop나 forEach 등으로 순회할 수 있습니다. 그 외 배열 컬렉션에서 사용하던 다양한 메서드 또한 사용 가능합니다. Declaration CaseIterable 선언방식 CaseIterable은 앞서 말했듯이, 프로토콜로 선언되어있습니다. CaseIterable 프로토콜과 allCases 타입 프로퍼티 enum 열거형으로 선언되어있는..

안녕하세요? iOS Developer, 멍구입니다. 오늘은 swift 문법 중 유용하게 사용될 수 있는 defer문에 대해서 함께 알아봐요. 😄 Defer Statement Defer문 defer 문은 특정 코드 블럭이 종료 될때 실행할 코드를 구현하고자할 때 사용할 수 있습니다. 예를들면, 특정 메서드가 종료될 때 무언가 연산이나 실행할 작업이 있다면 해당 defer 블럭 내에 코드를 구현할 수 있습니다. defer문은 블럭이 종료되는 방식에 관계없이 defer로 정의된 코드가 실행되는 특징이 있습니다. 이 의미는 정의된 블럭이 종료되면 defer문이 사용되는 것을 의미합니다. 예를 들자면, 파일 처리 / 에러가 발생할 수 있는 throw 메서드의 액션 실행 등 수동 작업의 경우 또한 블럭이 종료되면 ..

UIViewController didMove(toParent:) UIViewController 인스턴스의 메서드로 didMove(toParent:)가 존재합니다. 해당 메서드는 다른 UIViewController, PageViewController TabBarController 등의 컨테이너 뷰 컨트롤러에 다른 UIViewController가 추가/삭제 된 후에 호출이 됩니다. Declaration didMove Method 선언방식 didMove는 UIViewController의 인스턴스 메서드로, UIViewController 인스턴스로부터 접근해서 사용할 수 있습니다. 예를들면 childViewController.didMove(toParent: self) 와 같은 방식으로 부모 ViewControl..
- Total
- Today
- Yesterday
- swift알고리즘
- 개발자문서
- uikit
- swift string
- 프로토콜
- 백준swift
- 알고리즘문제
- Protocol
- swift 기초
- 김프매매
- 스위프트
- swift언어
- Collection
- swift reduce
- swift문제
- SwiftUI
- 컬렉션
- 자연어처리
- ios
- 프로그래머스
- 백준알고리즘
- 프로그래머스swift
- swift 문자열
- createML
- CoreML
- 알고리즘
- swift
- Swift 알고리즘
- 부스트코스
- swift concurrency
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |