Cara Membangun Backend untuk MacOS?
Dalam tutorial ini, Anda akan belajar cara membangun backend untuk MacOS menggunakan Back4app dan Parse Swift SDK.
Kami akan membahas integrasi fitur-fitur penting Back4app—seperti manajemen database, Cloud Code Functions, REST dan GraphQL APIs, otentikasi pengguna, dan kueri waktu nyata (Live Queries)—untuk membuat backend yang aman, skalabel, dan kuat yang berkomunikasi dengan lancar dengan aplikasi MacOS Anda.
Anda juga akan melihat bagaimana pengaturan cepat Back4app dan lingkungan yang intuitif dapat secara drastis mengurangi waktu dan usaha dibandingkan dengan mengonfigurasi server dan database secara manual.
Sepanjang jalan, Anda akan mendapatkan pengalaman langsung dengan fungsionalitas kunci, termasuk fitur keamanan lanjutan, penjadwalan tugas dengan Cloud Jobs, dan pengaturan webhook untuk integrasi eksternal.
Pada akhir tutorial ini, Anda akan siap untuk meningkatkan pengaturan dasar ini menjadi aplikasi macOS yang siap produksi, atau dengan mudah menggabungkan logika kustom dan API pihak ketiga sesuai kebutuhan.
Menguasai pendekatan ini akan memberdayakan Anda untuk menyederhanakan alur kerja Anda dan belajar bagaimana membangun backend untuk MacOS dengan cepat dan efisien.
Untuk menyelesaikan tutorial ini, Anda akan membutuhkan:
- Akun Back4app dan proyek Back4app baru Memulai dengan Back4app. Jika Anda tidak memiliki akun, Anda dapat membuat satu secara gratis. Ikuti panduan di atas untuk menyiapkan proyek Anda.
- Pengetahuan dasar tentang Swift dan pengembangan aplikasi macOS Dokumentasi Resmi Apple Keterampilan dengan SwiftUI atau AppKit sangat membantu.
Pastikan Anda memiliki semua prasyarat ini sebelum Anda mulai. Memiliki proyek Back4app Anda yang sudah disiapkan dan lingkungan pengembangan macOS lokal Anda siap akan membantu Anda mengikuti dengan lebih mudah.
Langkah pertama dalam membangun backend macOS Anda di Back4app adalah membuat proyek baru. Jika Anda belum membuat satu, ikuti langkah-langkah ini:
- Masuk ke akun Back4app Anda.
- Klik tombol “Aplikasi Baru” di dasbor Back4app Anda.
- Beri nama aplikasi Anda (misalnya, “macOS-Backend-Tutorial”).

Setelah proyek dibuat, Anda akan melihatnya terdaftar di dasbor Back4app Anda. Proyek ini akan menjadi dasar untuk semua konfigurasi backend yang dibahas dalam tutorial ini.
Back4app bergantung pada Platform Parse untuk mengelola data Anda, menyediakan fitur waktu nyata, menangani otentikasi pengguna, dan lainnya. Menghubungkan aplikasi macOS Anda ke Back4app melibatkan pemasangan SDK Parse Swift dan menginisialisasinya dengan kredensial dari dasbor Back4app Anda.
Ambil Kunci Parse Anda: Di dasbor Back4app Anda, navigasikan ke bagian “Pengaturan Aplikasi” atau “Keamanan & Kunci” aplikasi Anda untuk menemukan ID Aplikasi dan Kunci Klien (atau clientKey). Anda juga akan menemukan URL Server Parse (sering dalam format https://parseapi.back4app.com).

Instal Parse Swift SDK di proyek macOS Anda:
Jika menggunakan Swift Package Manager:
Jika menggunakan CocoaPods, tambahkan ini ke Podfile:
Inisialisasi Parse di aplikasi macOS Anda (misalnya, di AppDelegate.swift jika menggunakan AppKit, atau di @main struct jika membangun aplikasi SwiftUI):
Dengan menyelesaikan langkah ini, Anda telah membangun koneksi yang aman antara front-end (UI) macOS Anda dan backend Back4app. Semua permintaan dan transaksi data dialirkan dengan aman melalui SDK ini, mengurangi kompleksitas panggilan REST atau GraphQL manual (meskipun Anda masih dapat menggunakannya jika diperlukan).
Dengan proyek Back4app Anda yang sudah disiapkan dan SDK Parse Swift yang terintegrasi ke dalam aplikasi macOS Anda, sekarang Anda dapat mulai menyimpan dan mengambil data. Cara termudah untuk membuat objek adalah dengan mendefinisikan sebuah struct yang sesuai dengan ParseObject dan kemudian memanggil save():
Sebagai alternatif, Anda dapat menggunakan API REST atau GraphQL dari Back4app:
Back4app juga menyediakan antarmuka GraphQL:
Berbagai opsi ini memungkinkan Anda untuk mengintegrasikan operasi data dengan cara yang paling sesuai dengan proses pengembangan Anda—baik itu melalui SDK Parse Swift, REST, atau GraphQL.
Secara default, Parse memungkinkan pembuatan skema secara langsung, tetapi Anda juga dapat mendefinisikan kelas dan tipe data Anda di dasbor Back4app untuk kontrol lebih lanjut.
- Navigasikan ke bagian “Database” di dasbor Back4app Anda.
- Buat kelas baru (misalnya, “Todo”) dan tambahkan kolom yang relevan, seperti judul (String) dan isCompleted (Boolean).

Back4app mendukung berbagai tipe data: String, Number, Boolean, Object, Date, File, Pointer, Array, Relation, GeoPoint, dan Polygon. Anda dapat memilih tipe yang sesuai untuk setiap field, atau membiarkan Parse secara otomatis membuat kolom ini saat Anda pertama kali menyimpan objek dari aplikasi macOS Anda.

Back4app menawarkan Agen AI yang dapat membantu Anda merancang model data Anda:
- Buka Agen AI dari Dasbor Aplikasi Anda atau di menu.
- Deskripsikan model data Anda dalam bahasa sederhana (misalnya, “Tolong, buat aplikasi ToDo baru di back4app dengan skema kelas yang lengkap.”).
- Biarkan Agen AI membuat Skema untuk Anda.

Jika Anda memiliki data relasional—katakanlah, sebuah Category objek yang menunjuk ke beberapa Todo item—Anda dapat menggunakan Pointers atau Relations di Parse Swift:
Untuk pembaruan waktu nyata, Back4app menyediakan Live Queries. Dengan mengaktifkan Live Queries di dasbor Back4app Anda, Anda dapat berlangganan perubahan dalam kelas tertentu dari aplikasi macOS Anda.
- Aktifkan Live Queries di dasbor Back4app Anda di bawah Pengaturan Server aplikasi Anda.
- Inisialisasi Live Queries dalam kode (klien Live Query Swift masih dalam pengembangan, tetapi Anda dapat menggunakan pendekatan yang didorong oleh komunitas atau menunggu pembaruan resmi Parse Swift).
Setelah berlangganan, Anda akan menerima notifikasi setiap kali sebuah Todo dibuat, diperbarui, atau dihapus. Ini sangat berharga untuk aplikasi desktop kolaboratif atau interaktif yang sangat di mana banyak pengguna atau proses perlu melihat data terbaru secara instan.
Back4app menganggap serius keamanan dengan menyediakan Access Control Lists (ACLs) dan Class-Level Permissions (CLPs). Fitur-fitur ini memungkinkan Anda membatasi siapa yang dapat membaca atau menulis data berdasarkan objek atau kelas, memastikan hanya pengguna yang berwenang yang dapat memodifikasi data Anda.

Sebuah ACL diterapkan pada objek individu untuk menentukan pengguna, peran, atau publik mana yang dapat melakukan operasi baca/tulis. Misalnya, jika aplikasi macOS Anda memiliki konsep “tugas pribadi” untuk pengguna yang sedang masuk:
Ketika Anda menyimpan objek, ia memiliki ACL yang mencegah siapa pun kecuali pengguna yang ditentukan untuk membaca atau memodifikasinya.

CLPs mengatur izin default seluruh kelas, seperti apakah kelas tersebut dapat dibaca atau ditulis secara publik, atau jika hanya peran tertentu yang dapat mengaksesnya.
- Pergi ke Dasbor Back4app Anda, pilih aplikasi Anda, dan buka Database bagian.
- Pilih kelas (misalnya, “Todo”).
- Buka Izin Tingkat Kelas tab.
- Konfigurasikan default Anda, seperti “Memerlukan Autentikasi” untuk membaca atau menulis, atau “Tidak Ada Akses” untuk publik.

Cloud Code adalah fitur dari lingkungan Parse Server yang memungkinkan Anda menjalankan kode JavaScript kustom di sisi server—tanpa perlu mengelola server atau infrastruktur Anda sendiri. Dengan menulis Cloud Code, Anda dapat memperluas backend Back4app Anda dengan logika bisnis tambahan, validasi, pemicu, dan integrasi yang berjalan dengan aman dan efisien di Parse Server.
Ketika Anda menulis Cloud Code, Anda biasanya menempatkan fungsi JavaScript, pemicu, dan modul NPM yang diperlukan dalam sebuah main.js file. Anda kemudian menerapkan file ini ke proyek Back4app Anda, dan ia berjalan di lingkungan Parse Server. Ini memungkinkan Anda untuk menjaga logika sensitif di sisi server.
Kasus Penggunaan Umum:
- Logika Bisnis: Perhitungan atau transformasi sebelum menyimpan data
- Validasi Data: Memastikan bahwa bidang tertentu memenuhi kriteria
- Pemicu: Melakukan tindakan ketika data berubah
- Integrasi: Menghubungkan dengan API eksternal (misalnya, pembayaran, notifikasi)
- Instal CLI:
- Konfigurasi kunci akun Anda:
- Deploy kode cloud Anda:
Dari macOS menggunakan Swift:
Anda juga dapat memanggilnya melalui REST atau GraphQL, sama seperti di kerangka kerja lainnya.
Back4app memanfaatkan ParseUser kelas sebagai dasar untuk autentikasi. Secara default, Parse menangani hashing kata sandi, token sesi, dan penyimpanan yang aman, sehingga Anda tidak perlu mengatur alur keamanan yang kompleks secara manual.
Dalam aplikasi macOS, Anda dapat membuat pengguna baru dengan:
Melalui REST, login mungkin terlihat seperti:
Setelah login yang berhasil, Parse membuat sebuah token sesi. Anda dapat mengakses pengguna yang saat ini sedang login:
Keluar:
Anda dapat mengintegrasikan penyedia populer seperti Google, Apple, atau Facebook dengan mengonfigurasi authData. Instruksi rinci bervariasi, jadi silakan merujuk ke Dokumentasi Login Sosial.
Untuk mengaktifkan verifikasi email dan reset kata sandi:
- Navigasikan ke Pengaturan Email di dasbor Back4app.
- Aktifkan verifikasi email.
- Konfigurasikan alamat Dari, template email, dan domain kustom Anda jika diinginkan.
Ini meningkatkan keamanan akun dengan memvalidasi email pengguna dan menyediakan metode pemulihan kata sandi.
Parse menyertakan kelas ParseFile untuk menangani unggahan file, yang disimpan dengan aman oleh Back4app:
Lampirkan ke objek:
Anda dapat mengonfigurasi keamanan unggahan file di pengaturan Parse Server Anda. Misalnya, mengontrol pengguna mana yang dapat mengunggah atau menghapus file. Perlu diingat bahwa jika Anda membagikan URL file, siapa pun yang memiliki URL tersebut dapat mengaksesnya kecuali Anda telah menetapkan aturan yang lebih ketat di sisi server.
Verifikasi email dan reset kata sandi sangat penting untuk manajemen pengguna yang aman. Kami telah membahasnya di bawah Langkah 5, tetapi sebagai pengingat:
- Aktifkan fitur ini di Dasbor Back4app (Pengaturan Email).
- Konfigurasikan template email “Aktifkan Verifikasi Email” dan “Reset Kata Sandi”.
- Uji alur dari aplikasi macOS Anda.
Pekerjaan Cloud memungkinkan Anda untuk menjadwalkan dan menjalankan tugas rutin di backend Anda, seperti mengirim email berkala atau membersihkan data. Misalnya:
- Terapkan Cloud Code Anda dengan pekerjaan baru.
- Pergi ke Dasbor Back4app > Pengaturan Aplikasi > Pengaturan Server > Pekerjaan Latar Belakang.
- Jadwalkan pekerjaan (misalnya, harian).

Webhook memungkinkan aplikasi Back4app Anda untuk mengirim permintaan HTTP ke layanan eksternal setiap kali peristiwa tertentu terjadi. Ini sangat kuat untuk mengintegrasikan dengan sistem pihak ketiga seperti gateway pembayaran, alat pemasaran email, atau platform analitik.
- Navigasikan ke konfigurasi Webhook di dasbor Back4app Anda > Lainnya > WebHooks.
- Siapkan endpoint (misalnya, https://your-external-service.com/webhook-endpoint).
- Konfigurasi pemicu untuk menentukan peristiwa mana di kelas Back4app Anda atau fungsi Cloud Code yang akan memicu webhook.

Sebagai contoh, jika Anda ingin memberi tahu Slack setiap kali Todo baru dibuat:
- Buat Aplikasi Slack yang menerima webhook masuk.
- Salin URL webhook Slack.
- Di dasbor Back4app Anda, atur endpoint ke URL Slack tersebut untuk peristiwa “Rekaman baru di kelas Todo.”
The Back4app Admin App adalah antarmuka manajemen berbasis web yang dirancang untuk pengguna non-teknis untuk melakukan operasi CRUD dan menangani tugas data rutin tanpa menulis kode. Ini menyediakan model-centric, user-friendly antarmuka yang menyederhanakan administrasi database, manajemen data kustom, dan operasi tingkat perusahaan.
Aktifkan dengan pergi ke App Dashboard > More > Admin App dan mengklik “Aktifkan Admin App.”

Buat Pengguna Admin Pertama, yang secara otomatis menghasilkan peran baru (B4aAdminUser) dan kelas yang relevan dalam skema aplikasi Anda.

Pilih Subdomain untuk mengakses antarmuka admin dan selesaikan pengaturannya.

Masuk menggunakan kredensial admin yang Anda buat untuk mengakses dasbor Admin App baru Anda.

Setelah diaktifkan, Aplikasi Admin Back4app memudahkan untuk melihat, mengedit, atau menghapus catatan dari database Anda—tanpa memerlukan penggunaan langsung dari Dasbor Parse atau kode backend.
Dengan mengikuti tutorial komprehensif ini, Anda telah:
- Membuat backend yang aman untuk aplikasi macOS di Back4app.
- Mengonfigurasi database dengan skema kelas, tipe data, dan hubungan.
- Mengintegrasikan kueri waktu nyata (Kueri Langsung) untuk pembaruan data segera.
- Menerapkan langkah-langkah keamanan menggunakan ACL dan CLP untuk melindungi dan mengelola akses data.
- Menerapkan Cloud Code fungsi untuk menjalankan logika bisnis kustom di sisi server.
- Mengatur otentikasi pengguna dengan dukungan untuk verifikasi email dan pengaturan ulang kata sandi.
- Mengelola unggahan file dan pengambilan, dengan kontrol keamanan file opsional.
- Menjadwalkan Pekerjaan Cloud untuk tugas latar belakang otomatis.
- Menggunakan Webhooks untuk mengintegrasikan dengan layanan eksternal.
- Menjelajahi Panel Admin Back4app untuk manajemen data.
Dengan antarmuka depan macOS yang solid dan backend Back4app yang kuat, Anda sekarang diperlengkapi dengan baik untuk mengembangkan aplikasi desktop yang kaya fitur, dapat diskalakan, dan aman. Teruslah menjelajahi fungsionalitas yang lebih canggih, integrasikan logika bisnis Anda, dan manfaatkan kekuatan Back4app untuk menghemat waktu Anda dalam administrasi server dan database.
- Bangun aplikasi macOS yang siap produksi dengan memperluas backend ini untuk menangani model data yang lebih kompleks, strategi caching, dan optimasi kinerja.
- Integrasikan fitur canggih seperti alur otentikasi khusus, kontrol akses berbasis peran, atau API eksternal (seperti gerbang pembayaran).
- Periksa dokumentasi resmi Back4app untuk penjelasan lebih dalam tentang keamanan canggih, penyetelan kinerja, dan analisis log.
- Jelajahi tutorial lainnya tentang komunikasi waktu nyata, dasbor IoT, atau layanan berbasis lokasi. Gabungkan teknik yang dipelajari di sini dengan API pihak ketiga untuk membuat aplikasi dunia nyata yang kompleks.
