본문 바로가기

공부/[iOS&Swift]31

[Swift] ARC(Automatic Reference Counting) - 1 ✏️ ARC(Automatic Reference Counting) 참조 타입의 인스턴스는, 더 이상 참조되지 않을 때 적절히 메모리에서 해제해줘야 한다. 그렇지 않으면, 쓸모없는 메모리 공간을 낭비하게 되고 결국 앱의 성능 저하를 유발할 수 있기 때문이다. Swift는 ARC라는 개념을 통해 이 과정을 자동으로 해 준다. 물론, 이름과 같이 Reference counting이기 때문에 참조 타입의 인스턴스에 대해서만 ARC가 동작하며, 값 타입의 인스턴스(struct, enum의 인스턴스)는 관리해주지 않는다. 다만, 몇몇 경우에 ARC는 메모리를 관리하기 위해 코드 내에서 더 많은 정보를 요구한다. 이번에는 그런 내용 들에 대해서 공부해 보고 ARC로 하여금 애플리케이션 내의 모든 메모리를 잘 관리하도.. 2022. 2. 5.
[iOS] AVFoundation, AVAudioPlayer, Timer ✏️ AVFoundation AVFoundation은 애플 플랫폼에서 시청각 미디어의 capture, process, synthesize, control, import, export 6개의 주요 기술 영역을 지원하는 프레임워크이다. 그러니까, 미디어 파일을 다룰 때 이 프레임워크를 이용하면 되는 것 같다! 참고로 아래에서 다룰 AVAudioPlayer 클래스는 AVFoundation에 선언되어있고, Timer 클래스는 UIKit에 선언되어있다. (하나씩 주석 처리하고 어디서 에러가 발생하는지 확인해봄...) ✏️ AVAudioPlayer 음성 데이터를 파일이나 어떤 버퍼로부터 재생(또는 기타 기능)시킬 수 있는 객체(Object) AVAudioPlayer를 이용하여 시간제한 없이(Any duration).. 2022. 2. 2.
[iOS] 애플 개발자 문서 읽기 팁(from iOS boost course) 개발을 함에 있어서 개발자 문서를 읽는것은 당연한 말이다. 예를 들어서 수학 공부를 할 때 수학교과서를 보는 것이니까. iOS 애플리케이션을 개발한다고 하자. 그러면 애플 개발자 문서를 읽어야 되는 것인데, 애플 개발자 문서는 정말 너무너무 양이 많을 것이다. 뿐더러 공식문서라는 것은 정말 읽어들이기가 낯설고 어렵다. 그렇기 때문에 애플 개발자 문서가 어떤 식으로 구성되어 있는지 이해하고, 적절하게, 효율적으로 읽어들이는 방법을 알고 습관을 들인다면 조금씩 조금씩 익숙해질 수 있을 것이다. 이번 글에서는 Boost course에서 추천해주는 애플 개발자 문서를 읽어들이는 팁(?)에 대해서 정리해두고 필요할 때마다 기억을 되짚어보려 한다. 🍎 애플 문서의 구성 애플 문서는 크게 세 가지로 나눠져있다. 참조.. 2022. 1. 31.
[iOS] AutoLayout을 코드로 작성하는 기본적인 방법에 대하여 ✏️ Auto Layout 오토레이아웃은 뷰의 제약사항을 바탕으로 모든 뷰의 크기와 위치를 동적으로 계산한다. 쉽게 말해서 어떤 화면, 어떤 상황에서도 같은 ‘비율’로 모든 뷰를 나타낼 수 있다는 정도로 생각하면 좋을 것 같다. 코드를 통해, 그리고 인터페이스 빌더에서 GUI를 통해 하는 두 가지 방법이 있다. 어쨌든 두 가지 방법을 다 활용할 줄 알아야한다고 생각한다. 위에서 말 한 제약사항이란 constraints라는 내용으로 Xcode에서 볼 수 있었는데(인터페이스 빌더에서) 이 제약사항들을 기반으로 하여 오토레이아웃을 구현한다고 보면 된다. 그러면 제약사항을 잘 이해하는 것이 오토레이아웃을 잘 구현하는 방법이라고 생각해도 될것이다. ✏️ 제약사항 Constraints 제약은 방적식으로 나타내며, .. 2022. 1. 26.