iOS-Children-Study / Growth-Study

성장로드맵 체크포인트 기반 스터디 레포입니다.
1 stars 0 forks source link

정영오_0607 #10

Open ghost opened 1 year ago

ghost commented 1 year ago

Human Interface Guideline

UITableView, UICollectionView, UIStackView 등의 용도 차이

UITableView 는 단일 column 으로 표현되는 데이터를 표시할 때, UICollectionView 는 복수의 row, column 으로 표현되는 데이터를 표시할 때, UIStackView 는 여러 디자인 요소를 단일 row 또는 단일 column 으로 표현하고 싶을 때 사용합니다.

단일 column 으로 표현되는 데이터를 표시하지만 복잡한 UX/UI 를 구현해야 하는 경우 UICollectionView 를 사용하는 경우도 많습니다. UICollectionViewLayout 등을 이용하면 UITableView 보다 UICollectionView 를 사용하는 것이 더 많은 부분을 커스텀하여 사용할 수 있기 때문입니다.

Lists and tables

Collections

StackView

앱 구조에 영향을 주는 UI Component 시스템의 용도와 차이

HIG 에서는 Components 항목을 8 가지 하위 항목으로 나누어 설명하고 있습니다. 이 중 iOS 앱 구조에 크게 영향을 끼칠 수 있는 몇가지 컴포넌트들에 대해 살펴보겠습니다.

HIG 는 iOS 앱만을 대상으로 하는 가이드 문서는 아니기 때문에 macOS, iPadOS 등 다양한 OS 에서 사용할 수 있는 컴포넌트들에 대해 포괄적으로 설명합니다. 해당 스터디의 목적을 고려하여 이번 문단에서는 iOS 앱에 연관있는 컴포넌트들에 대해서만 설명합니다.

Tab bars

Segmented controls

Navigation bars

각 View, Control, Bar 의 사용 목적과 그에 대한 이해와 응용

Appstore Review Guideline

앱스토어는 사용자에게는 안전하게 앱을 이용할 수 있는 경험, 개발자에게는 뛰어난 앱을 개발할 수 있는 훌륭한 기회를 제공한다는 원칙 아래, 스토어에 등록 전 앱 심사(Review)를 진행하고 있습니다. 간단하게 리뷰 항목에 대해 알아보고, 리뷰 과정에서 앱 심사가 거절 당하는 몇몇 케이스에 대해 알아보겠습니다.

Appstore Review Guideline 의 기본 내용

애플에서는 앱스토어 리뷰를 위해 다섯가지 세션의 리뷰 가이드를 제공하고 있습니다. 아래에서 다섯가지 세션의 내용에 대해 간단히 요약하였습니다. 상세한 내용은 App Store 심사 지침 가이드라인을 통해 확인할 수 있습니다. 한국어 버전이 영어 원문보다 업데이트가 느리나, 큰 차이점은 없습니다.

  1. 안전성

    앱에 불쾌하거나 모욕적인 콘텐츠가 없어야 하고, 기기에 손상을 주지 않아야 하며, 앱을 사용했을 때 신체적인 손상을 입을 가능성이 있어서는 안 됩니다.

  2. 성능

    앱 심사 팀에 제출하는 앱은 필요한 모든 메타데이터가 있고 URL이 정상적으로 작동하는 최종 버전이어야 합니다. 베타버전 등의 앱은 앱 스토어 리뷰에서 거부될 수 있습니다. 또한 충돌이나 명백한 기술 문제가 드러나는 불완전한 앱 번들과 바이너리는 거부당합니다.

  3. 비즈니스

    비즈니스 모델이 명확하지 않은 경우 메타데이터와 앱 심사 메모에 설명을 기재해야 합니다. 앱이 어떻게 작동하는지 파악할 수 없거나 앱 내 구입 기능을 바로 이해할 수 없는 경우 리뷰가 지연되거나 앱이 거부될 수 있습니다. 앱 가격은 개발자가 결정하지만, 앱과 앱 내 구입의 가격이 지나치게 높다고 판단되는 경우 배포를 허용하지 않습니다. 불합리하게 높은 가격으로 사용자를 속이려는 비싼 앱은 거부당합니다.

  4. 디자인

    최소한의 디자인 기준을 충족하지 않는 앱은 리뷰에서 거부될 수 있습니다. 또한 앱을 승인받은 후에도 지속적인 업데이트를 통해 앱이 정상적으로 작동하도록 유지하여 기존 고객과 신규 고객에게 매력적인 사용 경험을 제공해야 합니다. 작동하지 않거나 수준 미달의 경험을 제공하는 앱은 언제든지 앱스토어에서 삭제될 수 있습니다.

  5. 법적 요구 사항

    앱은 상용화될 지역의 모든 법적 요구 사항을 준수해야 합니다. 또한 불법 행위나 명백하게 위험한 행동을 요구하거나, 유도하고, 조장하는 앱은 무조건 거부됩니다. 인신매매 및 아동 착취를 조장하는 것으로 판명된 앱과 같이 극단적인 경우가 발생하면 담당 기관에 보고됩니다.

Review 거절 사례

앱스토어 리뷰 가이드가 명확하게 지정되어 있지만, 매우 다양한 사례들과 결국 사람이 리뷰한다는 한계로 명확하게 동일한 가이드가 적용되지는 않습니다. 어떤 앱은 통과 되었지만 다른 앱은 거절(리젝)되는 일이 많습니다. 아래는 다양한 Review 거절(리젝) 사례입니다.

이외에도 다양한 이유로 앱스토어 등록이 리젝 당할 수 있습니다. 온라인상에 리젝을 회피할 수 있는 여러가지 팁이 있으나, 모든 경우에 대응할 수 없거니와 리젝 자체는 큰일이 아니므로 사실상 심사 과정에서 발견되는 문제점은 명확하게 수정해주는 것이 정답이라고 볼 수 있습니다.

여담으로 언제든 리젝이 발생할 수 있다는 것을 염두에 두고 배포 일정을 산정하는 것도 시니어 개발자의 역량... 이라는 농담을 꽤 들었습니다.