본문 바로가기

iOS 개발/UIKit

[iOS/UIKit] UIKit 개발 방법들 (Storyboard, NIBs, Programmatic)

Storyboard                                     

간단한 프로젝트에 대해서 빠르고 직관적으로 작성할 수 있지만 큰 스케일의 프로젝트에는 부적합하다. 여러 개발자가 작업할 때 Merge Conflict 다루기 힘들기 때문이다.

 

또한, 하나의 View Controller 만 쏙 빼내서 재활용하기 힘들다. 의존성 관계의 View Controller 들과 모두 함께 움직여야 한다.

NIBs(XIBs)

단일 View 를 빠르게 작성하고 필요에 따라 View Controller 에 붙인다. 즉, 단일 View 에 대해 재사용이 용이하다. 

 

Lazy Loading 방식으로 작동하므로 Memory Efficiency 는 좋지만, 이에 따른 Performance Latency 가 있을 수도 있다. 

Programmatic UI

Storyboard, NIBs 로 작성 가능한 모든 것들은 Programmatic 하게 작성 할 수 있고, Dynamic Layout 혹은 특정 Animation 작업들을 이 방식으로만 작성할 수 있다. 

 

UI 의 동작을 코드로 확인하기 때문에 내부 동작을 더 잘 파악할 수 있다. Merge Conflict 가 쉽다