원본 문서:
Human Interface Guidelines App Architecture
NOTE
본 글은 Apple developer의 공식문서인 Human Interface Guidelines App Architecture원본을 번역 및 개인적인 의견을 추가하여 정리한다.
일부 앱은 설정이나 구성을 선택하는 것을 지원하지만 대부분의 앱은 이를 의도적으로 피하거나 지연시킬 수 있다. 성공적인 앱은 사용자에게 즉시 잘 작동하고, 앱을 사용하면서 느낀 경험을 조작하는 몇 가지 편리한 방법을 제공한다. 대부분의 사용자가 만족하도록 앱을 설계하면 설정의 필요성이 감소한다.
Infer what you can from the system: 사용자, 기기, 또는 환경에 관한 정보가 필요할 때, 사용자에게 요청하는 것 대신 시스템으로 부터 얻는다. 예를 들어, 지역 옵션을 나타내기 위해서 사용자의 우편 번호를 요청하는 것 대신 시스템을 통해서 사용자의 현재 위치에 접근할 수 있는 권한을 얻는 것이 좋다. 만약 사용자가 정보에 관한 접근 권한을 거부하면, 수동 입력으로 이를 대체해야 한다.
Thoughtfully prioritize configuration options within your app: 앱 내에서 구성 옵션의 우선순위를 신중하게 지정한다. 앱의 메인 화면은 필수적이거나 자주 바뀌는 옵션을 배치하기에 적합하다. 보조 화면은 변경 횟수가 적은 옵션을 배치하기에 적합하다.
Expose infrequently changed configuration options in Settings: 설정에서 자주 변경되지 않는 옵션을 노출한다. 설정 앱은 시스템 전체에서 구성을 변경하는 중앙 위치에 있지만, 사용자는 설정 앱에 가기 위해 앱에서 벗어나야 한다. 앱 내에서 설정을 조작하면 사용자는 훨씬 더 편리함을 느낄 것이다. 만약 변경이 거의 필요 없는 설정을 제공하는 경우, 다음 개발자 지침에서 확인한다.
Implementing an iOS Settings Bundle
Preferences and Settings Programming Guide
Provide shortcuts to Settings when appropriate: 필요할 때, 설정에 대한 바로 가기를 구현한다. 앱에서 "설정>MyApp>개인 정보보호>위치 서비스" 와 같이 사용자를 설정으로 안내하는 텍스트를 포함하는 경우, 해당 목적지를 자동으로 여는 버튼을 구현한다. 다음 개발자 지침에서 확인한다.
openSettingsURLString in UIApplication.