iOS - Swift

[iOS/Swift] SwiftLint 규칙 정리

개발자 수니 2022. 3. 27. 18:06
728x90
반응형

SwiftLint 적용 프로젝트에서 Error와 Warning이 발생할 때 수정하기 위해 규칙을 서칭 하곤 합니다.

 

📌  이번 글은

SwiftLint 적용 프로젝트에서 오류 수정해본 Lint 규칙 종류 정리입니다.

Lint 오류를 수정하면서 계속 업데이트할 예정입니다.

 

 

2022. 03. 27

let_var_whitespace

# let var 이후에 한줄의 공백이 필요합니다 https://realm.github.io/SwiftLint/let_var_whitespace.html

 

lower_acl_than_parent

# 하위의 접근제어는 상위의 접근제어보다 낮아야 합니다 (같아도 안됨) https://realm.github.io/SwiftLint/lower_acl_than_parent.html

 

operator_usage_whitespace

# operation 사용시 양옆에 공백이 있어야 합니다. https://realm.github.io/SwiftLint/operator_whitespace.html

 

opening_brace

# {}사용시 앞에 공백이 있어야 합니다. https://realm.github.io/SwiftLint/opening_brace.html

 

syntactic_sugar

# Array<String>대신 [String] 형태를 사용합니다. https://realm.github.io/SwiftLint/syntactic_sugar.html

 

cyclomatic_complexity

# 함수안은 복잡하면 안된다 https://realm.github.io/SwiftLint/cyclomatic_complexity.html

 

mark

# Mark는 정확한 형식을 사용해야합니다. https://realm.github.io/SwiftLint/mark.html

 

line_length

# line의 길이를 제한합니다 https://realm.github.io/SwiftLint/line_length.html

 

comma

# comma 앞에는 여백이 없고 뒤에는 공백이 있어야합니다. https://realm.github.io/SwiftLint/comma.html

 

comment_spacing

# 주석 // 다음에 공백이 있어야 합니다.

 

identifier_name

# 변수나 클래스등 이름은 소문자, 대문자로 시작하며 너무길거나 짧으면 안됩니다. https://realm.github.io/SwiftLint/identifier_name.html
# 스위프트에서는 카멜케이스를 기본 명명법으로 사용하고 있습니다.
# Enum 타입명은 대문자로 시작하고, case는 소문자로 시작합니다.

 

redundant_discardable_let

 # let _ = foo ()보다 _ = foo ()를 선호합니다. https://realm.github.io/SwiftLint/redundant_discardable_let.html

 

force_cast

# force cast를 하지 않습니다 https://realm.github.io/SwiftLint/force_cast.html

 

fatal_error_message

# fatal error는 메세지가 있어야합니다 https://realm.github.io/SwiftLint/fatal_error_message.html

 

shorthand_operator

# += -= *= 과 같이 짧은 오퍼레이션을 사용합니다. https://realm.github.io/SwiftLint/shorthand_operator.html

 

unavailable_function

# 구현되지 않은 기능은 사용할 수없는 것으로 표시해야합니다. https://realm.github.io/SwiftLint/unavailable_function.html
    - unavailable_function

 

unneeded_parentheses_in_closure_argument

# 클로저 인수를 선언 할 때는 괄호가 필요하지 않습니다. https://realm.github.io/SwiftLint/unneeded_parentheses_in_closure_argument.html

 

 

 

🔗 관련 포스팅 🔗

 

[iOS/Swift] SwiftLint 적용하기 (pod 'SwiftLint')

📌  이번 글은 Xcode 프로젝트에 SwiftLint 적용 방법입니다. 이번에 토이 프로젝트 리팩터링을 하면서 SwiftLint를 적용해보기로 했어요. 정말 유용해서 한번 익히면 자주 사용할 것 같아 적용 법도

sunidev.tistory.com

 

728x90
반응형