준호씨의 블로그

swift 아이폰앱 - hello world 앱 만들기 본문

개발이야기

swift 아이폰앱 - hello world 앱 만들기

준호씨 2016. 11. 19. 15:12
반응형
두번째에 있는 Create a new Xcode project 를 선택


playground 는 코드를 간단히 테스트 해 볼 수 있는 곳. 코드를 작성 하면 화면 우측에 값이 나오고 그래프를 보여주기도 하여 연습 하기 좋다.
check out an existing project 는 git 이나 svn 같은 곳에 올라온 프로젝트를 불러 올 수 있음.


템플릿 선택창이 나오면 Single View Application 선택 한다.


템플릿은 프로젝트의 기본틀을 미리 만들어 둔 프로젝트들 이라고 보면 된다. swift 언어로 앱을 만들 수는 있지만 기본 틀을 잡아 주지 않으면 iOS 개발 문서 보고 하나하나 생성 해 줘야 될 것이다.

Single View Application - 단순한 뷰를 이용한 앱개발용 템플릿이다. 일반적으로 많은 앱들이 이 방식을 쓸 것 같다.
Game - 게임개발을 위한 템플릿. OpenGL 게임 뷰를 만들어 주는 듯.
Master-Detail Application - 목록 기반 앱을 만들 때 사용한다고 함. 목록을 띄우고 선택 하면 상세 내용 보는 앱.
Page-Based Application - 앨범, e-book 처럼 페이지 넘기는 효과를 지원
Tabbed Application - 탭을 이용하여 뷰를 바꾸는 앱. 전화, 시계 등의 앱 구현에 적합
나머지는 생략

프로젝트 기본 정도 기입


Product Name - 앱 이름
Oraganization Name - 개발자 이름, 기관 이름
Organization Identifier - 도메인 주소 역순 입력. 아무거나 해도 되긴 하지만 앱스토어에 등록 하려면 제대로 URL 이 있어야 된다고 함
Bundle Identifier - Organization Identifier 와 Product Name 으로 자동 생성 됨. 앱스토어 등록시 고유 식별자로 사용
Language - Swift 나 Objective-C 선택 가능
Devices - 공용앱은 Universal
Use Core Data - iOS 에서 제공하는 데이터 관리 툴킷 사용 여부
Include Unit Tests - 유닛 테스트
Include UI Tests - UI 테스트

Create 를 눌러서 마무리 한다



템플릿에 의해 기본 파일들이 생성 된 것을 볼 수 있다.


AppDelegate.swift - 앱의 실행 주기(Life Cycle)를 관리하는 스위프트 소스 코드가 들어 있음. 실행, 종료, 백그라운드 실행 할 때 하는 일들 관리. 간단한 앱 만들 때는 그냥 두면 됨
ViewController.swift - 뷰 처리 내용. 클래스 하나에 뷰 하나. 뷰를 추가 하면 클래스도 그에 대응 하여 추가 해야 됨
Main.storyboard - 뷰와 뷰 간의 연결 관계등을 그림으로 표현
Assets.xcassets - 앱의 아이콘 저장소
LaunchScreen.storyboard - 앱 실행시 나타나는 스플래시 화면의 스토리보드
info.plist - 앱 실행시 필요한 정보 저장


화면 상단의 Build and then run the current scheme 를 누르면 빌드 하고 실행 시킨다.



시뮬레이터가 구동 중이다. 구동 시간이 좀 걸린다.



작성한 내용이 없어서 아무 내용도 없다


스토리보드 파일을 선택 하면 다음과 같이 나온다.



스토리보드에서 뷰 꾸미기


Show the Object library 를 선택하면 사용 가능한 객체들이 나타난다.

view 를 꾸며 준다.



화면 우측 상단에 Show the Assistant editor 를 선택한다.


스토리보드와 코드가 같이 나온다.

객체를 마우스 우클릭 한채로 코드에 끌어다 놓으면 아웃렛변수나 액션함수를 추가 할 수 있다. 해당 객체와 연동 되는 코드를 자동으로 만들어 준다.


물론 직접 코딩 하는것이 익숙하면 그렇게 해도 되지만 객체 이름을 미리 정해주고 실수없이 코드를 작성해야 되니 번거롭고 실수할 여지가 있다.

액션함수는 다음과 같이 대충 작성한다.
    @IBAction func btnSend(_ sender: UIButton) {
        lblHello.text = "Hello, " + txtName.text!;
    }

프로그램을 실행해서 input box 에 글자를 넣고 Send 버튼을 눌렀을 때 Hello 가 "Hello, 입력한 내용" 으로 바뀌면 성공


만드는 방법 동영상도 만들어서 올려 봐야 겠다.


반응형
Comments