Apa itu JSON, dan apa gunanya dalam pemrograman?

Bagi yang baru mendengar JSON, mungkin akan bertanya:

“JSON itu apa sih? dan apa gunanya dalam pemrograman? lalu cara menggunakannya bagaimana?”

Saya juga demikian.

Pada awalnya saya belum paham, apa itu JSON dan bagaimana perannanya dalam dunia pemrograman.

Tapi setelah melewati berbagai macam eksperimen, akhirnya bisa paham.

Apapun bahasa pemrograman yang akan kamu gunakan…

…wajib hukumnya memahami JSON.

Karena JSON banyak digunakan dalam membuat aplikasi dan digunakan di hampir semua bahasa pemrograman.

Pada kesempatan ini, kita akan membahas dasar-dasar JSON yang harus kamu ketahui.

Cukup ketahui 5 hal ini saja:

Apa itu JSON?

Kita mulai dari pengertian JSON dulu…

JSON (JavaScript Object Notation) adalah sebuah format data yang digunakan untuk pertukaran dan penyimpanan data.1

Kata kunci yang perlu diingat: “pertukaran & penyimpanan data”

JSON merupakan bagian (subset) dari Javascript. JSON bisa dibaca dengan berbagai macam bahasa pemrograman seperti C, C++, C#, Java, Javascript Perl, Python, dan banyak lagi.

Hal ini membuat JSON menjadi bahasa yang ideal untuk perturakan data antar aplikasi.

JSON bahkan mendominasi pendahulunya si XML (eXtensible Markup Language)

Kalau dibandingkan dengan XML, JSON lebih sederhana dan mudah dibaca.

Perbandingan JSON dengan XML

Oleh sebab itu, lebih banyak yang menggunakan JSON daripada XML.

Berikut ini grafik penggunaan JSON dibandingkan dengan XML, YAML, CSV, dan protocol-buffers.

Grafik penggunaan JSON di Dunia

Sejarah Singkat JSON

JSON pertamakali dipopulerkan oleh Douglas Crockford. Seorang software engineer yang juga terlibat dalam pengembangan bahasa pemrograman Javascript.2

Doglas Crockford
Doglas Crockford

JSON tidak ditemukan oleh satu orang saja. Dulu namanya belum JSON…

Artinya kata “JSON” belum ada. Orang-oarang hanya mengenal Objek Javascript yang dikirim melalui jaringan.

Sejak meledaknya teknologi AJAX pada tahun 2000. JSON mulai diperkenalkan dan pada tahun 2001, domain json.org mulai mengudara.

Hingga saat ini JSON banyak digunakan di mana-mana.

Penerapan JSON dalam Pemrograman

JSON biasanya digunakan sebagai format standar untuk bertukar data antar aplikasi.

Pertukaran data antar aplikasi dengan JSON

Tapi sebenarnya tidak hanya itu saja, masih ada fungsi lain dari JSON.

Berikut ini beberapa penerapan JSON yang pernah saya temui:

Struktur Dasar JSON

Coba perhatikan stuktur JSON ini.

Struktur dasar JSON

Ini adalah struktur paling sederhana…

JSON selalu dimulai dengan tanda kurung kurawal { dan ditutup dengan kurung }.

Lalu di dalam kurung kurawal, berisi data yang format key dan value. Jika terdapat lebih dari satu data, maka dipisah dengan tanda koma dan di data terakhir tidak diberikan koma.

Format JSON objek

Lalu key dan valude dipisah dengan titik dua.

Oh iya, untuk value…

Kita bisa memberikan tipe data apa pun. Bahkan juga bisa kita isi dengan array dan objek.

Berikut ini tipe data yang didukung oleh JSON.

Tipe data yang didukung oleh JSON

Nah untuk array, ia dibuat dengan tanda kurung siku [...].

Array pada JSON

Contohnya seperti ini:

{
    "name": "Dian",
    "hobbies": ["Coding", "Blogging", "Drawing"]
}

…dan untuk objek contohnya seperti ini:

{
    "name": "petanikode",
    "url": "https://www.petanikdoe.com",
    "rank": 1,
    "socialmedia": {
        "facebook": "petanikode",
        "twitter": "petanikode",
        "instagram": "petanikode",
        "youtube": "petanikode",
        "github": "petanikode"
    }
}

Perhatikan pada key socialmedia di sana kita memberikan nilainya dengan objek.

Cara Produksi dan Konsumsi Data JSON

Setiap bahasa pemrograman memiliki cara yang berbeda-beda untuk memproduksi (membuat) dan mengkonsumsi data JSON.

Pada Javascript, kita bisa gunakan fungsi JSON.stringify() untuk membuat JSON dari objek Javascript.

Contoh:

// objek javascript
var person = {
    name: "Dian",
    age: 23
}

// string JSON
var jsonString = JSON.stringify(person);

// maka akan menghasilkan:
// {"name":"Dian","age":23}

Pada Java, kita bisa menggunakan library Gson untuk melakukan serialisasi (membuat) dan deserialisasi data JSON.

Serialisasi dan deserialisasi JSON

Pada bahasa pemrograman Python, kita dapat menggunakan modul json untuk membuat dan membaca (konsumsi) data JSON.

Contoh:

>>> import json
>>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])
'["foo", {"bar": ["baz", null, 1.0, 2]}]'
>>> print json.dumps("\"foo\bar")
"\"foo\bar"
>>> print json.dumps(u'\u1234')
"\u1234"
>>> print json.dumps('\\')
"\\"
>>> print json.dumps({"c": 0, "b": 0, "a": 0}, sort_keys=True)
{"a": 0, "b": 0, "c": 0}
>>> from StringIO import StringIO
>>> io = StringIO()
>>> json.dump(['streaming API'], io)
>>> io.getvalue()
'["streaming API"]'

Contoh lagi:

import json

# dictionary
person = {
    "name": "Dian",
    "age": 23
}

# Membuat JSON dari dictionary
json.dumps(person)

# Maka akan menghasilkan:
# '{"age": 23, "name": "Dian"}'

Pada bahasa pemrograman PHP, kita bisa menggunakan fungsi json_encode() untuk menghasilkan JSON dari Array asosiatif dan fungsi json_decode() untuk mengubah JSON menjadi Array.

Contoh:

<?php

// data dengan array assosiatif
$person = [
    "name" => "Dian",
    "age" => 23
];

// membuat JSON dari array
echo json_encode($person);

// maka akan menghasilkan:
// {"name":"Dian","age":23}
?>

Intinya, setiap bahasa pemrograman memiliki fungsi, modul, dan library tersendiri untuk membuat dan membaca data JSON.

Berikut ini daftar tutorial yang bisa kamu baca:

  1. Cara Serialisasi dan Deserialisasi data JSON di Java dengan menggunakan GSON
  2. Cara Parsing data JSON di Python
  3. Cara Parsing data JSON di PHP
  4. Cara Parsing data JSON di Javascript.

Apa Selanjutnya?

Sekarang kita sudah kenal, apa itu JSON dan bagaimana penggunaanya dalam pemrograman.

Tentu ini masih belum cukup…

Karena itu, silahkan lanjutkan belajar tentang JSON secara mandiri melalui dokumentasi resmi ataupun tutorial di sini.


  1. https://www.json.org/ ↩︎

  2. https://en.wikipedia.org/wiki/JSON ↩︎