iOS/Xcode

iOS/Xcode

[ Xcode ] 메모리 누수 혹은 클로저 강한 참조로 인한 Retain Cycle 발생 여부 확인 및 해소

1. Debug Memory Gragh사용을 위한 기본적인 세팅 Malloc Scribble메모리가 해제될 때, 해당 영역에 **특정 패턴(0xAA)**을 써서 마킹이 상태에서 해제된 메모리에 접근하려고 하면, 이상한 값에 접근하게 되어 빠르게 오류를 잡을 수 있다.Malloc Stack Logging메모리가 할당될 때마다, 그 시점의 Call Stack을 저장.Instruments (Allocations)와 함께 사용하면, 누수 객체가 어디서 생성됐는지 추적 가능. 분석 결과 해당 사진과 같이 오류 내역이 없고 메모리 누수나 에러를 발생하고 있지 않는다.추가적으로 모델과 컨트롤러에 아래 코드를 추가하여 호출 여부를 확인해주었다.deinit { print("deinitialized") ..

iOS/Xcode

[ Xcode ] LLDB(Low-Level Debbugger)

LLDB란?LLDB는 Apple이 GDB를 대체하기 위해 LLVM 기반으로 새롭게 개발한 디버거입니다.Xcode 5부터 기본 디버거로 채택되어, 모든 기존 및 신규 프로젝트에서 자동으로 LLDB를 사용하게 되었습니다.LLDB는 GDB보다 강력하고 빠르며, 데이터 검사 및 흐름 제어에 있어 현대적인 기능을 제공합니다.LLDB의 주요 특징1. Xcode와의 완벽한 통합LLDB는 Xcode 안에서 완전히 통합되어 작동합니다. UI 디버깅 도구와 디버깅 콘솔에서 LLDB 명령어를 직접 사용할 수 있습니다.2. 익숙한 명령어 세트기존 GDB 사용자를 위해 LLDB는 GDB와 유사한 명령어들을 제공합니다.또한 별칭(alias)을 지정하거나, 단축 명령어를 만들어 손쉽게 사용할 수 있습니다.3. 확장 가능한 디버거L..

iOS/Xcode

[ Xcode ] Xcode 단축키 모음

안녕하세요 공공돌🧸 입니다 Xcode를 사용하면서 개발의 질을 향상시켜 줄 단축키들을 정리해봤습니다. Ctrl(^) 사용 Ctrl + I : 코드 자동 정렬 시키기 Command 사용 Command + R(Run) : 프로젝트 런 + 시뮬레이터 상에서는 화면 녹화 Command + N(New) : 프로젝트 파일 추가 Command + K(Keyboard) : 시뮬레이터 상에서 키보드 띄우기 Command + F(Find) : 현재 창에서 키워드 검색 Command + E : 현재 선택된 블럭을 검색 Command + G : 다음 검색된 항목으로 이동 -> Command + E랑 같이 활용 Command + Z : 뒤로 돌리기 Command + W : 현재 창 닫기 command + “/” : 주석 처리하..

Sheep1sik
'iOS/Xcode' 카테고리의 글 목록