- Swift cocok untuk membangun antarmuka pengguna berkat sintaksnya yang rapi, pengetikan statis, dan fitur-fitur khusus yang memudahkan penulisan kode
- Adwaita for Swift memanfaatkan kemampuan Swift tersebut untuk menyediakan antarmuka yang intuitif bagi pengembangan aplikasi untuk platform GNOME
- GNOME adalah lingkungan desktop sumber terbuka yang populer untuk Linux, dengan fokus pada kesederhanaan dan aksesibilitas
Contoh kode
- Dalam contoh kode yang menggunakan Adwaita for Swift, sebuah view bernama
Counter didefinisikan untuk menampilkan bagian antarmuka pengguna di dalam jendela
- View dapat disarang di dalam view lain atau ditambahkan sebagai child dari jendela, dan isinya dapat dimodifikasi dari luar sesuai posisinya dalam hierarki view
- Hal ini mempermudah penggabungan view untuk menghasilkan berbagai hasil
Motivasi
- Agar aplikasi GNOME dapat ditulis menggunakan Swift
- Binding libadwaita dan GTK yang sudah ada mengikuti gaya pemrograman imperatif yang membangun antarmuka pengguna menggunakan serangkaian perintah
- Adwaita for Swift dibangun dengan pendekatan berpusat pada data, sehingga misalnya ketika tombol ditekan untuk mengubah variabel
count, antarmuka pengguna akan diperbarui secara otomatis
Kemudahan penggunaan
- Binding tradisional mengharuskan pemanggilan fungsi pada objek agar widget memperbarui isinya setiap kali nilai berubah
- Adwaita for Swift hanya perlu menambahkan pengenal unik pada variabel yang ingin disimpan, lalu menangani sisanya
Keterbacaan
- Pendekatan yang berpusat pada data memberi dampak positif pada keterbacaan
- Berkat definisi deklaratif dari antarmuka pengguna itu sendiri, kita dapat lebih fokus pada tampilan dan perilaku aplikasi daripada cara untuk mendapatkan hasilnya
Pengembangan aplikasi lintas platform
- Adwaita for Swift memungkinkan penulisan aplikasi yang berjalan di Linux, macOS, dan Windows dengan satu basis kode
- Kode Swift backend dapat dibagikan antara aplikasi SwiftUI dan aplikasi GNOME
- Dengan Swift, aplikasi GNOME baru dapat dibuat sambil mencapai keterbacaan kode yang sangat baik dan keamanan memori
Rilis aplikasi
- Adwaita for Swift bekerja dengan baik bersama Flathub, sehingga menyederhanakan instalasi dan rilis aplikasi untuk desktop Linux
- Tersedia ekstensi Freedesktop SDK untuk Swift 5 dan alat untuk mengonversi dependensi Swift Package Manager menjadi sumber Flatpak
Opini GN⁺
- Kombinasi Swift dan GNOME memberi pengembang peluang baru untuk mengembangkan aplikasi di platform baru, terutama karena kemampuan bahasa Swift yang kuat berpadu dengan lingkungan GNOME yang ramah pengguna untuk menghadirkan pengalaman pengembangan yang efisien.
- Artikel ini menawarkan pendekatan baru terhadap lingkungan desktop Linux dan menekankan kemudahan serta keterbacaan pengembangan melalui gaya deklaratif dibandingkan pendekatan pengembangan yang sudah ada.
- Artikel ini menyoroti keunggulan pengembangan lintas platform dan pentingnya memberikan pengalaman pengguna yang sama di berbagai sistem operasi
- Dari sisi latar belakang teknis, pengetikan statis dan keamanan memori pada Swift dapat membantu meningkatkan performa dan stabilitas aplikasi
- Dari sudut pandang kritis, perlu dipertimbangkan kemungkinan munculnya masalah kompatibilitas atau isu performa di lingkungan desktop selain GNOME
3 komentar
https://stuff.mit.edu/afs/athena/…
Pelafalan resminya,
GNOMEdibaca bukan "noom", melainkan "guh-nome".Luar biasa.
Opini Hacker News
Diskusi tentang wrapper yang mirip SwiftUI
Penyebutan proyek dan alat lain
Berbagi pengalaman proyek pribadi
Perbandingan dengan pengalaman masa lalu
Masalah menjalankan di Mac
adwaita.htidak ada.Pendapat tentang "framework impian" pribadi
Pertanyaan tentang dukungan 3D di gtk4
Pendapat tentang penggunaan key pada parameter fungsi
Diskusi tentang pengujian codebase Swift
Menemukan bahwa Swift menjadi opsi menarik untuk pengembangan desktop