본문 바로가기
Programming/iOS

iOS 개발을 시작하려면 꼭 알아야 할 것들

by 조현성 2025. 6. 27.

썸네일

나도 앱을 만들 수 있을까?

나는 원래 앱 개발자가 아니었다. Swift도 몰랐고, Xcode는 실행해 보긴 했지만, 프로젝트를 완성해 본적이 없었다. 하지만 어느 날 문득, "내가 직접 쓰고 싶은 앱을 만들어볼 수는 없을까?" 라는 생각이 들었다. 마트에서 식재료를 사놓고는 소비기한(유통기한)이 지나서 버리는 일이 반복되면서 "언제까지 이렇게 살 거야?" 라는 반성이 들었고, 소비기한(유통기한) 관리앱을 만들기로 결심했다. 그게 지금 나의 첫 앱이 된 세이브푸드(SaveFood)의 시작이었다.

 

세이브푸드 iOS앱 드디어 출시

지난 몇 달간의 치열한 개발 여정이 드디어 결실을 맺었다. 2025년 6월, 직접 기획하고 개발한 iOS앱 세이브푸드(SaveFood)가 애플의 심사를 통과하고 앱스토어에 정식 출시 되었다. 이 글은 그 첫 시

johjo.tistory.com

Xcode 설치부터 시작해보자

Xcode는 iOS 앱 개발을 위한 필수 도구다. Mac App Store 에서 Xcode를 검색 한 후 설치를 해보자. (용량이 크므로 최소 40~50GB를 확보해 두어야 한다)

Xcode

설치가 끝나면 iOS 시뮬레이터까지 포함되어 있어서 iPhone 없이도 앱 테스트가 가능하다. 이제부터는 "코드를 쓰는 게 아니라, 앱을 만든다"는 마인드로 전환할 준비를 해야 한다.

Swift 언어, 겁먹지 말고 시작해도 된다

Swift는 Apple이 만든 프로그래밍 언어로, iOS 앱을 만들 때 사용된다. 처음 Swift를 배우기 시작했을 때, 다른 언어보다 문법이 꽤나 직관적이라는 생각이 들었다. 아래 예시처럼 변수 선언도 간결하다.

let name = "조현성"
var age = 40
  • let은 상수 (변하지 않는 값)
  • var는 변수 (변경 가능한 값)

✅ Swift를 배울 수 있는 추천 자료

💡팁 : 처음에는 앱을 만들면서 필요한 만큼만 배우는 방식도 괜찮다. "Swift를 완벽히 익혀야 앱을 만들 수 있다"는 생각은 버려도 된다.

SwiftUI vs UIKit - 처음에는 SwiftUI를 추천하는 이유

앱 개발에는 UIKit과 SwiftUI라는 두 가지 UI 프레임워크가 있다. 요즘은 애플이 강력히 SwiftUI를 밀고 있고, 나 역시 SwiftUI로 개발을 시작 했다. SwiftUI의 장점은 코드가 간결하고, 실시간 미리보기가 가능하며, 선언형 방식으로 UI상태 관리가 편하다. 예를 들어, 버튼 하나를 SwiftUI로 만들면 이렇게 간단하다.

Button("클릭하세요") { 
    print("버튼이 눌렸습니다")
}

 

UIKit으로 같은 기능을 하려면 최소 4~5줄은 필요하다. 초보자라면 SwiftUI로 시작하는 것이 훨씬 더 빠르게 UI를 구현하고, 흥미를 느낄 수 있다.

앱 구조는 MVVM으로 시작해보자

SwiftUI를 쓴다면 자연스럽게 따라붙는 구조가 MVVM(Model-View-ViewModel)이다. 처음 MVVM을 접했을 때는 "너무 복잡해 보이는데?"라는 생각이었지만, 프로젝트가 조금만 커지면 그 진가를 알게 된다. 각 역할은 다음과 같다.

  • 모델(Model) : 데이터구조 (예 : User, Storage, Food 등)
  • 뷰(View) : 사용자 인터페이스 (예 : SwiftUI 화면)
  • 뷰모델(ViewModel) : Model과 View를 중개하며, 로직 처리 (예 : 데이터 불러오기, 저장 등)

처음엔 어렵게 느껴질 수 있지만, 작은 프로젝트라도 ViewModel을 분리해보면 훨씬 유지보수가 쉬워진다.

Firebase? 왜 다들 쓰는 걸까?

앱을 만들면서 로그인, 데이터 저장, 푸시 알림 같은 기능이 필요해졌고, 나는 Firebase를 선택했다. 이유는 단순했다. 구글 로그인, 이메일 인증, 클라우드 저장, 푸시 알림까지 대부분을 Firebase 하나로 해결할 수 있었기 때문이다.Firebase에는 Authentication(로그인), Firestore(NoSQL 데이터베이스), Firebase Storage(이미지 저장), Cloud Messaging(푸시 알림) 등이 자주 사용 된다.

 

처음엔 설정이 좀 어려울 수 있다. 하지만 문서를 따라하면서 하나씩 연동하면 어느 순간 내 앱이 '진짜 앱' 같아진다.

앱 개발, 진짜로 할 수 있을까?

처음 앱을 만들 때, "진짜로 내가 이걸 완성할 수 있을까?" 라는 걱정이 있었다. 하지만 중요한 건 작게 시작해서 점점 쌓아가는 것이었다. 처음엔 버튼 하나, 그다음엔 화면 전환, 그다음엔 로그인 기능... 그렇게 천천히 진행하다 보니, 3개월 뒤엔 지인들에게 배포했고, 결국 앱스토어 심사를 통과 했다.

앱스토어에 출시하려면? 

앱을 완성했다고 끝이 아니다. 앱스토어에 출시하기 위해선 Apple Developer 계정 가입(연 129,000원)과 앱 심사 통과라는 마지막 관문이 남아있다. 심사에서 처음엔 자주 거절당했다. 가이드라인 하나하나를 읽고, 리뷰어가 요구하는 내용을 수정하면서 ㅈ머점 앱이 다듬어졌다. 그 과정도 내게는 훌륭한 학습이었다.

추천하는 개발순서 (입문자용 로드맵)

  1. Xcode 설치
  2. Swift 기초 문법 학습 (let/var, if, for, struct, enum 등)
  3. SwiftUI로 화면 구성 실습 (Text, Button, NavigationStack 등)
  4. MVVM 구조 이해 및 적용
  5. Firebase 연동 (로그인, 데이터 저장)
  6. 간단한 앱 제작 → TestFlight 배포
  7. 앱스토어 제출 및 출시

마무리 - 나도 시작했으니, 당신도 할 수 있다

iOS 개발은 생각보다 덜 무섭고, 덜 복잡하다. 물론 중간중간 "이걸 내가 왜 하고 있지?" 싶을 때도 있다. 하지만 앱이 하나씩 완성되어 갈 때의 그 쾌감은 진짜 말로 다 설명할 수 없다.

 

나도 아무것도 모르고 시작해서 지금은 앱 하나를 세상에 내놓았다. 지금 이 글을 읽고 있는 당신도, 오늘부터 Xcode를 열고 "Hello, world"를 띄워보길 바란다. 그게 당신 앱 개발자의 첫걸음이 될 것이다.