• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

질문있습니다.

21.06.19 17:55 작성 조회수 105

0

1. 데이터 패싱 파트에서 메인 스토리보드에 뷰 컨트롤러를 거의 추가하지 않고, Swift파일을 만들면서 nib파일을 만드는 방식으로 수업이 진행되는데, 그 이유는 nib파일을 생성하면서 클래스와 자동으로 매칭이 되기 때문에.. 말고 특별한 이유가 있을까요?

2. 스토리보드에 뷰컨트롤러가 추가 + 프로젝트 네비게이터에 스위프트 파일 추가 / 프로젝트 네비게이터에 스위프트 파일 추가와 nib파일이 생성 이 두 방법을 비교해봤을 때 스위프트 파일이 늘어나는 것은 같으니 비교가 되는 부분은 스토리보드에 뷰컨트롤러가 많아지는 것과 프로젝트 네비게이터에 nib파일이 많아지는 것 두 가지일텐데...

스토리보드에 뷰컨트롤러를 추가하는 경우 생성한 클래스와 매칭을 해줘야한다는 점이 있지만, 흐름이 직관적으로 눈에 들어온다.

nib파일로는 흐름이 직관적으로 눈에 들어오지 않지만, 클래스와 매칭을 따로 해주지 않아도 된다.

각 각 장단이 있는 것 같습니다.

실무에서는 어떠한 방식을 더 사용하시는지, 사용하셨는지 궁금합니다.

답변 1

답변을 작성해보세요.

0

애플에서 스토리보드를 만든 컨셉은 여러개의 뷰컨트롤러를 한 스토리보드에 넣어서 화면의 흐름을 보면서 작업하라는 이유 였습니다.

 

이게 처음에 나왔을때는 꽤 좋을 것 같다고 예상했는데

개발자들이 실제 사용해보니 협업시 git등의 형상관리시 충돌나는 문제가 계속 발생되고

고사양 맥이 아니고서는 스토리보드에 오브젝트나 뷰컨이 조금만 많아져도 열리는데 수초내지 수십초의 로딩시간이 걸려 버린다는 불편한 문제들이 나타나게 됩니다.

 

상황이 이러니 실제 개발자들은 애플에서 의도한 대로 사용하는게 아닌

하나의 스토리보드에 하나의 뷰컨을 넣어서 만드는 방식을 주로 사용하게 됩니다.

그러다보니 자연스럽게 nib과의 차이점도 거의 없어지게 되고 그게 그거 같다는 느낌까지 주게 됩니다.

 

실무에서는 보통 아래처럼 구분 하는 경우가 많습니다.

- nib은 뷰컨트롤러와 상관없는 view만으로 구성하고 싶을때 nib안에서 가능합니다.

- 스토리보드는 뷰컨트롤러가 없는 view만 만들수 없고 항상 뷰컨트롤러 또는 뷰컨트롤러에 종속된 view들만 만들 수 있습니다.