Apa itu JSON ? – Saat kita berbicara tentang dunia
per-website-an, kita akan merujuk kepada bahasa pemrograman web. Bahasa
pemrograman yang membentuk sebuah website dikategorikan menjadi dua jenis,server
scripting- dengan deretan contohnya seperti PHP, ASP, Ruby, dsb- dan juga client scripting- dengan contoh yang
familier dan standar yaitu X/HTML, CSS dan juga Javascript.
JSON
adalah struktur
data yang universal, dalam artian bisa digunakan dalam berbagai bahasa
pemrograman. Hampir semua bahasa pemrograman mendukung penuh JSON dalam
berbagai format. Hal ini memungkinkan format data yang dapat dipertukarkan
menggunakan bahasa pemrograman juga menggunakan dasar dari struktur JSON.
Format data JSON mempunyai aturan
sebagai berikut :
Object
adalah satu set nama/nilai
yang tidak terurut. Penulisan objek dimulai dengan tanda { (left brace) dan
diakhiri dengan tanda } (right brace). Setiap nama diikuti oleh tanda : (colon)
dan pasangan nama/nilai dipisahkan dengan tanda , (comma).
Kenapa
menggunakan JSON?
Jawabannya
karena ukuran datanya lebih kecil di banding dengan XML , sifatnya
"self-describing"
dan mudah di mengerti.
Mengevaluasi objek javascript
format teks dari JSON = sintak/kode yang identik dengan kode untuk membuat objek JavaScript, memiliki kesamaan dengan JS alias Java Script ,hanya JSON lebih simpel .
JSON memiliki tipe :
·
Objek adalah kumpulan pasangan dengan nama/ nilai yang
tidak urut,nama dengan nilai nya di pisah dengan tanda " : "
(titik dua). sedangkan parameter di pisah dengan tanda ","(koma).
·
Array adalah koleksi nilai ter urut,di kumpulkan dengan
tanda "[ ]"
suatu nilai bisa berupa : String,
angka, true, fals, null ,kalau menggunakan String di tandai dengan tanda "
" (petik ganda).
{
"employees": [
{ "firstName":"Agus" , "lastName":"picek" },
{ "firstName":"uchu" , "lastName":"kelik" },
{ "firstName":"Boby" , "lastName":"bongak" }
]
}
{
"employees": [
{ "firstName":"Agus" , "lastName":"picek" },
{ "firstName":"uchu" , "lastName":"kelik" },
{ "firstName":"Boby" , "lastName":"bongak" }
]
}
- JSON
data ditulis sebagai pasangan nama / nilai nya.
Sepasang
nama / nilai terdiri dari nama field (dalam tanda kutip ganda), diikuti oleh
titik dua, diikuti dengan nilai:
contoh
:
"firstName"
: "Agus"
Hal ini
mudah dimengerti, dan sama dengan pernyataan JavaScript:
firstName = "Bongak"
- Objek
JSON ditulis di dalam kurung keriting,
Objek
dapat berisi beberapa nama / pasangan nilai:
{
"firstName":"Jin" , "lastName":"picek"
}
Ini
juga mudah dimengerti, dan sama dengan laporan JavaScript:
firstName
= "Jin"
lastName = "picek"
lastName = "picek"
- JSON
array ditulis dalam tanda ''[ ]" (kurung persegi).
Array
dapat berisi beberapa objek:
{
"employees": [
{ "firstName":"Agus" , "lastName":"picek" },
{ "firstName":"Boby" , "lastName":"bongak" },
{ "firstName":"uchu" , "lastName":"kelik" }
]
}
"employees": [
{ "firstName":"Agus" , "lastName":"picek" },
{ "firstName":"Boby" , "lastName":"bongak" },
{ "firstName":"uchu" , "lastName":"kelik" }
]
}
pada
contoh di atas, objek bernama "karyawan/employees" adalah array yang
berisi tiga obyek. Setiap objek adalah catatan seseorang (dengan nama pertama
dan nama terakhir).
Berikut adalah JSON yang sama dengan XML dan yang beda dengan XML :
Like as XML :
·
teks
biasa
·
"self-describing"
(mudah di baca manusia)
·
Hirarkis
(nilai-nilai dalam nilai-nilai)
·
bisa di
uraikan oleh Java Script juga
·
data
dari JSON dapat di angkut atau di gunakan di AJAX
Unlike as XML :
·
tidak
ada tag penutup
·
simple
dan singkat
·
lebih
cepat untuk membaca dan menulis
·
bisa di
uraikan dengan built-in JavaScript eval()
·
menggunakan
array
·
tidak
ada kata di cadangkan
Aturan dalam JSON :
·
Data
dalam pasangan nama / nilai
·
Data dipisahkan
dengan koma
·
Keriting
kurung memegang benda
·
Persegi
kurung memegang array
Harga pada JSON :
nilai-nilai JSON dapat berupa ,
nilai-nilai JSON dapat berupa ,
·
Sejumlah
(titik integer atau floating)
·
Sebuah
string (dalam tanda kutip ganda)
·
Sebuah
Boolean (true atau false)
·
Sebuah
array (dalam kurung persegi)
·
Sebuah
objek (dalam kurung keriting)
·
nol
Siapa penemu dan kapan terciptanya JSON?
JSON diciptakan oleh Douglas
Crockford pada tahun 2001, dan ditetapkan dalam RFC 4627 dengan IETF (Internet
Engineering Task Force) Per spesifikasi, JSON itu IANA (Internet Assigned
Numbers Authority) jenis media adalah application / json, dan jenis file json .
Kombinasi
JSON dan HTML
Kita
akan langsung mengaplikasikan JSON dalam coding, untuk
itu sebaiknya Anda telah menguasai dasar-dasar HTML/JavaScript, yang tentunya
akan mempermudah proses pemahaman.
Untuk
lebih mengenal bagaimana JSON menerangkan sebuah data, berikut adalah contoh
penulisan JSON dalam sebuah file HTML:
Contoh
di atas mendeklarasikan data dengan JSON. Tampak seperti sebuah struktur data
yang cukup mudah untuk dimengerti, bukan?
Untuk
mengakses dan menampilkannya, Anda dapat menggunakan perintah JavaScript
document.writeln seperti yang tertulis juga pada kode program di atas.
Melihat
cara penulisan JSON, Anda tentu akan memaklumi mengapa JSON merupakan singkatan
dari JavaScript Object Notation, karena JSON memang berbasiskan JavaScript.
Tipe
data dalam JSON dapat dikategorikan sebagai berikut:
1.
Number (berupa integer, real, atau floating point).
2.
String.
3.
Boolean (true dan false).
4.
Array.
5.
Object.
6.
null.
Kombinasi
JSON dan AJAX
JSON
sering digunakan didalam aplikasi AJAX sebagai alternatif lain penggunaan XML(extended Markup Language) adalah bahasa markup yang digunakan untuk menyimpan
data (tidak ada program) dan tidak tergantung dengan tools tertentu (seperti
editor, dbms, compiler, dsb). Pembahasan
mengenai AJAX telah pernah dibahas dalam edisi terdahulu PC Media, tetapi
sekadar mengingatkan kembali, secara garis besar AJAX merupakan teknik untuk
menciptakan aplikasi web yang interaktif, tidak kalah dengan aplikasi desktop.
Hal ini membuat garis perbedaan antara aplikasi web dan aplikasi desktop
semakin tipis.
Web
interaktif, tentunya melibatkan pertukaran data antara server dan browser,
format data yang dipergunakan sebaiknya bersifat universal, ringan, dan mudah
diimplementasikan.
Karena
itulah XML sering digunakan dalam aplikasi AJAX. Tetapi sekarang, AJAX memiliki
JSON sebagai alternatif pasangan baru. Walaupun XML seolah sudah mengikat AJAX
melalui singkatan AJAX itu sendiri: Asynchronous JavaScript and XML, tapi
apalah arti sebuah nama? Hal ini sah-sah saja, anggaplah AJAX juga tidak mau
kalah dengan selebriti dalam hal gonta-ganti pasangan.
Tapi
yang kena getahnya kan programer? Karena harus mempelajari lagi pemrograman
baru, cara baru, teknik baru, dan seterusnya? Kalau begitu, salahkan saja
programer (yang membuat JSON dan teknologi lainnya), karena menciptakan semua
hal baru tersebut.
Sedikit
pesan moral jika sebagai programer kita mengeluh karena mempelajari hal yang
baru: pekerjaan programer dituntut untuk menciptakan hal yang baru, contohnya
dari membuat aplikasi sederhana, membuat sistem manual menjadi otomatis, atau bahkan membuat
saingan JSON (mungkin saja, bukan?), di mana karya tersebut baru berarti jika
ada yang menggunakan atau mempelajarinya, lalu apa alasan kita untuk mengeluh
karena ada hal baru yang harus dipelajari?
Walaupun
demikian, selektif tetap menjadi kata kunci untuk mempelajari teknologi.
Proses Kerja JSON Simple & Fast
Karena
kesederhanaan penulisan JSON, ukuran file yang dihasilkanpun menjadi lebih
ramping dibandingkan XML (karena terus mengulangi kata yang sama dalam tag-tag
yang digunakan). Hal ini berimbas pada kecepatan loading transfer data,
pertukaran data JSON lebih cepat jika dibandingkan dengan XML.
Oleh karena itu banyak situs-situs besar yang menggunakan JSON sebagai format pertukaran data. Sebagai contoh, twitter menyediakan API untuk digunakan pada situs pihak ketiga atau aplikasi pihak ketiga misalnya twitter client (tweetdeck dll).
Oleh karena itu banyak situs-situs besar yang menggunakan JSON sebagai format pertukaran data. Sebagai contoh, twitter menyediakan API untuk digunakan pada situs pihak ketiga atau aplikasi pihak ketiga misalnya twitter client (tweetdeck dll).
Ukuran File
Banyaknya karakter yang digunakan
dalam sebuah file akan mempengaruhi besarnya file yang dihasilkan. Karena XML
adalah Markup language, pastinya terdapat kata-kata yang sama pada setiap tag
yang digunakan. Berbeda dengan JSON yang hanya menggunakan tanda kurung kurawal
sebagai pembeda data-datanya sehingga ukuran file JSON lebih kecil dibandingkan
XML. Namun jika keduanya telah dicompress sebelum dikirimkan ukurannya tidak
jauh berbeda.
Kecepatan Parsing
Parsing adalah proses pengenalan
bagian-bagian terkecil dari suatu dokumen XML/JSON dan Proses parsing ini
berlangsung didalam browser. Proses parsing dokumen JSON lebih sederhana, yakni
dengan menggunakan fungsi javascript eva() sementara XML menggunakan
XMLHttpRequest. Berdasarkan survey JSON lebih unggul dalam proses parsing ini.
Kesimpulan
Keberadaan JSON sebagai format
pertukaran data baru tidak serta merta menghapus keberadaan XML yang sudah
menjadi pendahulunya. Keduanya memiliki kelebihan dan kekurangan. Namun kini
JSON telah didukung oleh berbagai bahasa pemrograman (proses parsing) sehingga
memungkinkan penggunaan JSON lebih ramai dibandingkan dengan XML kedepannya.
Pada akhirnya programmer sendirilah yang menentukan, apakah pakai JSON atau
XML?
No comments:
Post a Comment