IOS 개발/개념
[Swift] Storyboard
얌자
2023. 3. 16. 01:44
Swift에서 UI를 그려주는 방식에는 두가지가 있습니다.
- 코드
- Storyboard
이 글에서는 Storyboard가 무엇이며 사용할때의 장단점을 다뤄보겠습니다.
1. Storyboard 란 🛹
IOS Application의 UI의 흐름을 시각적으로 표현한 것으로 화면의 내용과 화면간의 연결을 보여줍니다.
viewController와 view로 이루어진 scene의 집합으로 이루어져 있고 scene들은 두 개의 viewController의 전환을 나타내는 segue 객체 (아래 이미지의 화살표)로 연결되어 있습니다.
2. 장단점
장점
- 결과물을 예측하기 쉽고 속성을 쉽게 확인 가능
- 코드를 일일히 작성하지 않아도 되기 때문에 시간 절약
- segue 객체를 통해 scene들을 연결하기 때문에 앱 내에서의 화면 전환이 간편
단점
- 화면이 많아지면 로딩이 오래걸림
- 화면의 디자인이 복잡할 경우 가독성이 떨어질 수 있음
- Storyboard 파일이 깨지거나 충돌할 경우 복구가 어려울 수 있음
- 협업 시 merge conflict 해결이 어려움
- Storybaord를 열기만 해도 수정사항이 생기므로 git add . 할 때 구분 필요
코드로 UI를 작성했을 때의 장단점도 알아보겠습니다.
장점
- 코드만 나와 있으므로 비교적 가벼움
- Conflict 발생 가능성이 낮아짐
- 코드 재사용 용이
단점
- 해당 컴포넌트 숙지 필요
- 어떤 화면이 만들어질지 파악하기 힘듬
- 매우 오래전에 작성된 코드라면 리팩토링이 더 어려워짐