-
Notifications
You must be signed in to change notification settings - Fork 3
컨벤션
Seyoung Kim edited this page Nov 7, 2022
·
2 revisions
// 내장 프레임워크
import UIKit
// 서드파티 프레임워크
import SwiftyColor
import SwiftyImage
import Then
import URLNavigator
class SomeClass {
// UI (View)
// Properties
// Computed Properties
// Init
// Methods
}
// MARK: - @objc Methods
extension ViewController {}
// MARK: - Bind ViewModel
extension ViewController {}
class S {
// MARK: - Properties
let a = 1
// MARK: - Methods
func foo() {
//...
}
}
-
self
는 다 쓴다. -
final
은 상속이 필요하지 않은 class에 모두 명시한다. - 프로토콜을 적용할 때는
extension
을 만들어 관련된 메서드 구현한다. - 컬러의 경우
Assets.xcassetes
에 등록 후,UIColor
의extension
으로 관리한다. - 클래스는 한 줄 띄우고, 메소드는 띄우지 않고 바로 작성한다.
- 모듈 임포트는 알파벳 순으로 정렬한다. 내장 프레임워크를 먼저 임포트하고, 빈 줄로 구분하여 서드파티 프레임워크를 임포트한다.
커밋은 다음 형태로 작성합니다.
👉 (이슈 번호) keyword: 커밋 메시지
fix: 버그, 오류 해결
chore: 코드 수정, 내부 파일 수정 등 잡일 모두
add: Asset 추가, 라이브러리 추가, 새로운 파일 생성
feat: 새로운 기능 구현
remove: 쓸모없는 코드, 파일 삭제
docs: README, WIKI 등의 문서 개정
style: 뷰 관련 작업
move: 프로젝트 내 파일 이동
rename: 파일 이름 변경
refactor: 동작 결과는 같으나 코드 자체 전면 수정 및 성능 개선
test: 테스트와 관련된 모든 활동, 테스트 코드 추가, 테스트 코드 수정
PR 메시지는 다음과 같이 작성한다.
👉 PR 이름
- 이슈 1
- 작업 사항 1
- 작업 사항 2
- 특이사항
- Reviewer는 자신을 제외한 팀원 3명을 추가한다.
- Assignee는 자신을 추가한다.
- PR에서 개발한 기능에 맞는 레이블을 추가한다.
- 주석 처리된 부분은 모두 제거한다.
Copyright © 2022 290km