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+ExtensionString+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