중요 코딩 컨벤션 요약

<aside> 🎯 상속받지 않는 클래스는 final 키워드

단일 정의 내에서만 사용되는 특정 기능 구현은 private 접근 제한자를 적극 사용

임포트는 퍼스트파티, 서드파티 나누어서. 알파벳 순 정렬

MARK 주석은 위 아래 공백

클래스, 구조체, 열거형, 프로토콜 등은 Upper Camel Case로 네이밍

변수 상수, 함수 등은 lower Camel Case로 네이밍

</aside>

<aside> 🎯 MARK 주석은 필수 주석, 자유 주석으로 분리할 예정입니다

</aside>

필수 주석

필수 주석 중, 필요 없는 주석은 작성해주지 않으셔도 됩니다.

예를 들어, ViewController이기 때문에 init이 필요 없는 상황이라면, init 마크 주석은 쓰지 않아야 합니다

// MARK: - Properties

// MARK: - UI Components

// MARK: - Life Cycles

// MARK: - init

// MARK: - Override Functions

예시

import UIKit

import SnapKit
import Then

final class ViewController: BaseViewController {
    
    **// MARK: - Properties**
		
		///아래와 같이 UI를 구성하지 않는 컴포넌트를 작성해주는 영역에 Properties 마크주석을 작성합니다.
		private var count: Int = Int()
    
    **// MARK: - UI Component**
    
		private var nextButton = UIButton()
    
    **// MARK: - Life Cycles**
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    **// MARK: - Override Functions**

    override func setUI() {

    }

		override func setHierachy() {

    }
    
    override func setLayout() {

    }
    
    override func setButtonEvent() {
    }

		**// MARK: - 이 곳은 위의 오버라이드 함수 영역과 구분될 수 있도록 자유로운 마크주석을 달아주세요**
}

임포트