Kamis, 17 November 2011

JSON

 Pengertian JSON
JSON (dibaca: “Jason”), singkatan dari JavaScript Object Notation adalah suatu format ringkas pertukaran data komputer. Formatnya berbasis teks dan terbaca-manusia serta digunakan untuk merepresentasikan struktur data sederhana dan larik asosiatif (disebut objek). Format JSON sering digunakan untuk mentransmisikan data terstruktur melalui suatu koneksi jaringan pada suatu proses yang disebut serialisasi. Aplikasi utamanya adalah pada pemrograman aplikasi web AJAX dengan berperan sebagai alternatif terhadap penggunaan tradisional format XML.
Walaupun JSON didasarkan pada subset bahasa pemrograman JavaScript (secara spesifik, edisi ketiga standar ECMA-262, Desember 1999 [1]) dan umumnya digunakan dengan bahasa tersebut, JSON dianggap sebagai format data yang tak tergantung pada suatu bahasa. Kode untuk pengolahan dan pembuatan data JSON telah tersedia untuk banyak jenis bahasa pemrograman. Situs json.org menyediakan daftar komprehensif pengikatan JSON yang tersedia, disusun menurut bahasa. (id.wikipedia.com)
Contoh Json
1
2
3
4
5
6
7
8
9
10
11
{"menu": {
  "id": "file",
  "value": "File",
  "popup": {
    "menuitem": [
      {"value": "New", "onclick": "CreateNewDoc()"},
      {"value": "Open", "onclick": "OpenDoc()"},
      {"value": "Close", "onclick": "CloseDoc()"}
    ]
  }
}}
data diatas setara dengan
1
2
3
4
5
6
7
<menu id="file" value="File">
  <popup>
    <menuitem value="New" onclick="CreateNewDoc()" />
    <menuitem value="Open" onclick="OpenDoc()" />
    <menuitem value="Close" onclick="CloseDoc()" />
  </popup>
</menu>

JSON Vs XML

Dalam membanding kan antara json dan XML penulis mengambil kreteria beriku dalam membandingkannya.
  • Human readability. Mudah dibaca adalah kreteria yang penting karena dalam proses pembuatan dan mendebug akan memudahkan programmer. XML lebih mudah dibaca dan di debug dibanding kan JSON. Perhatikan dan bandingkan 2 contoh berikut XML
    1
    2
    3
    4
    
    <person>
       <firstname>Ibnu</firstname>
       <lastname>daqiqil</lastname>
    </person>
    JSON:
    1
    2
    3
    4
    
    ({
       "firstName" : "Ibnu",
       "lastName" : "Daqiqil"
    });
  • Kemudahan dibuat disisi server. Artinya ada dukungan dari server side untuk menggenerate data dalam format tersebut. Di php pembuatan data berformat json jauh lebih mudah apalagi di php versi 5.2. Cukup dengan memanggil fungsi json_encode maka sebuah format JSON sudah dapat di buat. Contoh
    XML
    1
    2
    3
    4
    5
    
    $doc = new DOMDocument( );
    $ele = $doc->createElement( 'nama' );
    $ele->nodeValue = 'Sensei Ninja PHP';
    $doc->appendChild( $ele );
    print $doc->saveHTML( );
    JSON
    1
    2
    
    $data = array ("nama" => "Sensei Ninja PHP");
    print json_encode($data);
  • Kemudahan processing di client side. Json sangat mudah di proses di client side trutama di javascript. contoh
    1
    2
    
    var person = eval(xhr.responseText);
    alert(person.firstName);
    Simple saja.. dengan meng-”eval” sebuah string json maka akan berubah menjadi sebuah object javascript. berbeda dengan XML. harus diambil menggunakan proses DOM. contoh
    1
    2
    3
    
    var xml = xhr.responseXML;
    var elements = xml.getElementsByTagName("firstName");
    alert(elements[0].firstChild.textContent);
  • Debugging dan trouble-shooting sama-sama susah di debug. jadi harus dibaca satu2. jika XML error maka dia tidak bsa di tampilkan dengan baik. jika JSON akan muncul error di javascript anda
Jadi.. terserah anda mau menggunakan xml atau json. saya lebih prefer menggunakan JSON ketika membangung aplikasi yang bersifat large data.. sizenya akan jauh lebih kecil.

Syntax JSON

Deklarasi.
Semua object JSON di daklarasikan menggunakan spasang tanda kurawal. Jika kita menggunakan pada javascript maka kita dapat meng-assign-nya langsung ke variabel. contoh
1
var json_obj = {};
String, Integer dan Boolean.
Kita dapat memasukan ketiga tipe data diatas kedalam sebuah json object. untuk string cukup dimasukkan diantara tanda petik. contoh:
1
2
3
4
5
var json_obj = {
  nama : "Ibnu Daqiqil Id",
  umur : 24,
  menikah : false
};
Array dan object
Selain tipe data sederhana kita juha dapat mempunyai tipe data yang komplek seperti array dan object.
1
2
3
4
5
6
7
8
9
10
var json_obj = {
  nama : "Ibnu Daqiqil Id",
  umur : 24,
  menikah : false,
  acara_favorite: ['Lost', 'Chuck', 'Smallvile', 'Heroes'],
  keluarga: [
        {nama: "Joni", umur: 57, relasi: "ayah"},
        {nama: "Tina", umur: 26, relasi: "kakak"}
    ]
}; 
 
SUMBER:

0 komentar:

Posting Komentar