Xcode 프로젝트 ui 개발 관련 질문드립니다.

태그: ,

3 답변 글타래를 보이고 있습니다
  • 글쓴이
    • 이연
      참가자
      • 글작성 : 3
      • 답글작성 : 3

      안녕하세요 야곰님.

      Ios개발이 처음이다 보니까 개발하는데 방향을 잡는데 어려움이 많습니다ㅜ
      그중에 하나가 ui 개발에서 스토리보드를 사용해야 하는지 코드로 작성해야하는지의 고민입니다.

      현재 탭바로 메뉴를 만들어서 메뉴별로 기능을 추가하면서 프로젝트를 만들고 있는데요.
      기능이 추가될 때마가 앱의 화면수가 증가되고 스토리보드가 많아져서 무거워지고 빌드도 오래걸려서 코드로 작성하는 방향으로 바꿔야 하는지 고민입니다.
      나중에 다 큰 프로젝트를 진행하거나 유지보수 등 여러상황을 고려할 때 어떤 방향으로 나아갈지 조언부탁드립니다!

    • 멍단비
      참가자
      • 글작성 : 10
      • 답글작성 : 98

      이게 약간 아빠가좋아 엄마가좋아 느낌이라 어떻게 하라고 말씀드리기가 애매한데요.
      스토리보드를 쓰시다가 코드로 넘어오시는 분들의 대표적인 이유는 말씀하시는 것처럼 빌드가 오래걸리는 부분과 협업이 어렵다는 부분입니다.
      물론 단점만 있는 것은 아니니까 장점도 많이 있겠죠. 그래서 저도 섞어쓰긴 합니다. ㅎㅎ

      어쩃건, 일단 둘 다 당연히 할 줄 알아야 하니 코드를 해보시는게 맞구요. 본인이 필요를 느끼셨다면 아예 넘어오셔도 괜찮다고 봅니다.
      그리고 아직은 실무에서 많이 안쓰지만 조만간 엄청 쓸 것으로 예상되는 SwiftUI 또한 코드니까 어차피 하시긴 하셔야 할 거에요.

      끝으로, 재미있는 우연인지 저번달에 야곰닷넷에서 투표를 진행했습니다. 한 번 가서 슥 보시기 바라요.

      • 이연
        참가자
        • 글작성 : 3
        • 답글작성 : 3

        답변 감사합니다.

        적절히 섞어쓰기 위해서 UI를 코드로 개발하기 위한 공부뿐만 아니라 SwiftUI까지 ~

        Swift 개발자가 되기 위해 더욱 노력해야 한다는걸 다시금 깨닫게 됩니다.

        저와 같은 고민을 하는 분들이 많다니 동질감을 느낌과 동시에 투표결과를 보니 고민거리가 덜어진것 같아 한결 가벼운 느낌입니다! 감사합니다!

    • 야곰
      키 마스터
      • 글작성 : 37
      • 답글작성 : 580

      이 링크를 확인해보세요

      덧붙여보면 스토리보드 하나에 모두 다 구현하지 않고 스토리보드 레퍼런스를 활용하면 스토리보드를 여러개로 나눠서 쓸 수 있습니다 🙂

      • 이연
        참가자
        • 글작성 : 3
        • 답글작성 : 3

        답변 감사합니다. 야곰님!

        마침 저와 같은 고민을 하는 분들이 많다는 것에 동질감을 느낌과 동시에 투표결과를 보니 고민거리가 덜어진것 같아 한결 가벼운 느낌입니다!

        story reference 개념을 처음 알게 됐는데 아직 스토리보드를 주로 사용하는 저에게 개발하는데 매우 유용하게 사용할 것 같아요! 감사합니다:)

    • 심스톤
      참가자
      • 글작성 : 0
      • 답글작성 : 3

      저는 스토리보드로 입문해서 지금은 Only 코드로만 UI를 작성중인데요.

      일장일단이 있습니다.

      둘다 써보니 지금은 상황에 맞게 적절히 섞어 쓰는게 맞다는 생각을 가지고 있긴 한데

      최근 코드로만 계속 짜다보니 이젠 스토리보드에 손이 잘 안가는 것도 사실이네요.

      일단 둘 다 써본 입장에서 장단점을 적어보자면

      스토리보드

      장점

      • UI를 직관적으로 확인할 수 있다.
      • 앱의 전체적인 흐름을 눈으로 확인하기 쉽다.
      • 각 UI 오브젝트의 속성들을 쉽게 적용시킬 수 있다.

      단점

      • 뷰가 많아지면 심각하게 느려진다.(스토리보드를 쪼개 쓰는 것으로 어느 정도 해소 가능)
      • 한 뷰에 중첩되는 UI가 많아지기 시작하면(상태에 따라 hidden이 뷰가 많아질 경우) 원하는 view를 선택하기 힘들어진다. 이 땐 View hierarchy를 사용해야 하는데 업무효율이 많이 떨어진다. (이 view 저 view 선택할 때마다 View hierarchy를 계속 뒤져야 하기 때문에)
      • 협업시 Merge conflict가 빈번하다.

       

      코드

      장점

      • 원하는 모든 것을 할 수 있다. (스토리보드가 되는 건 코드에서 다 할 수 있지만 코드에서 할 수 있어도 스토리보드에선 할 수 없는 것이 많다.)
      • 협업시 Merge conflict를 해결하기 쉽다.

      단점

      • 직관적이지 않다. 모든 UI를 머릿속에서 상상해서 작성하고 빌드해서 확인해야 되기 때문에 숙련도가 오르기 전까진 업무효율이 극단적으로 떨어진다.
      • 스토리보드에서 마우스로 쓱쓱하면 그려지는 UI의 모든 요소를 직접 타이핑해야 하기 때문에 속도가 빠르진 않다.

       

      대충 지금 생각나는대로 적어보니 왠지 양쪽 다 단점들만 부각된 거 같은데요;;; 장점들은 설명은 간단하지만

      진짜 저게 큰 장점인지라ㅎㅎㅎㅎ

      참고가 되었으면 좋겠습니다.

      • 이 답변은 심스톤에 의해 4 years 전에 수정됐습니다.
      • 야곰
        키 마스터
        • 글작성 : 37
        • 답글작성 : 580

        경험공유 고맙습니다 😀

      • 이연
        참가자
        • 글작성 : 3
        • 답글작성 : 3

        답변 감사합니다!

        저도 스토리보드의 단점때문에 코드로 작성하기 위해서 공부중에 있습니다!

        경험을 토대로 알려주신 스토리보드와 코드의 장단점을 잘 고려해서 적재적소에 사용하는 훈련을 해야할 것 같아요!

        고민하는데 도움주셔서 감사합니다^_^

3 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.

logo landscape small

사업자번호 : 743-81-02195
통신판매업 신고번호 : 제 2022-충북청주-1278 호
고객센터 : 카카오톡채널 @yagom