-
swift style guide - Namingswift 2021. 6. 20. 17:30
서술, 설명적이며 일관된 방식의 네이밍은, 소프트웨어의 가독성을 높이며 이해하기 쉽도록 만든다.
API Design Guidelines 에 작성된 Swift 네이밍 컨벤션을 사용하라.
- 간결하게 줄여쓰는 것보다 명확하게 작성해야 한다. ( 서술, 설명하듯 )
- snake_case 가 아닌 camelCase 를 사용한다 ex)
first_namefirstName- 타입, 프로토콜 의 경우엔 UpperCamelCase 를 사용한다. 이 외엔 lowerCamelCase를 사용한다
- 불필요한 단어는 제외하고, 필요한 모든 단어는 포함한다. ex) 중복제거
- 타입 이 아닌, 역할에 기반해 작성해야 한다.
- factory methods 는 make 로 시작한다.
- 메소드들의 side effects 를 고려해 작성한다
- side effect 가 있다면 명령형 동사로 작성한다. ex) print(x), x.sorted()
- side effect 가 없다면 명사형으로 작성한다. ex) x.distance(to: y)
- (none-mutating) 비수정 동사형 메소드 의 경우 -ed, -ing 로 끝나도록 작성한다 ex) z = x.sorted()
- (mutating) 수정 가능 명사형 메소드의 경우, form 으로 시작한다 ex) y.formUnion(z)
- boolean type 메소드와 프로퍼티들은 assertion(주장) 처럼 읽혀야 한다. ex) x.isEmpty, line1.intersects(line2)
- 어떤 것을 설명하는 프로토콜은 명사형으로 읽혀야 한다. ex) Collection
- 능력, 가능함을 나타내는 프로토콜은 -able, -ible 로 끝나도록 작성한다 ex) Equatable, ProgressReporting
- 그 외의 타입, 프로퍼티, 변수, 상수 등은 명사형으로 작성한다.
- 전문가가 놀라워 할 표현을 사용하지 말라.
- 초심자가 혼란해 할 표현을 사용하지 말라.
- 일반적으로, 축약을 사용하지 말라.
- 일반적으로 사용되는 name 을 사용하라.
- free function 보단 메소드와 프로퍼티를 사용하라.
- free function: 소유자가 없는 함수
- free function은 특별한 경우에만 사용된다.
- 대문자로 표시된 약어와 이니셜은 모두 대문자 또는 소문자로 작성한다.
- 외의 약어는 일반 단어로 취급한다.
- 메소드가 같은 의미를 공유할 경우, 동일한 기본 이름을 준다.
- 리턴 타입은 오버로딩 하지 않는다.
- documentation, 문서화의 역할이 되도록 좋은 parameter name 을 정한다.
- 첫번째 parameter의 이름을 작성하는 것을 선호한다, 이 이름을 메소드명에 포함시키지 않고.
- 기본 인자를 활용한다.
- 튜플 parameter와 클로저에 label 을 붙인다.
사진 출처 - https://swift.org/documentation/api-design-guidelines/#naming
'swift' 카테고리의 다른 글
Swift - UserDefaults extension 활용 편하게 사용하기 (0) 2022.10.14 UIView - touch 관련 메소드, 멀티 터치 (2) 2021.07.13 swift - escaping closure, result type (0) 2021.06.03 로그 출력 (0) 2021.06.01 swift - backslash dot \. (0) 2021.05.11