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.
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.
Oleh sebab itu, lebih banyak yang menggunakan JSON daripada XML.
Sejarah Singkat JSON
JSON pertamakali dipopulerkan oleh Douglas Crockford. Seorang software engineer yang juga terlibat dalam pengembangan bahasa pemrograman Javascript.
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.
Tapi sebenarnya tidak hanya itu saja, masih ada fungsi lain dari JSON.
Berikut ini beberapa penerapan JSON yang pernah saya temui:
- JSON sebagai format untuk bertukar data client dan server atau antar aplikasi. Contoh: RESTful API;
- JSON sebagai tempat menyimpan data, contoh: Database Mongodb;
- JSON digunakan untuk menyimpan konfigurasi project, contoh: file composer.json pada project PHP dan package.json pada Nodejs;
- JSON digunakan untuk menyimpan konfigurasi dan penyimpanan data pada Hugo;
- JSON digunakan untuk menyimpan konfigurasi project pada Nodejs;
- JSON digunakan untuk menyimpan data menifest;
- dan masih banyak lagi.
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.
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.
Nah untuk array, ia dibuat dengan tanda kurung siku
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 javascriptvar person = {
name: "Dian",
age: 23}
// string JSONvar 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.
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 arrayecho 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.
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 dapat menghubungi tim super Konekthing.
Semoga artikel ini bermanfaat bagi Anda. Jika memiliki pertanyaan, jangan sungkan untuk bertanya kepada tim super kami di
PT. Konekthing Benda Pintar
Jl. Ir H. Juanda No.88 a, Kemiri Muka, Kecamatan Beji, Kota Depok, Jawa Barat 16423
(021) 77808509
info@konekthing.com
Konekthing Bandung
Jl. Sukaresmi IV No.7, Ciumbuleuit, Kec. Cidadap, Kota Bandung, Jawa Barat 40142
Konekthing Yogyakarta
Jl. Duwet, RT.02/RW.32, Duwet, Sendangadi, Kec. Mlati, Kabupaten Sleman, Daerah Istimewa Yogyakarta 55285
(0274) 2883817, 0812-2510-1600
Tags:
website,
situs,
dashboard,
internet,
program,
desktop,
mobile,
game,
iot,
koding,
script,
javascript,
belajarprogrammer,
server,
console,
developer