Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- combine
- 리펙터링
- ribs
- Refactoring
- tableView
- RxCocoa
- ios
- collectionview
- 클린 코드
- MVVM
- uitableview
- rxswift
- UICollectionView
- Protocol
- 애니메이션
- uiscrollview
- HIG
- SWIFT
- 리팩토링
- 리펙토링
- Human interface guide
- map
- Xcode
- swift documentation
- swiftUI
- clean architecture
- Clean Code
- Observable
- UITextView
- 스위프트
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[iOS - swift] swiftformat (SwiftFormat, Swift Format, 스위프트 포멧, SwiftLint) 본문
Git, CocoaPods, Xcode, Shell
[iOS - swift] swiftformat (SwiftFormat, Swift Format, 스위프트 포멧, SwiftLint)
jake-kim 2023. 11. 1. 01:11swiftlint와 swift-foramt 차이
- swiftlint는 코드 스타일을 검사하여 .yml파일에 개발자가 미리 정의한 규칙을 사용하여 스타일을 준수하지 못하면 warning이나 error를 보여주는 것
- 구체적인 swiftlint 사용 방법은 이전 포스팅 글 참고
- swift-format은 warning, error를 보여주지 않고, 특정 명령어를 수행하면 자동으로 코드가 포멧팅되는 것
- 즉, 개발할 때 에러가 나거나 warning을 보여지게 하고싶다면 swiftlint를 사용하고, 자동으로 코드를 포멧팅 시켜주려면 swift-fotmat을 사용
swift-foramt 사용 방법
- 설치
$ brew install swift-format
- Xcode를 여고 포멧팅이 필요한 코드를 준비
- someFunc 함수의 포멧팅이 필요
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
func someFunc( a: Int, b: String) {
let abc: Int = 0
print( abc)
}
}
- swiftformat 명령어 실행
$ swift-format ViewController.swift
# or
$ swift-format *.swift
(실행하면 terminal창에 포멧팅된 내용이 표출)
- 주의) ViewController.swift 파일의 내용이 변하지는 않음
- swift-format 명령어에 -i를 추가하면 코드에 바로 적용이 가능
swift-format -i *.swift
규칙 설정하기 (.json 파일)
- 포멧팅 규칙 설정 파일 획득
- 이 파일에서 포멧팅 규칙 설정이 가능
swift-format dump-configuration > .swift-format.json
* 참고
'Git, CocoaPods, Xcode, Shell' 카테고리의 다른 글
[iOS - swift] Xcode-select 개념 (#Xcodes, Xcode 버전 관리) (0) | 2023.12.21 |
---|---|
[iOS - swift] Xcode 커밋 히스토리 코드 분석 방법 (3) | 2023.11.26 |
[Git - terminal] git reset 사용방법 (#git reflog) (0) | 2023.05.10 |
[terminal] 터미널 프롬프트 이름 설정 방법 (Prompt 이름) (0) | 2023.05.03 |
[Linux, Shell] 리눅스 파이프 (특정 브랜치 제외하고 모든 로컬 브랜치 삭제 방법) (0) | 2023.04.11 |
Comments