Hello World 앱을 위한 새 프로젝트 만들기
Posted on 2021-08-30 by GKSRUDTN99
Swift&Xcode
Xcode
새 프로젝트 시작하기
- Xcode 실행하기
- Create a new Xcode project 클릭
템플릿 선택하기
App
- 뷰를 사용하는 앱을 개발할 때 사용하는 템플릿. 가장 많이 사용하는 템플릿이다.
Document App
- 데이터를 저장할 수 있는 문서 기반의 앱을 개발할 때 사용하는 템플릿이다.
Game
- 게임 앱을 개발할 때 사용하는 템플릿이다. 그래픽 처리를 위한 OpenGL 게임 뷰를 생성해 준다.
Augmented Reality App
- 증강현실 앱을 개발할 때 사용하는 템플릿
Sticker Pack App
- 스티커 팩 앱을 개발할 때 사용하는 템플릿
iMessage App
- 아이메시지 앱을 개발할 때 사용하는 템플릿
프로젝트의 기본 정보를 입력한 뒤, Next 버튼을 클릭한다.
- Product Name
- 개발하려고 하는 앱의 이름을 입력한다.
- Team
- 개발자 프로그램에 등록된 ID 또는 팀을 입력한다.
- Organization Identifier
- 조직의 식별자를 입력한다. 일반적으로 도메인 주소를 역순으로 입력한다.
- ex) com.yourcompany
- Bundle Identifier
- 식별자이다. 'Orgarnization Identifer.Product Name'으로 자동 생성된다.
- Interface
- 사용하고자 하는 Interface를 선택한다. Storyboard 또는 SwiftUI를 선택한다.
- Life Cycle
- Interface에 따른 앱의 라이프 사이클을 선택할 수 있다.
- Language
- 앱 개발에 사용할 언어를 선택한다. Swift와 Obj-C 중 선택한다.
- Use Core Data
- IOS에서 제공하는 데이터 관리 툴킷의 사용 여부를 선택한다.
- Include Tests
- 앱의 동작 등을 자동으로 테스트 할 때 사용한다.
- 프로젝트 설정파일 수정하기
- Devices
- 앱이 지원하는 기기를 선택할 수 있다.
- Device Orientation
- 앱이 지원할 회전 방향을 선택할 수 있다.
- 세워진 상태(Portrait)
- 거꾸로 뒤집어진 상태(Upside Down)
- 왼쪽으로 회전(Landscape Left)
- 오른쪽으로 회전(Landscape Right) 중 선택 가능하다.
프로젝트의 파일들 살펴보기
AppDelegate.swift
- 앱의 실행 주기(Life Cycle)을 관리하는 내용의 스위프트 소스 코드가 들어있는 클래스 파일이다. 앱을 실행하거나 종료 또는 백그라운드를 실행할 때 하는 일들을 관리한다.
SceneDelegate.swift
- 사용자 인터페이스의 실행 주기를 관리하는 내용의 스위프트 소스코드가 들어있는 클래스 파일이다.
ViewController.swift
- 화면에 보이는 뷰에서 처리하는 내용의 스위프트 소스 코드를 담고 있는 클래스 파일이다. 일반적으로 프로그래머는 이 파일에서 코딩을 하게 되며 뷰 하나당 클래스 하나가 대응된다. 그러므로 스토리보드에서 여러 개의 뷰를 추가하면 뷰의 개수만큼 뷰 컨트롤러 클래스 파일이 필요하다.
Main.storyboard
- 앱의 내용을 시각적으로 쉽게 이해하고 프로그래밍할 수 있도록 그림으로 표현한 팔이이다. 이 스토리보드를 통해 화면에 보이는 내용 및 뷰와 뷰 간의 연결 관계 등을 표현할 수 있다.
Assets.xcassets
- 앱의 아이콘을 보관하는 저장소이다. 이곳에서 앱 아이콘을 설정해야 원하는 앱 아이콘으로 표시할 수 있다.
LaunchScreen.storyboard
- 앱이 실행될 때 잠시 나타나는 스플래시 화면을 만드는 스토리보이다.
Info.plist
- 앱이 실행되는 데 필요한 정보를 저장하고 있는 파일이다.
✔︎ M, A 아이콘의 의미
- 버전 관리와 관련된 아이콘으로, 버전 관리 기능을 선택했을 때만 나타난다.
- M : 이전 버전에서 파일이 수정(Modified)되었다는 뜻
- A : 이전 버전에서 파일이 새롭게 추가(Added)되었다는 뜻
Xcode의 화면 구성
네비게이터 영역
- 좌측에 위치한 영역을 의미한다. 여러 네비게이터들을 사용할 수 있다.
- 각 네비게이터들은 한 번 클릭하면 표시되고, 두 번 클릭하면 새로운 창이 열리면서 나타난다.
- 네비게이터의 종류는 가장 왼쪽부터 다음과 같다.
- 프로젝트
- 심벌
- 검색
- 이슈
- 테스트
- 디버그
- 브레이크 포인트
- 리포트
편집기 영역
- 가운데 위치한 영역을 의미한다.
- 소스 파일을 열어 소스를 직접 입력하거나 스토리보드를 이용하여 화면을 디자인 할 수 있는 영역
인스펙터 영역
- 오른쪽에 위치한 영역을 의미한다.
- 스토리보드를 편집할 때 버튼, 컨트롤러, 뷰 등 모든 객체의 속성을 편집할 수 있는 영역
디버그 영역
- 디버그를 진행할 때 원하는 변수의 값을 확인하거나 테스트할 목적으로 사용한 입출력 내용이 출력되는 영역입니다.
- 왼쪽의 변수 영역과 오른쪽의 콘솔 영역으로 구성된다.