Loading…

Tentang Formatter Swift Online

Menulis Swift yang **terkompilasi** itu mudah. Menulis Swift yang **indah, konsisten, dan siap ulas** lebih sulit. Formatter Swift online ini menggunakan aturan gaya SwiftFormat untuk menormalkan indentasi, spasi, dan pembungkusan baris sehingga file `.swift` Anda tetap bersih di Xcode, Swift Playgrounds, dan pipeline CI.

Fitur Utama Formatter Swift

  • **Pembersihan satu klik** untuk indentasi, spasi, dan kurung dalam kode Swift
  • **Ukuran indentasi yang dapat dikonfigurasi** melalui slider *Ukuran Indentasi* (1–8 spasi)
  • **Kontrol Bungkus / Panjang Baris** untuk menjaga ekspresi panjang dalam lebar kolom pilihan Anda
  • Mendukung file sumber `.swift` standar dan cuplikan yang ditempel
  • Cocok untuk proyek **iOS, macOS, watchOS, tvOS, dan Swift sisi server**
  • Menggunakan mesin gaya SwiftFormat di balik layar untuk keluaran Swift yang idiomatis
  • Pemformatan idempoten – menjalankannya berkali-kali menghasilkan keluaran yang sama
  • Tidak perlu akun – cukup tempel, format, dan salin hasil yang telah dibersihkan

πŸ› οΈ Cara Menggunakan Swift Formatter for swift-formatter

1

1. Tempel atau Unggah Kode Swift Anda

πŸ“₯ Tempel kode Swift langsung ke editor, atau seret-dan-lepas file `.swift`. Alat ini dioptimalkan untuk sumber Swift bergaya Xcode tipikal.

2

2. Atur Indentasi & Panjang Baris

πŸ“ Gunakan slider **Ukuran Inden** untuk memilih berapa spasi setiap tingkat indentasi, dan konfigurasikan **Bungkus / Panjang Baris** untuk mengontrol di mana baris panjang harus dibungkus (atau setel ke `0` untuk menonaktifkan pemformatan berbasis bungkus).

3

3. Klik "Format"

⚑ Tekan tombol **Format** untuk menerapkan aturan gaya SwiftFormat. Formatter menormalkan indentasi, spasi di sekitar `:` dan operator, serta membungkus baris panjang sesuai pengaturan Anda.

4

4. Tinjau dan Salin Hasilnya

πŸ” Bandingkan versi asli dan yang diformat. Saat Anda puas dengan hasilnya, salin Swift yang telah diformat kembali ke Xcode, Swift Playground, atau komit Git Anda.

Spesifikasi Teknis

Mesin & Gaya Pemformatan

Alat ini mencerminkan konvensi SwiftFormat umum untuk menjaga basis kode Anda konsisten di seluruh file dan kontributor.

AspekPerilakuCatatan
BahasaSwiftBekerja paling baik dengan file sumber Swift 5+.
IndentasiSpasi per tingkat dapat dikonfigurasiDikendalikan oleh opsi **Ukuran Inden** (1–8).
Pembungkusan BarisKolom bungkus opsionalDikendalikan oleh **Bungkus / Panjang Baris** (0–120; `0` = tanpa bungkus).
SpasiDinormalisasi di sekitar `:` dan operatorMeningkatkan keterbacaan dan konsistensi dalam tinjauan kode.
Keluaran IdempotenInput sama β†’ output samaAman dijalankan berkali-kali tanpa pergeseran pemformatan.

Input & Batasan yang Didukung

Berfokus pada file sumber Swift dunia nyata yang digunakan dalam platform Apple dan proyek Swift sisi server.

ParameterNilai / PerilakuCatatan
Ekstensi file.swiftFile sumber Swift standar.
Tipe MIMEtext/x-swiftDigunakan secara internal untuk deteksi editor dan dropzone.
Ukuran input maksimumβ‰ˆ 2 MB sumberFile yang sangat besar lebih baik diformat melalui SwiftFormat lokal di CI.
Ekstensi output.swiftKonten yang diformat sebaiknya disimpan sebagai file sumber Swift.

Validasi & Kesalahan

Formatter mengharapkan Swift yang valid secara sintaksis. Jika input tidak lengkap atau mengandung kesalahan sintaksis utama, mungkin gagal atau mengembalikan pesan kesalahan alih-alih output yang diformat.

Alternatif Baris Perintah dengan SwiftFormat

Ingin gaya yang sama di Xcode, CI, atau pre-commit hooks? Gunakan SwiftFormat langsung:

macOS (Homebrew)

Instal SwiftFormat via Homebrew

brew install swiftformat

Menambahkan CLI `swiftformat` ke sistem Anda.

Format satu file Swift

swiftformat MyViewController.swift

Menulis ulang file di tempat menggunakan aturan SwiftFormat default.

Format seluruh proyek Xcode

swiftformat .

Secara rekursif memformat semua file `.swift` di direktori saat ini.

Konfigurasi Tingkat Proyek

Gunakan konfigurasi kustom

swiftformat . --config .swiftformat

Terapkan aturan spesifik tim yang disimpan dalam file konfigurasi `.swiftformat`.

Integrasikan dengan Git pre-commit

swiftformat . && git commit

Jalankan SwiftFormat sebelum setiap commit untuk menjaga cabang utama tetap bersih.

Gunakan alat online ini untuk pembersihan satu kali yang cepat, lalu cerminkan gaya yang sama di repo Anda menggunakan SwiftFormat dan file `.swiftformat` bersama.

Kasus Penggunaan Praktis untuk Swift Formatter

Pengembangan Aplikasi iOS & macOS

Jaga kode UIKit, SwiftUI, dan Combine yang padat tetap mudah dibaca dan konsisten di seluruh cabang fitur.

  • Standarisasi pemformatan pengontrol tampilan, model tampilan, dan layanan sebelum tinjauan kode.
  • Bersihkan kode Swift catatan sementara atau prototipe sebelum menyalinnya ke target produksi.
  • Sejajarkan indentasi dan pembungkusan hierarki tampilan SwiftUI yang kompleks.
struct ContentView: View {
  var body: some View {
    VStack {
      Text("Hello")
      Button("Tap me") {
        print("Tapped")
      }
    }
  }
}

Swift Sisi Server (Vapor, Hummingbird, dll.)

Buat penangan API dan kode perutean lebih mudah dipindai dan ditinjau.

  • Format ulang deklarasi rute dan middleware agar rantai kompleks mudah diikuti.
  • Bersihkan struct pengkodean/dekoding JSON dengan daftar properti panjang.
  • Pastikan pembungkusan yang konsisten untuk panggilan SQL atau klien HTTP panjang dalam kode Swift.
app.get("hello") { req async throws -> String in
    "Hello, world!"
}

Mengajar & Belajar Swift

Tunjukkan kepada siswa seperti apa Swift yang idiomatis dan kurangi 'gangguan gaya' dalam latihan.

  • Normalisasikan kode Swift sebelum berbagi contoh dalam slide atau dokumentasi.
  • Bersihkan kiriman siswa untuk fokus pada logika alih-alih spasi dan indentasi.
  • Demonstrasikan bagaimana pemformatan yang baik meningkatkan keterbacaan tanpa mengubah perilaku.
func fibonacci(_ n: Int) -> Int {
    if n < 2 { return n }
    return fibonacci(n - 1) + fibonacci(n - 2)
}

❓ Frequently Asked Questions

❓Apa sebenarnya yang diubah oleh Swift Formatter ini?

Formatter menyesuaikan **indentasi, spasi, dan pembungkusan baris** untuk mengikuti konvensi gaya Swift. Ini tidak sengaja mengubah logika kode Anda – hanya tata letaknya.

πŸ“Apa yang harus saya pilih untuk Bungkus / Panjang Baris?

Pilihan umum berkisar dari **80 hingga 100 karakter**, tergantung pada tim dan lebar tampilan Anda. Gunakan nilai lebih kecil untuk tata letak sempit (seperti Xcode tampilan terpisah) dan nilai lebih besar jika tim Anda nyaman dengan baris lebih lebar. Atur ke `0` jika Anda tidak ingin pembungkusan berbasis panjang baris.

🧹Apakah ini pengganti SwiftLint?

Tidak. Formatter berfokus pada **tata letak dan gaya** (indentasi, pembungkusan, spasi), sementara SwiftLint berfokus pada **aturan dan masalah potensial** (kode tidak terpakai, penamaan, kompleksitas). Banyak tim menggunakan keduanya bersama-sama.

πŸ”’Apakah aman menempelkan kode Swift produksi di sini?

Sebagai pedoman, hindari menempelkan kode sangat sensitif (seperti algoritma kepemilikan atau rahasia) ke alat online mana pun. Untuk proyek rahasia, lebih baik jalankan SwiftFormat secara lokal atau di dalam sistem CI Anda dengan konfigurasi pribadi.

⚑Bisakah saya menjalankan formatter ini secara otomatis di setiap komit?

Ya – gunakan **SwiftFormat** di repositori Anda (misalnya melalui kait pra-komit Git, Fase Build Xcode, atau pekerjaan CI) untuk menegakkan gaya yang sama secara otomatis. Alat online ini ideal untuk pemeriksaan cepat dan cuplikan kecil.

Pro Tips

Best Practice

Setujui **Ukuran Indentasi** dan **Panjang Baris / Bungkus** tunggal dengan tim Anda, lalu pantulkan nilai-nilai tersebut baik di alat ini maupun dalam konfigurasi `.swiftformat` Anda.

Best Practice

Jalankan formatter pada pull request agar tinjauan kode fokus pada logika dan arsitektur alih-alih perdebatan spasi.

Best Practice

Gunakan formatter pada kode Swift yang dihasilkan (misalnya dari alat codegen) agar terlihat sebersih kode tulisan tangan Anda.

Best Practice

Gabungkan formatter ini dengan "Indentasi Ulang" Xcode hanya untuk penyesuaian lokal cepat; gunakan SwiftFormat di CI untuk mempertahankan gaya yang benar-benar konsisten.

Additional Resources

Other Tools