Loading…

소개 온라인 Swift 포맷터

**컴파일되는** Swift 코드를 작성하는 것은 쉽습니다. **아름답고 일관적이며 리뷰 준비가 된** Swift 코드를 작성하는 것은 더 어렵습니다. 이 온라인 Swift 포맷터는 SwiftFormat 스타일 규칙을 사용하여 들여쓰기, 간격 및 줄 바꿈을 정규화하여 Xcode, Swift Playgrounds 및 CI 파이프라인에서 `.swift` 파일이 깔끔하게 유지되도록 합니다.

Swift 포맷터의 주요 기능

  • Swift 코드의 들여쓰기, 간격 및 중괄호 **한 번의 클릭으로 정리**
  • *들여쓰기 크기* 슬라이더를 통한 **구성 가능한 들여쓰기 크기** (1-8 공백)
  • 긴 표현식을 선호하는 열 너비 내에 유지하는 **줄 바꿈/줄 길이** 제어
  • 표준 `.swift` 소스 파일과 붙여넣은 코드 조각 지원
  • **iOS, macOS, watchOS, tvOS 및 서버 측 Swift** 프로젝트에 적합
  • SwiftFormat 스타일 엔진을 백엔드로 사용하여 관용적인 Swift 출력 생성
  • 멱등성 포맷팅 – 여러 번 실행해도 동일한 출력 유지
  • 계정 불필요 – 붙여넣기, 포맷팅, 정리된 결과 복사만으로 사용 가능

🛠️ Swift 포맷터 사용 방법 for swift-formatter

1

1. Swift 코드 붙여넣기 또는 업로드

📥 Swift 코드를 에디터에 직접 붙여넣거나 `.swift` 파일을 드래그 앤 드롭하세요. 이 도구는 일반적인 Xcode 스타일 Swift 소스에 최적화되어 있습니다.

2

2. 들여쓰기 및 줄 길이 설정

📏 **들여쓰기 크기** 슬라이더를 사용하여 각 들여쓰기 수준에 사용할 공백 수를 선택하고, **줄 바꿈 / 줄 길이**를 구성하여 긴 줄이 어디서 바뀔지 제어하세요(또는 `0`으로 설정하여 줄 바꿈 기반 포맷팅을 비활성화).

3

3. "포맷" 클릭

⚡ **포맷** 버튼을 눌러 SwiftFormat 스타일 규칙을 적용하세요. 포맷터는 들여쓰기, `:` 및 연산자 주변 공백을 정규화하고 설정에 따라 긴 줄을 바꿉니다.

4

4. 결과 검토 및 복사

🔍 원본과 포맷된 버전을 비교하세요. 결과에 만족하면 포맷된 Swift를 Xcode, Swift Playground 또는 Git 커밋으로 다시 복사하세요.

기술 사양

포맷팅 엔진 및 스타일

이 도구는 일반적인 SwiftFormat 규칙을 반영하여 파일과 기여자 간 코드베이스의 일관성을 유지합니다.

항목동작비고
언어SwiftSwift 5+ 소스 파일에서 가장 잘 작동합니다.
들여쓰기수준별 구성 가능한 공백**들여쓰기 크기** 옵션으로 제어(1–8).
줄 바꿈선택적 줄 바꿈 열**줄 바꿈 / 줄 길이**로 제어(0–120; `0` = 줄 바꿈 없음).
공백`:` 및 연산자 주변 정규화가독성과 코드 리뷰 간 일관성을 향상시킵니다.
멱등성 출력동일 입력 → 동일 출력포맷팅이 변경되지 않고 여러 번 실행해도 안전합니다.

지원 입력 및 제한

Apple 플랫폼 및 서버 측 Swift 프로젝트에서 사용되는 실제 Swift 소스 파일에 중점을 둡니다.

매개변수값 / 동작참고사항
파일 확장자.swift표준 Swift 소스 파일입니다.
MIME 유형text/x-swift에디터 및 드롭존 감지를 위해 내부적으로 사용됩니다.
최대 입력 크기≈ 2MB 소스매우 큰 파일은 CI에서 로컬 SwiftFormat을 통해 포맷하는 것이 더 좋습니다.
출력 확장자.swift포맷된 내용은 Swift 소스 파일로 저장하는 것이 가장 좋습니다.

검증 및 오류

포맷터는 구문적으로 유효한 Swift를 기대합니다. 입력이 불완전하거나 주요 구문 오류가 포함된 경우, 포맷된 출력 대신 실패하거나 오류 메시지를 반환할 수 있습니다.

SwiftFormat을 사용한 명령줄 대안

Xcode, CI 또는 pre-commit 훅에서 동일한 스타일을 원하시나요? SwiftFormat을 직접 사용하세요:

macOS (Homebrew)

Homebrew를 통해 SwiftFormat 설치

brew install swiftformat

시스템에 `swiftformat` CLI를 추가합니다.

단일 Swift 파일 포맷팅

swiftformat MyViewController.swift

기본 SwiftFormat 규칙을 사용하여 파일을 제자리에서 다시 씁니다.

전체 Xcode 프로젝트 포맷팅

swiftformat .

현재 디렉토리의 모든 `.swift` 파일을 재귀적으로 포맷합니다.

프로젝트 수준 구성

사용자 정의 구성 사용

swiftformat . --config .swiftformat

`.swiftformat` 구성 파일에 저장된 팀별 규칙을 적용합니다.

Git pre-commit과 통합

swiftformat . && git commit

각 커밋 전에 SwiftFormat을 실행하여 메인 브랜치를 깔끔하게 유지합니다.

빠른 일회성 정리를 위해 이 온라인 도구를 사용한 다음, SwiftFormat과 공유 `.swiftformat` 파일을 사용하여 리포지토리에서 동일한 스타일을 반영하세요.

Swift 포맷터의 실용적인 사용 사례

iOS 및 macOS 앱 개발

UIKit, SwiftUI 및 Combine 중심 코드를 기능 브랜치 간에 가독성 있고 일관성 있게 유지합니다.

  • 코드 리뷰 전에 뷰 컨트롤러, 뷰 모델 및 서비스의 서식 지정을 표준화합니다.
  • 스크래치패드 또는 프로토타입 Swift 코드를 프로덕션 대상에 복사하기 전에 정리합니다.
  • 복잡한 SwiftUI 뷰 계층 구조의 들여쓰기 및 줄 바꿈을 정렬합니다.
struct ContentView: View {
  var body: some View {
    VStack {
      Text("Hello")
      Button("Tap me") {
        print("Tapped")
      }
    }
  }
}

서버 사이드 Swift (Vapor, Hummingbird 등)

API 핸들러 및 라우팅 코드를 더 쉽게 스캔하고 검토할 수 있도록 합니다.

  • 복잡한 체인을 쉽게 따라갈 수 있도록 라우트 및 미들웨어 선언을 재포맷합니다.
  • 긴 속성 목록을 가진 JSON 인코딩/디코딩 구조체를 정리합니다.
  • Swift 코드 내에서 긴 SQL 또는 HTTP 클라이언트 호출의 일관된 줄 바꿈을 보장합니다.
app.get("hello") { req async throws -> String in
    "Hello, world!"
}

Swift 교육 및 학습

학생들에게 관용적인 Swift 코드가 어떻게 보이는지 보여주고 연습 문제에서 '스타일 노이즈'를 줄입니다.

  • 슬라이드나 문서에서 예제를 공유하기 전에 Swift 코드를 정규화합니다.
  • 간격과 들여쓰기 대신 논리에 집중할 수 있도록 학생 제출물을 정리합니다.
  • 좋은 서식 지정이 동작을 변경하지 않고 가독성을 어떻게 향상시키는지 보여줍니다.
func fibonacci(_ n: Int) -> Int {
    if n < 2 { return n }
    return fibonacci(n - 1) + fibonacci(n - 2)
}

❓ Frequently Asked Questions

이 Swift 포맷터는 실제로 무엇을 변경하나요?

포맷터는 Swift 스타일 규칙을 따르도록 **들여쓰기, 공백 및 줄 바꿈**을 조정합니다. 코드의 논리를 의도적으로 변경하지는 않으며, 레이아웃 방식만 변경합니다.

📏줄 바꿈/줄 길이는 무엇을 선택해야 하나요?

일반적인 선택은 **80~100자** 범위이며, 팀과 디스플레이 너비에 따라 다릅니다. 좁은 레이아웃(분할 뷰 Xcode 등)에는 더 작은 값을 사용하고, 팀이 더 넓은 줄에 편안하다면 더 큰 값을 사용하세요. 줄 길이 기반 줄 바꿈을 원하지 않으면 `0`으로 설정하세요.

🧹이것은 SwiftLint를 대체하나요?

아니요. 포맷터는 **레이아웃과 스타일**(들여쓰기, 줄 바꿈, 간격)에 중점을 두는 반면, SwiftLint는 **린팅 규칙과 잠재적 문제**(사용되지 않는 코드, 명명, 복잡성)에 중점을 둡니다. 많은 팀이 둘을 함께 사용합니다.

🔒프로덕션 Swift 코드를 여기에 붙여넣어도 안전한가요?

일반적으로 고도로 민감한 코드(독점 알고리즘 또는 비밀 등)는 어떤 온라인 도구에도 붙여넣지 않는 것이 좋습니다. 기밀 프로젝트의 경우 로컬 또는 CI 시스템 내에서 개인 설정으로 SwiftFormat을 실행하는 것을 선호하세요.

이 포맷터를 모든 커밋에서 자동으로 실행할 수 있나요?

예 – 리포지토리에서 **SwiftFormat**을 사용하여(예: Git pre-commit 훅, Xcode 빌드 단계 또는 CI 작업을 통해) 동일한 스타일을 자동으로 적용하세요. 이 온라인 도구는 빠른 확인과 작은 코드 조각에 이상적입니다.

Pro Tips

Best Practice

팀과 함께 **들여쓰기 크기**와 **줄 바꿈/길이**를 하나로 합의한 후, 이 도구와 `.swiftformat` 설정에서 해당 값을 동일하게 반영하세요.

Best Practice

풀 리퀘스트에 포매터를 실행하여 코드 리뷰가 간격 논쟁 대신 논리와 아키텍처에 집중되도록 하세요.

Best Practice

생성된 Swift 코드(예: 코드 생성 도구에서)에 포매터를 사용하여 손으로 작성한 코드만큼 깔끔하게 보이게 하세요.

Best Practice

빠른 로컬 조정을 위해 Xcode의 '들여쓰기 재설정'과 이 포매터를 함께 사용하고, 진정한 일관된 스타일을 유지하려면 CI에서 SwiftFormat을 사용하세요.

Additional Resources

Other Tools