본문 바로가기
Programming/APP

SwiftUI로 IOS 개발하기(1) - 입문, 프로젝트 생성

by 해도 Haedo 2022. 8. 1.

안녕하세요. 뉴핀입니다.

앞으로 모바일 애플리케이션 전반의 내용들로 찾아뵙게 될 것 같은데요.

첫 번째 주제로는 IOS 애플리케이션 개발 중에서도 SwiftUI를 사용하여 애플리케이션을 작성하는 방법에 대해 알려드리고자 합니다.

1. SwiftUI

SwiftUI는 IOS 애플리케이션을 작성할 때 사용할 수 있는 Interface의 한 종류인데요, 총 3가지로 선택할 수 있습니다.

  • Storyboard
    • 장점
      • UI Object들(Text, Button, TableView 등), 각각의 Attributes(너비, 높이, 이벤트 요소 등)의 파악이 미숙하더라도 둘러보며 알아갈 수 있다
      • UI Object를 UI로 구성할 수 있어서 비교적 접근성이 좋다
      • 화면 흐름이 한눈에 들어오기 때문에 파악하기 용이하다
    • 단점
      • 무겁다 
      • 큰 규모의 프로젝트에서 화면이 많아졌을 때 유지보수 면에서 소요가 커질 위험이 있다
  • XIB
    • 장점
      • 재사용성이 좋다
      • 충돌 위험이 적다
      • 단위 테스트가 비교적 용이하다
    • 단점
      • 성능이 느리다
      • 재사용 설계가 적절하지 않으면 자원이 낭비되기 쉽다
  • SwiftUI
    • 장점
      • UI Object 작성에 있어서 절차가 비교적 간결하다
      • 화면별로 Preview를 지원한다
      • 단위 테스트가 용이하다
      • 코드로 UI를 구성하지만 StoryBoard 안에서 작성하는 Programmatically UI보다 훨씬 직관적이다
    • 단점
      • 비교적 최신의 인터페이스로써 진입장벽이 다소 있는 편이다
      • AppDelegate와 SceneDelegate가 없다(별도로 구성 가능하다)
      • 참고 자료가 비교적 적다

대표적인 장단점은 위로써 말씀드릴 수 있을 것 같고

덧붙여 비교하자면

StoryBoard는 AndroidStudio의 xml을 해당 에디터에서 지원하는 UI로 화면을 구성하는 방식과 유사하고

XIB는 AndroidStudio의 xml을 코드상으로 화면을 구성하는 방식과 유사하며

SwiftUI는 Flutter에서 Dart로 화면을 구성하는 방식과 유사하다고 이해해주셔도 무방할 것 같습니다.

 

2. 프로젝트 생성

Xcode를 실행하여 Create a new Xcode project를 클릭하면

IOS 탭 -> App으로 선택 후 Next를 클릭해주시면 됩니다.

그러면 프로젝트 초기 옵션을 선택하는 화면이 나오게 되는데요

  • ProductName : 프로젝트 이름
  • Team : 팀 선택
  • Organization Identifier : 애플리케이션의 식별자에 사용되는 단체 bundle id, 통상적으로 도메인의 역순으로 작성
  • Bundle Identifier : 애플리케이션의 식별자
  • Interface : SwiftUI 선택
  • Language : Swift 선택

위 내용 참고하셔서 작성해주시고 Next를 클릭하고 생성해주시면 됩니다.

그럼 위와 같이 프로젝트가 생성됩니다.

감사합니다.

댓글