'디버깅하는'에 해당되는 글 1건

  1. 2010.09.06 아이폰 어플 개발의 필수인 XCode에서 디버깅하는 방법
XCODE2010. 9. 6. 00:28
아이폰 어플 개발의 필수인 XCode에서 디버깅하는 방법

디버깅


Friday Section 은 원래 비공개 강의라서 동영상 강의가 없다. 단 2009년 버젼에서는 pdf가 제공됨으로 그걸 토대로 실습해 본다.


1.XCode 인터페이스 살펴보기 - 팁, 트릭(trick), 유용한 세팅
2.문서들 - 어떻게 찾나
3.좋은 디버깅 방법 - NSLog 외의 방법 살펴보기
4.디버깅 실습


1. XCode 인터페이스 살펴보기


- 연습문제를 다운로드 한다 -

맥 초보인 나로써는 다운받은 zip파일이 어디있나 한참 헤메이다가
Macintosh HD > 사용자 > XXX(유저명) > 다운로드 에 있다는 것을 발견. ㅡㅡ;
XCode 프로젝트로 옮기고 싶은데 이번엔 프로젝트 폴더가 어딨는지 몰라서 방황하다가
Macintosh HD > 사용자 > XXX(유저명) > 도큐먼트 에 있다는 것을 발견하고
힘들게 마우스로 끓어담겨 옮겼다. ㅡㅡ;;;

그래서 결국 최종 폴더는
Macintosh HD > 사용자 > XXX(유저명) > 도큐먼트 > Section-1-Exercises

■ XCode Walkthrough
•Splitter-working 프로젝트를 연다.


•프로젝트가 정상적으로 실행되는지 Build-and-Go를 해 본다. => 시뮬레이터가 기동되면서 Split 화면이 나오면 OK.


■ Splitter 데모에서 확인 해 볼 수 있는 기능들
•splitter가 어떻게 작동하는지 보여준다.
•추천하는 세팅:
    XCode->Preferences->Text Editing->Show line numbers (라인 번호 표시)

    XCode->Preferences->Text Editing->Show page guide (페이지 가이드 표시)

   


    XCode->Preferences->Debugging->On Start:->Show Console (콘솔 표시)
    XCode->Preferences->Debugging->On Start:->Auto Clear Debug Console (자동으로 디버깅 콘솔 클리어하기)

   


•심볼 셀렉터를 보여준다.


•툴바 유저정의

참고문헌 - Xcode Workspace Guide

2.문서들 - 어떻게 찾나


■ 어떻게 찾나
• 개발에 필요한 문서들은 Xcode안에 포함되어 있다
• 찾기 위한 두가지 방법
    Browse
    Search


■ 문서 검색 데모
•Browsing
    Help->Documentation
    Doc Sets->Apple iPhone OS 2.2.1->Subscribe
    “iPhone Reference Library” 페이지로 이동한다.
    왼쪽 트리메뉴를 이용하여 필요한 문서를 찾아내려간다.
    초보자에게 아주 유용한 문서들:
        “Getting Started”
        “Guides”
        “Sample Code”


•Search
    Browsing은 새로운 개념을 공부하고자 할때 유용하며, 검색은 코딩중에 문서를 보고 싶을때 유용하다.
    splitter-working 프로젝트로 돌아가서 Controller.m을 살펴보자.
    NSString위에서 ctrl+클릭(원버튼 마우스) 혹은 오른쪽 클릭을 하면 메뉴가 뜬다.

        -> Find Selected Text In API Reference 를 선택하면 리퍼런스가 열린다.

    

    결과 필터링: 툴바의 All Doc Sets 대신 Apple iPhone OS 3.1 Library 를 선택한다.

 

    결과 필터링: 툴바의 참조 API 언어 옵션에서 C 와 Obj C 만 남겨두고 나머지 언어는 체크를 없앤다.


    리퍼런스를 둘러보며 자바 API 리퍼런스와 비교해 본다.
    ctrl-F for capital
    splitter-working 프로젝트로 돌아와서 resignFirstResponder가 무엇을 하는 기능인지 알아보라.


3.좋은 디버깅 방법


■ 두가지 디버깅 방법


•그렇게 멋지지 않은 디버깅 방법: NSLog
    몇몇 상황에서는 유용할 수도 있다... 아마도.
    변수들을 직접 조사하는것 보다 훨씬 불편하다.


•멋진 방법: 디버거(Debugger)
    버그 수정을 위한 가장 좋은 방법
    브레이크 포인트를 설정 한 후, 코드를 한줄씩 실행하며 변수들을 조사한다.

4.디버깅 실습

■ NSLog
    Controller.m 을 연다.
    NSLog를 이용하여 textField.text 값을 찍는다.
    실행한다 (Build and go)
    콘솔에서 로그를 확인 한다.


    => 문제없이 값을 확인 할 수 있지만 쓸데없는 코드를 적어줘야 한다.


■ Debugger
    다음 코드 부분에 브레이크 포인트를 설정한다. NSString *string = textField.text;
    실행한다. (Build and go)
    브레이크 포인터 이후는 한줄 씩 실행(Step over) 한다.
    변수위에 마우스를 올려놓으면 값이 팝업으로 뜨게 된다.
    디버그 윈도우를 이용하여 값을 알아볼수 있다.

■ 혼자 실습해보기
•Warmup-working 프로젝트를 실행하여 무엇을 하는지 알아보라.
•Splitter-working 프로젝트를 실행하여 무엇을 하는지 알아보라.
•6가지 연습문제를 아래의 방법으로 풀어보라:
    1) 프로젝트에서 Run 또는 Go 대신 Debug 로 실행한다.
    2) 어떤 에러가 뜨는지 확인한다.
    3) 어디서 에러가 나는지 찾아본다.
    4) 에러를 수정한다.
    5) 왜 에러가 났는지 이해한다.


■ 6가지 연습문제에 대한 힌트
•Warmup-exercise1
    매우 간단하게 에러를 찾아내서 수정 할 수 있을 것이다.
•Warmup-exercise2
    힌트 1: 디버거 윈도우(debugger window)를 살펴보라.
    힌트 2: 마지막으로 출력된 메세지를 살펴보라.
•Warmup-exercise3
    힌트 1: 디버거 윈도우(debugger window)를 살펴보라.
    힌트 2: API를 찾아보라.
•Splitter-exercise1
    힌트: XCode 내에서는 문제를 수정 할 수 없을 것이다.
•Splitter-exercise2
    힌트: 디버거 윈도우(debugger window)를 살펴보라.
•Splitter-exercise3
    힌트 1: 에러 메세지는 도움이 안된다.
    힌트 2: 마지막 강의에서 나온 프로퍼티와 메모리 관리에 대해 생각해보라.


■ Mac OS X 주요 단축키
•Mac OS X 초보자를 위한 팁:
    -x/c/v: cut/copy/paste
        ※ => 명령키
    -Space bar: spotlight
        spotlight를 통해 어프리케이션 실행, 계산, 파일 검색이 가능하다.
    w: 현재 윈도우를 닫는다.
    q: 현재 어플리케이션을 닫는다.
    ~: 다른 윈도우로 이동한다. Windows의 Alt+Tab과 동일한 기능
    -Delete: 파일 삭제 (휴지통으로 이동)


■ XCode 주요 단축키
•XCode 초보자를 위한 팁:
    Esc: 자동 완성
        클래스나 메소드, 변수등을 입력할때 사용 가능하다.
        시험삼아 “[NSString “ 를 입력한후 Esc를 누르면 NSString에서 사용 가능한 메소드 일람이 표시된다.
    Enter: Build and Go
    /: 커멘트화 또는 비 커멘트화 시킨다.
    }: 오른쪽으로 들여쓰기 (Indent right)
    {: 왼쪽으로 들여쓰기 (Indent left)
    ↑: 헤더/소스 파일간을 이동한다.
        = 옵션키




출처 : http://blog.naver.com/PostView.nhn?blogId=katchup00&logNo=10079461916
Posted by 오늘마감

댓글을 달아 주세요