SlideShare a Scribd company logo
1 of 14
아이폰 개발 스터디
       한국인터넷서비스


위치 지정자 텍스트 사용자 정의
모바일 개발 고려사항
메모리

사용 요금

화면 해상도

앱속도

인터넷 사용 정도

사용자 입력 도구
아이폰 앱의 분류


뷰

뷰를 작동시키는 코드

그 외의 리소스
시작은 아이폰 SDK
http://developer.apple.com/iphone

SDK

Xcode

인스트루먼트(Instruments)

인터페이스 빌더(Interface Builder)

아이폰 시뮬레이터
Xcode


Classes

Other Sources

Resources

Frameworks
Xcode 역할


프로젝트 리소스 관리

코드와 리소스 편집하기

앱을 빌드하고 테스트하기
인터페이스 빌더

메인 윈도우

뷰

UI 컴포넌트 라이브러리

닙(*.xib) 파일 생성
.xib?



맥 OS X의 뿌리를 보여주는 재미있는 유산입니다.
UI 작동은 Objective-C
컨트롤은 무언가 일이 생기면 Objective-C의 이벤트
를 생성

버튼이 눌린 이벤트에 대해서 인터페이스 빌더는 뷰
컨트롤과 컨트롤러 클래스의 액션 메소드를 연결해
야 한다

연결될 수 있는 메소드는 IBAction 키워드가 붙는다

메소드를 헤더(.h)파일에서 선언하고 구현(.m)파일
Objective-C 코딩

헤더(.h)파일과 구현(.m)파일로 구성

헤더파일(.h)

구현파일(.m) - @synthesize 키워드는 헤더파일에
서 선언한 property에 대한 메소드를 생성하라고
컴파일러에게 명령한다
컴포넌트와 코드 연결

인터페이스 빌더를 이용해서 컴포넌트와 메소드
를 연결

IBOutlet이 코드와 UI객체를 연결하기 위해서 이
용

닙 파일안의 객체가 생성될 때 프로퍼티로 선언한
메소드가 호출되어 클래스의 변수와 연결되게 됩
니다
컴포넌트와 이벤트 연결
-(IBAction)buttonPressed:(id)sender;
           호출되는 메소드 이름     이벤트를 발생시킨



버튼의 이벤트로부터 파일 소유자 객체(File’s
Owner)로 연결하고, 그 이벤트가 실행할 메소드
를 선택

IBAction은 버튼이 눌린 경우와 같이 어떤 이벤트
가 발생했을 때 코드의 메소드를 실행하는 경우에
요약


닙(*.xib) 파일은 인터페이스를 화면에 보여주고,
인터페이스 빌더는 이것을 코드에 연결하고,
Objective-C는 실제 처리할 코드를 명시한다.
핵심정리
인터페이스 빌더는 화면에 UI를 XML로 표현한 닙 파일을 생성합니다.

코코아 터치 프레임워크에 의해서 닙 파일이 로드되고, 이때 해당 컴포넌트들이
클래스의 인스턴스로 생성됩니다.

닙 파일에 들어있는 객체를 코드와 연결하기 위해서는 IBOutlet이나 IBAction으
로 코드에서 지정해야 합니다.

Xcode가 코드와 파일을 관리합니다.

Xcode가 프로젝트의 핵심이며, 코드를 편집하거나, 앱을 빌드하거나, 실행하면서
디버깅할 수 있습니다.

아이폰 시뮬레이터를 사용하면 실제 디바이스가 없더라도 앱을 테스트해 볼 수 있

More Related Content

Similar to 1장 시작하기

[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기Moonbeom KWON
 
Custom Xcode Template (with VIPER)
Custom Xcode Template (with VIPER)Custom Xcode Template (with VIPER)
Custom Xcode Template (with VIPER)Bongwon Lee
 
swift를 이용한 카카오링크 만들기
swift를 이용한 카카오링크 만들기swift를 이용한 카카오링크 만들기
swift를 이용한 카카오링크 만들기KimDaeho
 
Codeveloper 개발기
Codeveloper 개발기Codeveloper 개발기
Codeveloper 개발기Jay Lee
 
Java script 강의자료_ed13
Java script 강의자료_ed13Java script 강의자료_ed13
Java script 강의자료_ed13hungrok
 
Unity Auto Build iOS
Unity Auto Build iOSUnity Auto Build iOS
Unity Auto Build iOSGiseok Lee
 
Builder, prototype, singleton pattern
Builder, prototype, singleton patternBuilder, prototype, singleton pattern
Builder, prototype, singleton patternYoonJong Choi
 
모바일앱개발 교육자료
모바일앱개발 교육자료모바일앱개발 교육자료
모바일앱개발 교육자료JinHyuck Churn
 
I phone 2 release
I phone 2 releaseI phone 2 release
I phone 2 releaseJaehyeuk Oh
 
Sencha touch2-sdk-tools-mac
Sencha touch2-sdk-tools-macSencha touch2-sdk-tools-mac
Sencha touch2-sdk-tools-macByoung Do Ahn
 
React native development
React native developmentReact native development
React native developmentSangSun Park
 
Sencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-windowSencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-windowByoung Do Ahn
 
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)Sang Don Kim
 
10장 아이패드에 대한 고려사항
10장 아이패드에 대한 고려사항10장 아이패드에 대한 고려사항
10장 아이패드에 대한 고려사항Jihoon Kong
 
센차 터치2 시작하기 | Devon 2012
센차 터치2 시작하기 | Devon 2012센차 터치2 시작하기 | Devon 2012
센차 터치2 시작하기 | Devon 2012Daum DNA
 
생산성을 높여주는 iOS 개발 방법들.pdf
생산성을 높여주는 iOS 개발 방법들.pdf생산성을 높여주는 iOS 개발 방법들.pdf
생산성을 높여주는 iOS 개발 방법들.pdfssuserb942d2
 

Similar to 1장 시작하기 (20)

[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
 
Custom Xcode Template (with VIPER)
Custom Xcode Template (with VIPER)Custom Xcode Template (with VIPER)
Custom Xcode Template (with VIPER)
 
swift를 이용한 카카오링크 만들기
swift를 이용한 카카오링크 만들기swift를 이용한 카카오링크 만들기
swift를 이용한 카카오링크 만들기
 
Context
ContextContext
Context
 
Codeveloper 개발기
Codeveloper 개발기Codeveloper 개발기
Codeveloper 개발기
 
Java script 강의자료_ed13
Java script 강의자료_ed13Java script 강의자료_ed13
Java script 강의자료_ed13
 
Unity Auto Build iOS
Unity Auto Build iOSUnity Auto Build iOS
Unity Auto Build iOS
 
Builder, prototype, singleton pattern
Builder, prototype, singleton patternBuilder, prototype, singleton pattern
Builder, prototype, singleton pattern
 
모바일앱개발 교육자료
모바일앱개발 교육자료모바일앱개발 교육자료
모바일앱개발 교육자료
 
I phone 2 release
I phone 2 releaseI phone 2 release
I phone 2 release
 
Sencha touch2-sdk-tools-mac
Sencha touch2-sdk-tools-macSencha touch2-sdk-tools-mac
Sencha touch2-sdk-tools-mac
 
React native development
React native developmentReact native development
React native development
 
Xamarin.Android(자마린.안드로이드) HelloWorld2_크로스플랫폼 자마린교육, 자마린을 잡으세요~
Xamarin.Android(자마린.안드로이드) HelloWorld2_크로스플랫폼 자마린교육, 자마린을 잡으세요~Xamarin.Android(자마린.안드로이드) HelloWorld2_크로스플랫폼 자마린교육, 자마린을 잡으세요~
Xamarin.Android(자마린.안드로이드) HelloWorld2_크로스플랫폼 자마린교육, 자마린을 잡으세요~
 
I os 1
I os 1I os 1
I os 1
 
Coded ui가이드
Coded ui가이드Coded ui가이드
Coded ui가이드
 
Sencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-windowSencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-window
 
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)
[Td 2015]70분에 보여준다. 웹표준을 지원하는 edge 브라우저부터 웹 앱 개발까지(김영욱)
 
10장 아이패드에 대한 고려사항
10장 아이패드에 대한 고려사항10장 아이패드에 대한 고려사항
10장 아이패드에 대한 고려사항
 
센차 터치2 시작하기 | Devon 2012
센차 터치2 시작하기 | Devon 2012센차 터치2 시작하기 | Devon 2012
센차 터치2 시작하기 | Devon 2012
 
생산성을 높여주는 iOS 개발 방법들.pdf
생산성을 높여주는 iOS 개발 방법들.pdf생산성을 높여주는 iOS 개발 방법들.pdf
생산성을 높여주는 iOS 개발 방법들.pdf
 

1장 시작하기

Editor's Notes