SeSAC 리뷰어님들의 코드리뷰와, Swift 코드 리뷰 체크리스트 들을 보고 정리 한 내용입니다.
꼭 이렇게 하자! 가 아닌, 이 부분들을 우선으로 고려해보자! 가 맞을 듯 합니다 :)
delegate
변수는 weak var
로 선언 (순환참조 방지)escaping closure
내부에서 self 사용시 [weak self
] 처리 (순환참조 방지)extension Array {
subscript (safe index: Int) -> Element? {
return indices ~= index ? self[index] : nil
}
}
private
, private(set)
→ 캡슐화 체크 let
으로 선언class
의 final
키워드 붙이기.isEmpty
사용Struct
를 우선으로 고려고차함수
를 성능 개선 보다는, 가독성 개선을 위한 측면에서 바라봐야 한다.map
은 for-in
보다 빠를 수 있다filter
, reduce
는 for-in
보다 느릴 수 있다DRY
: Don't Repeat Yourself YAGNI
: You Aren't Gonna Need It KISS
: Keep it small and simple enum
을 선택하자guard
문의 로직을 적극 활용enum-switch
로 변경을 고려protocol
을 우선해서 고려+
대신 \()
을 쓰자Extension+String
or String+Extension
String+Parsing
형태로 분리해서 관리하는 것을 선호합니다. 코드리뷰 외에 참고 한 글들:
https://medium.com/@ashokrawat086/code-review-checklist-483614b91821
https://dev.to/bornfightcompany/ios-code-review-checklist-53ia
https://isameh.medium.com/the-checklist-of-my-code-review-18cc6f6fb5b3
https://linux-studying.tistory.com/22