Burt.K

Awesome Discovery

[SE-0023] API 설계 가이드라인

작성일 — 2025년 3월 9일

Table of Contents

API 설계 가이드라인

리뷰어 노트

이 리뷰는 서로 밀접하게 연관된 세 가지 리뷰 중 하나로, 동시에 진행된다:

이 리뷰들은 서로 강하게 연관되어 있기 때문에 동시에 진행된다 (예: 표준 라이브러리의 API 변경은 특정 가이드라인에 해당하거나, 임포터 규칙이 특정 가이드라인을 구현하는 등). 이러한 상호작용과 논의를 관리하기 위해 다음과 같은 사항을 요청한다:

서론

널리 사용되는 라이브러리의 설계는 프로그래밍 언어의 전반적인 느낌에 큰 영향을 미친다. 훌륭한 라이브러리는 마치 언어 자체의 확장처럼 느껴지며, 라이브러리 간의 일관성은 전체 개발 경험을 한층 더 높여준다. 우수한 Swift 라이브러리를 구축하는 데 도움을 주기 위해, Swift 3의 주요 목표 중 하나는 API 설계 가이드라인을 정의하고 이러한 설계 원칙을 일관되게 적용하는 것이다.

제안하는 솔루션

제안하는 API 디자인 가이드라인은 https://swift.org/documentation/api-design-guidelines/에서 확인할 수 있다.

이 가이드라인의 소스 코드는 https://github.com/apple/swift-internals에서 확인할 수 있다. 간단한 편집 변경에 대한 풀 리퀘스트는 언제든 환영한다. 더 중요한 변경 사항은 리뷰 프로세스의 일부로 처리해야 한다.

기존 코드에 미치는 영향

API 설계 가이드라인의 존재는 기존 코드에 특별한 영향을 미치지 않는다. 그러나 이 가이드라인을 표준 라이브러리에 적용하는 동반 제안과 Clang 임포터를 통해 적용하는 제안은 기존 코드에 큰 영향을 미칠 것이다. 이 두 제안은 상당수의 API를 변경하게 된다.