SwiftFormat: De automatische stylist voor je Swift-code

Wanneer code zichzelf formatteert
Stel je voor: in een team van vijf ontwikkelaars schrijft iedereen code op zijn eigen manier. Sommigen voegen spaties toe voor haakjes, anderen niet. De één breekt graag functieparameters af over meerdere regels, terwijl een ander alles op één regel schrijft. Het resultaat is een lappendeken aan codestijlen, en code reviews veranderen in eindeloze stijldiscussies.
SwiftFormat lost dit probleem precies op — een tool voor automatische Swift-code-opmaak. Het voegt niet alleen spaties en inspringingen toe, het brengt code naar een uniforme standaard en lost honderden kleine inconsistenties op.
Wat kan SwiftFormat doen?
-
Grondige stijlverbeteringen:
- Corrigeert inspringingen en uitlijning
- Verwijdert overbodige
selfen haakjes - Herstelt de volgorde van access modifiers
- Unificeert de stijl voor closure-declaraties
-
Flexibele configuratie:
- Meer dan 50 opmaakregels
- Ondersteuning voor configuratiebestanden
.swiftformat - Mogelijkheid om aangepaste regels te maken
-
Overal te integreren:
- Commandoregel voor handmatige uitvoering
- Plugins voor Xcode, VSCode, Sublime Text
- Git pre-commit hooks
- CI/CD-ondersteuning via GitHub Actions
// До форматирования
func processData(data:[String:Any], completion:(Result)->Void){
guard let value=data["key"] else{return}
self.completion(.success(value))
}
// После SwiftFormat
func processData(
data: [String: Any],
completion: (Result) -> Void
) {
guard let value = data["key"] else { return }
completion(.success(value))
}
Hoe begin je ermee?
Installatie via Homebrew:
brew install swiftformat
Basisgebruik:
# Форматировать все файлы в текущей директории
swiftformat .
# Только проверить стиль без изменений (линтер)
swiftformat --lint .
Voor projecten wordt aanbevolen om SwiftFormat toe te voegen als een build-stap in Xcode of een pre-commit hook in Git. Op deze manier wordt code automatisch opgemaakt vóór elke commit.
Configuratie-flexibiliteit
SwiftFormat begrijpt dat elk project zijn eigen stijlvereisten heeft. Je kunt:
- Afzonderlijke regels uitschakelen via
--disable - Een
.swiftformatbestand aanmaken in de projectroot - Gedrag voor specifieke bestanden configureren via comments
Configuratievoorbeeld:
# .swiftformat
--indent 4
--disable trailingCommas
--enable isEmpty
--header "Copyright (c) {year} MyCompany"
Waarom het proberen?
- Tijdsbesparing — besteed geen uren meer aan handmatige opmaak
- Consistente stijl — geen teamdiscussies meer over waar je haakjes plaatst
- Schone git-geschiedenis — minder "stijl"-commits
- Focus op logica — concentreer op wat echt belangrijk is
SwiftFormat is vooral nuttig voor:
- Teams van 2+ ontwikkelaars
- Projecten met een lange ontwikkelingsgeschiedenis
- Frequente code reviews
- Het onderhouden van open source-projectkwaliteit
Onder de motorkap
Het project wordt actief ontwikkeld sinds 2016, heeft meer dan 8,5k sterren op GitHub en ondersteunt alle huidige Swift-versies. Onder de motorkap zit een krachtige Swift-code-parser en een regelsysteem dat je kunt combineren als LEGO-blokken.
# Показать все доступные правила
swiftformat --rules
# Информация о конкретном правиле
swiftformat --rule-info redundantSelf
Alternatieven
- SwiftLint: Meer gericht op het vinden van codeproblemen dan op opmaak
- Handgemaakte scripts: Vereisen onderhoud en zijn vaak minder flexibel
SwiftFormat's grootste voordeel is dat het problemen niet alleen vindt — het lost ze direct op.
SwiftFormat is niet zomaar "nog een tool" — het is een echte redder in nood voor teams die uitgekeken raken op eindeloze stijlfixes. Het neemt al het routinematige opmaakwerk uit handen, zodat je je kunt richten op het oplossen van echte problemen.
Probeer het toe te voegen aan je workflow — je ziet resultaten na de allereerste run. Je code wordt schoner en het leven — een stuk makkelijker.