일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 파이썬 풀이
- 공부
- iOS개발
- 백준 온라인 저지
- HIG
- 백준온라인저지
- BFS
- 프로그래머스
- 오토레이아웃
- 앱개발
- error
- Android
- UIKit
- 파이썬
- 알고리즘 공부
- Clean Architecture
- 안드로이드 공부
- 정렬
- 그리디 알고리즘
- ios
- Swift공부
- Algorithm
- 알고리즘
- dfs
- greedy algorithm
- swift
- Autolayout
- Python
- Til
- Kotlin
- Today
- Total
목록IOS App Programming/Swift (23)
Tori의 개발 공부
프로젝트를 진행할 당시 적절한 접근제한자를 설정하는 것이 성능 향상에 도움이 되니 외부 접근이 없다면 private 처리를 해보자라는 피드백을 받아 코드를 수정했던 경험이 있다. 그래서 접근제한자에 대해 간단히 정리하고 성능에 어떠한 영향을 주는지 정리를 해보았다. 접근 제어는 객체지향의 중요 특징 중 하나인 은닉화를 구현하기 위한 핵심기능이다. 파일 간 또는 모듈 간에 접근을 제한할 수 있는 기능이다. 접근 제한자는 open, public, internal, fileprivate, private 다섯 가지 존재 접근 제한자 정리 public - 공개 접근 수준 어디서든 접근 가능 (자신이 구현된 소스파일, 그 소스파일이 속해있는 모듈, 그 모듈을 가져다 쓰는 모듈 등 모든 곳 가능) open - 개방 ..
알고리즘 문제를 풀다 보면 Array, Set, Dictionary 등 Collection Type 데이터들을 다루게 된다. 데이터 타입마다 각각의 특징들을 가지고 있어 같은 작업을 하더라도 효율성이 달라지게 된다. 데이터의 크기가 커질수록 알고리즘의 중요도와 더불어 데이터 타입 선택도 중요해지게 된다. 그래서 각 타입들의 특징 및 차이점, 언제 사용하면 좋을지 정리해 보았다. 각 데이터 타입의 사용법은 아래 Swift 공식 가이드 참고해 주세요. https://bbiguduk.gitbook.io/swift/language-guide-1/collection-types 각 데이터 타입의 차이점 공식 정의 먼저 Swift language guide에 적혀있는 데이터 타입 설명을 살펴보면 다음과 같다. 배열 ..

결론적으로 클로저에서 weak self를 사용하지 않아도 되는 경우는 다음과 같은 두 가지가 있다. 1. non-escaping 클로저인 경우 2. DispatchQueue.main.asyncAfter 함수를 사용할 경우 escaping 클로저와 non-escaping 클로저 함수 파라미터로 전달된 클로저를 함수 실행이 종료된 후 실행되는 것을 함수를 탈출(escape)한다고 한다. 즉 escaping클로저는 파라미터로 전달된 클로저가 탈출하여 함수 종료 후에 실행되는 클로저를 의미한다. escaping non-escaping 실행 시점 함수 종료 후 함수 내에서 코드 호출 즉시 외부 저장 여부 가능 불가능 두 함수의 차이는 외부 저장 여부에 대해서도 다르다. non - escaping 클로저는 함수 외..

메모리 공간 구조 알아보기 프로그램을 실행하게 되면 운영체제는 메모리에 프로그램을 위한 공간을 할당함 할당된 메모리 공간은 아래와 같이 코드영역, 데이터 영역, 힙 영역, 스택 영역으로 나누어져 있음 그림에 써져 있는 설명처럼 코드 영역: 실행한 프로그램의 코드를 기계어로 변환하여 저장하고 있음 (컴파일 타임 시 결정) 데이터 영역: 전역변수, static 변수 저장 (시작과 동시에 할당, 프로그램이 종료되어야 메모리 해제) 힙 영역 : 프로그래머가 동적으로 할당/해제하는 메모리 영역 (런타임 시 결정) 스택 영역: 지역 변수, 매개 변수 등이 저장되고 해당 변수를 사용하는 함수 종료 시 메모리 해제됨 (컴파일 타임 시 결정) ARC란? ARC란? Automatic Reference Counting의 약..