heoblitz
Blitz.dev
heoblitz
전체 방문자
오늘
어제
  • 분류 전체보기 (36)
    • iOS Dev (22)
      • iOS (3)
      • Swift (7)
      • Testing (3)
      • Reactive (2)
      • Architecture (2)
      • Layout (1)
    • PS (4)
      • Algorithm (4)
    • Other (9)
      • Springboot (3)
      • Linux (1)
      • Python (1)
      • Java (1)
      • React (1)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • SWIFT
  • Code Review
  • codingtest
  • URLSession
  • github
  • ARC
  • springboot
  • IOS
  • XCTest
  • java
  • Git
  • xcode
  • intellij
  • swift 5
  • chrome-extension
  • swift 윈도우
  • Test Code
  • 오픈소스
  • gradle
  • RxSwift

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
heoblitz

Blitz.dev

iOS StoryBoard vs Code Base 간단 정리
iOS Dev

iOS StoryBoard vs Code Base 간단 정리

2020. 8. 10. 14:14

storyboard

장점

  • 결과물을 예측하기 쉬움
  • 속성을 쉽게 확인가능
  • 소스코드를 일일히 파악하지 않아도 UI 확인 가능

 

단점

  • 무겁다 ( 스토리 보드 분리로 해결 가능 )
  • 링크가 끊어졌을 때 파악하기 힘들다 ( IBOutlet, IBAction )
  • 협업 문제 ( Diff 로 알기 힘들고, Conflict 나면 해결 어려움 )

 

 

 

Code Base

장점

  • 가볍다 ( 코드만 나와 있으므로 )
  • Diff 만 보고 파악하기 쉽다
  • Conflict 발생 가능성이 낮아진다

 

단점

  • 해당 컴포넌트를 숙지하고 있어야 한다.
  • 어떤 화면이 만들어질지 파악하기 힘들다.
  • 코드가 상당히 길어진다

 

code base 기반 작성법

 

Auto Layout 사용 / Auotoresizing 은 더 이상 사용 X

  1. NSLayoutConstraint 를 일일히 작성
  2. Visual Foramt Language 사용
  3. Anchor 사용

 

추가적으로 Snapkit 과 같은 라이브러리를 사용하여

코드 가독성과 개발 효율성을 늘릴 수 있다.

 

 

어떤 방식이 좋을까?

 

대부분 개발자분들의 공통된 의견은 "팀과의 협의를 통해 결정하고, 필요하면 혼용한다." 였습니다.

 

StoryBoard 로만 구현이 불가한 UI 도 존재하기 때문에, 두 영역 모두 학습해야 한다고 생각됩니다.

 

 

 

 

 

참고:
http://letswift.kr/2019/resources/Session10_JungwooLEE.pdf Let's Swift 2019 섹션 9

 

'iOS Dev' 카테고리의 다른 글

iOS 에서 Call Stack 으로 버그 해결하기  (0) 2021.07.10
Swift 첫 오픈 소스 기여 후기 ( Open Source PR )  (0) 2020.09.10
Xcode "Plain Style unsupported in a Navigation Item" 해결하기 ( StoryBoard )  (0) 2020.07.04
    'iOS Dev' 카테고리의 다른 글
    • iOS 에서 Call Stack 으로 버그 해결하기
    • Swift 첫 오픈 소스 기여 후기 ( Open Source PR )
    • Xcode "Plain Style unsupported in a Navigation Item" 해결하기 ( StoryBoard )
    heoblitz
    heoblitz
    iOS, Swift 관련 포스팅을 주로 작성합니다.

    티스토리툴바