Penggunaan Data Model & Struct pada Swift

Swift merupakan salah satu bahasa pemrograman yang mendukung pemakaian Data Model. Kali ini saya akan membuatnya menggunakan struktur data yang didapat dari API developer.marvel.com.

Mengapa harus menggunakan Data Model & Struct ?

IMHO, bisa saja sebuah aplikasi dibuat tanpa menggunakan Data Model & Struct, dimana masih menggunakan string statis. Tapi tentu hal ini akan menyulitkan untuk dokumentasi aplikasi tersebut & banyak kemungkinan untuk terjadi typo. Bisa juga membuat frustasi developer yang baru akan mulai mengembangkan aplikasi tersebut. 😫

Berikut contoh struktur data Character dari API tersebut :

Namun kali ini saya hanya akan menggunakan value dari key name, description & thumbnail dari data tersebut. 👌

Pertama buatlah file Swift baru, File > New File > Swift File.

Gunakan MarvelModel sebagai nama file & nama Class, atau apapun yang mudah diingat, kemudian buatlah sebuah Struct dengan nama Character di atas nama Class.

struct Character

Ada 3 properti dari Struct Character dengan tipe data String & default value empty string

Berikutnya, inisiasikan sebuah variabel dengan tipe data Struct Character yang kita buat sebelumnya :

variabel characters

Karena kita akan menampilkan beberapa character sekaligus dari API yang dibuat, variabel tersebut diinisiasikan sebagai sebuah Array dari Struct Character. 🗄

Almost done 👏 , karena bentuk data yang diterima dari API merupakan JSON Dictionary, sekarang kita dapat menggunakan perulangan untuk inisiasi set variabel characters yang telah dibuat.

Ada cukup banyak hal yang terjadi :

  • Inisiasi variabel data, setelah dikonversi sebagai Dictionary dari tipe data JSON menggunakan SwiftyJSON
  • Perulangan menggunakan map, dimana kita set value di tiap properti pada Struct Character menggunakan data API (nama key yang sesungguhnya dapat dilihat setelah login pada halaman developer.marvel.com)
  • Dalam set value sebuah Struct, menggunakan syntax :

NamaStruct(property1: value, property2: value, … propertyN : value)

  • Append variabel yang telah diinisiasikan sebagai sebuah struct Character ke dalam variabel characters.

Done! Sekarang Data Model MarvelModel siap digunakan. 🎉


Dalam penggunaan , ingat untuk inisiasi Data Model terlebih dahulu dengan hasil API yang telah didapat.

let data = MarvelModel.init(resultAPI : response)

ketika menggunakan properti characters dari Data Model MarvelModel, kita sudah dapat menggunakan properti dari Struct Characters, namun tentu harus menggunakan perulangan terlebih dahulu.

properti dari Struct Characters