-
<Swift> 코드 컨벤션iOS/개념정리 2022. 3. 5. 12:40
코드 컨벤션이란?
코드 컨벤션이란 코드를 어떻게 작성할지 규칙을 정하는 것을 말한다.
코드 컨벤션을 왜 사용하는가?
1. 소프트웨어 개발의 80%는 유지보수에 사용한다.
2. 가독성을 높여 다른 개발자들도 알아 보기 쉽게 한다.
3. 코드리뷰 및 협업에 유용하다.
코드 컨벤션
1. Import
import UIKit import SwiftyColor import SwiftyImage import Then import URLNavigator
* 모듈은 알파벳 순으로 정렬합니다, 또한 내장 프레임 워크 먼저 임포트 하고, 빈줄로 구분하여 외장 프레임 워크를 임포트 합니다.
* 파일이 필요로 하는 최소한의 모듈만 임포트 합니다.
2. 빈줄
* 모든 파일의 마무리는 빈줄로 합니다.
* 빈줄에는 공백이 포함되지 않게 작성 합니다.
3. 띄어쓰기
* 클론(:)을 사용할때는 클론의 오른쪽만 띄어쓰기를 사용합니다.
⭕️
var example: String = "String"
❌
var example:String = "String"
* 삼항 연산자의 경우 클론(:) 앞뒤로 띄어쓰기를 사용합니다.
⭕️
let myAgeIs: Int = 29 myAgeIs > 30 ? print("30대입니다.") : print("20대입니다.")
❌
let myAgeIs: Int = 29 myAgeIs > 30 ? print("30대입니다."):print("20대입니다.")
* 콤마(,) 뒤에는 공백을 추가 합니다.
⭕️
let myArray = [1, 2, 3, 4, 5]
❌
let myArray = [1,2,3,4,5]
* 연산자 앞뒤로 공백을 추가 합니다.
⭕️
let myValue = 10 + (20 / 2) * 2
❌
let myValue = 20+(30/2)*3
* if let, guard let 의 구문이 긴 경우 줄바꿈과 들여쓰기를 사용해서 구분합니다.
⭕️
if let noOptInt = optInt, let noOptString = optString{ // ... } guard let noOptInt = optInt , let noOptString = optString else{ return //..something }
*return 타입과 {}사이에 띄어씌기를 사용하여 구분합니다.
⭕️
func hello() -> String { // ... }
❌
func hello()->String{ // ... }
* 클로저 타입
⭕️
func closure(completion: () -> Void) { //.. }
❌
func closure(completion:()->Void) { //.. }
4. 기타
* 불필요한 괄호는 삭제합니다.
⭕️
if count > 0 { // .. }
❌
if (count > 0){ // .. }
* 변수, 상수에는 lowerCamelCase를 사용하고 열거형(enum)의 case의 경우에도 lowerCamelCase를 사용합니다.
⭕️
var userName = "hjp" let userAge = 28 enum Some{ case .success case .failure case .result }
❌
var username = "hjp" let USERAGE = 28 enum Some{ case .Success case .Failure case .Result }
* 약어의 경우 약어로 시작하는 경우는 소문자로 작성하고, 그 외의 경우는 모두 대문자로 표기한다.
⭕️
let userID: Int? let html: String? let myURL: URL? let urlString: String?
❌
let userId: Int? let HTML: String? let myUrl: URL? let URLstring: String?
'iOS > 개념정리' 카테고리의 다른 글
대칭 / 비대칭 양방향 암호화 (2) 2022.04.06 <Swift> iOS 건강 데이터 사용하기- HealthKit (2) 2022.03.18 <Swift> Properties (0) 2022.02.22 <Swift> Delegate 활용 (0) 2022.02.21 [Swift] 고차함수 (1) 2022.02.17