안녕하세요 Pingu입니다.🐧 오늘은 iOS 개발에 쓰이는 Swift 언어에서 Class, Struct의 차이점이라는 주제를 가지고 글을 써보려고 합니다. iOS 개발자로 면접을 준비하다 보면 Class, Struct의 차이점이라는 질문을 자주 접하게 됩니다. 아주 간단하게 차이점을 보자면 "Class는 참조타입이고 ARC로 메모리 관리를 한다. Struct는 값 타입이다." 정도로 표현 할 수 있을 거 같습니다. 이 질문을 통해 ARC를 통한 메모리 관리, 참조 타입과 값 타입의 차이점 등을 함께 답변할 수 있을 거 같습니다. 저는 이 iOS 개발자 면접에서 자주 등장하는 해당 질문이 iOS 개발자에게 어떤 의미를 갖는지 좀 더 생각하게 되었고 좀 더 깊이 공부하게 되었습니다. 공부를 하다 보니 깨달은..
안녕하세요 Pingu입니다🐧 백준에서 알고리즘 문제들을 Swift 언어로 풀다 보면 가끔 Int(String(Substring))은 시간 초과가 안 나는데 Int(Substring)은 시간 초과가 나는 것을 겪었었는데요, 예를 들면 아래 문제가 있습니다. icksw.tistory.com/93 [백준] 1753번 최단 경로 [Swift] 문제 방향그래프가 주어지면 주어진 시작점에서 다른 모든 정점으로의 최단 경로를 구하는 프로그램을 작성하시오. 단, 모든 간선의 가중치는 10 이하의 자연수이다. 입력 첫째 줄에 정점의 개 icksw.tistory.com 이거 때문에 날린 시간이 너무 억울해서 도대체 왜 이런가에 대해 한 번 알아봤습니다.😂 참고 자료는 실제 Swift의 구현 코드 입니다. https://g..
안녕하세요 Pingu입니다.🐧 오늘은 Swift에서 중요한 ARC에 대해서 알아볼 건데요, ARC에 대한 자세한 내용은 여기를 참고해주세요. ARC는 Automatic Reference Counting이라고 해서 클래스와 같은 참조 타입에서 사용되는 메모리 관리 방법인데요, 간단하게 말하면 클래스의 인스턴스가 있을 때 인스턴스를 참조하는 곳을 계속 카운트하다가 언젠가 0이 되면 인스턴스를 메모리에서 할당 해제하는 아이디어입니다. 이 말은 바꿔말하면 참조 카운트가 1 이상이라면 메모리에서 할당 해제되지 않는다는 것을 말합니다. 때문에 아무곳에서 사용하지 않고 있음에도 불구하고 메모리를 유지하는 문제가 발생할 수 있고 오늘은 이러한 참조 사이클이 발생하는 상황과 해결 방법을 알아보려고 합니다. Strong ..
안녕하세요 Pingu입니다. Swift 문법 중 Closure(클로저)에 대해서 다시 공부를 하는데 AutoClosure, EscapingClosure이 잘 이해가 가지 않아서 정리 겸 공부를 한 번 하기 위해 글을 쓰려고 합니다. 클로저에 대한 내용은 여기서 한 번 정리를 했는데도, AutoClosure, EscapingClosure을 다시 보니 잘 기억이 나지 않네요.. 역시 어려운 개념은 반복학습을 해야 되는 것 같아요. 만약 클로저를 처음 보시는 분이라면 여기를 먼저 보시는 것을 추천드립니다! 어쨌든 이번 글에서는 AutoClosure, EscapingClosure에 대해 공부해보겠습니다. Closure(클로저) 우선 공식문서에서 클로저는 코드에서 함수적인 것을 독립적으로 사용할 수 있는 코드라고..
- Total
- Today
- Yesterday
- document
- 스위프트
- System
- operating
- 테이블뷰
- Combine
- Apple
- IOS
- Publisher
- 알고리즘
- operator
- 앱개발
- Xcode
- 백준
- OSTEP
- BFS
- Swift
- 코테
- 자료구조
- design
- 아이폰
- 코딩테스트
- DP
- pattern
- mac
- OS
- 동시성
- 문법
- 프로그래밍
- dfs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |