개발자 도구의 특징

Xcode IDE

보조 편집기

보조 단추는 편집기를 둘로 나누어 현재 편집 중인 코드를 기준으로 가장 유용한 파일을 자동으로 표시하는 보조 패널을 생성합니다. 이 패널에는 헤더, 슈퍼클래스, 호출자, 피호출자 또는 기타 유용한 파일이 표시됩니다.

소스 편집기

코드와 관련된 경고, 오류 및 기타 상황에 맞는 정보를 표시하는 메시지 풍선과 고급 코드 완성, 코드 폴딩, 구문 강조 기능을 갖춘 전문가용 편집기를 사용하여 코드를 작성할 수 있습니다.

Interface Builder

코드 라인을 작성하거나 프로토타입을 만들 필요 없이 단 몇 분만에 사용자 인터페이스를 내장 디자인하여 테스트한 다음 Xcode 편집기 내에 있는 소스에 그래픽으로 인터페이스를 연결할 수 있습니다.

iOS Simulator

iOS SDK를 사용하는 Xcode는 Mac 기반 iOS Simulator를 통해 Cocoa Touch 응용 프로그램을 빌드, 설치, 실행 및 디버깅할 수 있어 개발 작업 흐름 속도를 훨씬 가속화할 수 있습니다.

통합된 빌드 시스템

가장 복잡한 빌드를 처리하고 멀티코어 Mac의 성능을 극대화하며 iPad 및 iPhone 앱을 자동으로 서명 및 권한 설정하며 장비에 설치할 수 있습니다.

컴파일러

C, C++ 및 Objective-C를 위한 강력한 오픈 소스 LLVM 컴파일러는 Xcode에 내장되어 있으며 터미널에서 사용할 수 있습니다. 컴파일러를 사용하면 코드를 신속하게 컴파일할 수 있을 뿐만 아니라 iPhone, iPad 및 Mac의 CPU용으로 특별히 조정된 매우 빠른 앱을 제작할 수 있도록 코드가 Apple에 의해 최적화됩니다.

그래픽 디버거

앱을 Xcode 편집기에서 바로 디버깅할 수 있습니다. 원하는 변수 위에 마우스를 둔 다음 해당 콘텐츠를 상세히 살펴보고 'Quick Look'(훑어보기)을 사용하여 포함된 데이터를 확인하거나 마우스 오른쪽 단추를 클릭하여 변수를 조사 목록에 추가할 수 있습니다.

정적 분석

Xcode에 내장된 정적 분석기는 수천 개의 가능한 코드 경로를 단 몇 초 만에 시험하여 가려져 있거나 복제가 거의 불가능한 잠재 버그를 보고함으로써 응용 프로그램을 실행하기도 전에 코드에 있는 버그를 찾아냅니다. 더 알아보기

지속적인 통합

OS X Server의 기능인 Xcode Server는 Xcode 프로젝트를 지속적으로 빌드, 분석, 테스트하며 아카이브하는 서버 측 'Bot'도 제어합니다. Xcode IDE는 해당 Bot을 구성하고 매일 밤 이루어지는 빌드 및 테스트 결과를 분석하며 빌드를 망가뜨린 체크인이 무엇인지 추적할 수 있습니다.

XCTest 프레임워크

XCTest API를 활용하면 응용 프로그램 기능이 Mac, iPad, iPhone 또는 iOS Simulator에서 실행되는지 여부를 실험하는 단위 테스트를 손쉽게 구축할 수 있습니다.

자산 카탈로그

Xcode의 자산 카탈로그 편집기는 앱의 이미지를 동일한 자산에 대한 다양한 해상도로 그룹화하여 관리합니다. 빌드 시 Xcode는 자산 카탈로그를 최종 배포에 가장 효율적인 번들로 컴파일합니다.

Open Quickly(빠르게 열기)

command-shift-O 키를 누르기만 하면 기본 편집기를 사용하는 작업 공간에서 원하는 파일을 빠르게 열 수 있습니다. 보조 편집기에서 열 파일을 선택할 때에는 option 키를 길게 누르면 됩니다. Open Quickly(빠르게 열기)는 작업이 키보드 중심으로 진행될 때 필수적인 도구입니다.

OpenGL 프레임 캡처

단추 하나만 누르면 현재 진행 중인 iOS 장비의 OpenGL 프레임이 전체적으로 어떻게 표시되는지 캡처할 수 있습니다. Xcode는 셰이더 정보를 표시하며 해당 프레임이 Xcode 디버거에서 어떻게 조합되었는지를 시각적으로 구성할 수 있습니다.

스냅샷

프로젝트에서 크고 위험한 작업을 수행하기 전에 정상적인 상태의 프로젝트를 스냅샷으로 남겨 놓거나 Xcode를 통해 자동으로 스냅샷을 찍어 저장해 두면 나중에 쉽게 복원할 수 있어 안심할 수 있습니다.

리팩터링

코드와 사용자 인터페이스 디자인에 포함된 모든 대상체의 계층 구조나 이름을 변경하여 Objective-C 응용 프로그램을 단일 작업으로 재구성할 수 있습니다.

전체 문서

Xcode 내에서 검색하면 문서 뷰어가 Mac 개발자 또는 Apple Developer 웹 사이트에서 검색 항목을 찾습니다.

버전 편집기

Xcode의 버전 편집기에는 원인을 쉽게 찾을 수 있도록 커미트의 실행 일정이 표시되며 Subversion 및 Git Source Control(SCM) 시스템을 자유자재로 활용하여 그래픽으로 과거 시점으로 돌아가 소스 파일을 비교합니다.

Live Issues(실시간 문제)

워드 프로세서가 철자 오류를 강조 표시하는 것과 마찬가지로 Live Issues(실시간 문제)는 '빌드'를 클릭하기도 전에 일반적인 코딩 실수를 강조 표시합니다.

Fix-it(수정)

Xcode는 오류를 보고하는 데 그치지 않고 문제를 자동으로 수정할 정도로 지능적입니다. 코딩 실수를 범하면 Xcode가 곧바로 경고 메시지를 표시합니다. 이때 키보드 단축키 하나로 즉시 코드를 '수정'할 수 있어 코딩을 계속할 수 있습니다.

Quick Help(빠른 도움말)

프로그래밍하는 동안 자신의 코드에 대해 기록한 설명이 포함된 축약된 API 문서를 표시할 수 있습니다. 코드가 완료되는 동안 간략한 개요가 Utility(유틸리티) 영역에 사용 가능한 링크 및 참조 자료와 함께 표시됩니다.

Instruments

데이터 기록

어떤 도구로 어떤 응용 프로그램을 분석할지 Instruments에 알려 줄 수 있습니다. 빨간색 큰 단추를 클릭하기만 하면 데이터가 수집되고 추가 분석을 위해 저장됩니다.

육안 비교

시간에 따라 데이터가 기록되어 표시되므로 여러 번의 실행을 통해 수집된 동일한 데이터나 서로 다른 수집된 데이터 유형 간의 관계를 파악하는 것이 쉬워집니다.

드릴다운

그래프에서 데이터 스파이크를 점검하고 당시 어떤 코드가 실행되고 있었는지 파악한 다음 Xcode로 이동하여 쉽게 문제를 수정할 수 있습니다.

도구 라이브러리

하위 수준의 CPU, 네트워크 또는 파일 작업부터 고급 그래픽 및 사용자 이벤트 도구까지 라이브러리에서 번들로 제공된 도구를 선택할 수 있습니다.

좀비 탐지

응용 프로그램이 더 이상 사용할 수 없는 메모리에 액세스하려 하면 Instruments 내에서 찾기 힘든 응용 프로그램 오류와 충돌을 잡아낼 수 있습니다.

소스 보기

데이터 포인트를 드릴다운하여 CPU를 가장 많이 소모하는 메서드를 찾아내어 정렬하고 Instruments UI 내에서 바로 코드를 확인하여 문제를 정확하게 찾아낼 수 있습니다.

낮은 오버헤드 샘플링

Instruments 응용 프로그램을 실행하지 않고 키 하나만을 눌러 성능 데이터 샘플링 작업을 시작할 수 있습니다. 이 샘플링 작업은 매우 낮은 오버헤드로 충실도가 높은 정보를 수집합니다.

Instruments 사용자 설정

DTrace와 Instruments 사용자 설정 빌더를 사용하여 자신만의 Instruments를 만들 수 있습니다.

시스템 추적

이 도구는 리소스를 거의 사용하지 않습니다. Instruments에서 시스템의 모든 프로세스에 대한 정보를 기록하여 프로세스 상호 작용 시 발생하는 성능 병목 문제를 표시합니다.

OS X에 포함된 기타 도구

명령어 라인 개발자 도구

OS X SDK, 헤더 및 Apple LLVM 컴파일러와 Make와 같은 빌드 도구가 포함되어 있습니다. 이러한 도구를 사용하면 오픈 소스 소프트웨어를 설치하거나 터미널에서 고유한 UNIX 개발 작업을 수행하는 것이 쉬워집니다. OS X Mavericks를 사용하면 처음 소프트웨어를 빌드하려고 할 때 이러한 도구를 자동으로 다운로드할 수 있습니다. 또한 OS X Mavericks는 Xcode에서도 사용 가능하며 다운로드 페이지에서 무료로 다운로드할 수도 있습니다.

스크립트 언어

OS X은 AppleScript, Perl, Python 및 Ruby가 이미 설치된 상태로 제공됩니다. OS X은 UNIX이므로 Xcode 또는 OS X Mavericks와 함께 제공되는 명령어 라인 개발자 도구를 사용하여 인기 있는 오픈 소스 언어를 자신만의 버전으로 손쉽게 빌드할 수 있습니다.

Apple Event Bridge

AppleScript와 Automator의 주된 강점은 Apple 이벤트 엔진을 기반으로 하고 있어 OS X에서 작업을 손쉽게 자동화할 수 있다는 데 있습니다. 이 브리지를 통해 AppleScript와 동일한 메시지 전송 아키텍처를 사용하여 Objective-C, Ruby 및 Python 등의 추가 언어에서 응용 프로그램에 명령을 내리고 쿼리를 보낼 수 있습니다.

오디오 도구

AU Lab 도구를 사용하여 오디오 스트림을 믹싱하고 조작할 수 있습니다.

Terminal 2

Unicode 지원 및 탭, 색상을 통해 UNIX 셸에 액세스할 수 있습니다.

소스 제어: Git 및 Subversion

Xcode IDE는 IDE 내에서 바로 이러한 두 SCM 시스템을 모두 지원하며 명령어 라인에서도 이를 사용 가능하도록 해 줍니다.

UNIX 도구

make, autoconf, tar 및 zip 등 가장 많이 사용되는 모든 명령어 라인 도구입니다.

편집기

TextEdit, xed(Xcode의 편집기), vi, emacs

FileMerge

모든 텍스트 문서를 비교하고 차이점을 찾아내며 병합할 수 있습니다.