• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
11
0
0

Teks penuh

(1)

5

BAB II

LANDASAN TEORI

Bab ini akan menjelaskan teori dan materi-materi penunjang pengerjaan tugas akhir.

2.1 Application Programming Interface (API)

Application Programming Interface (API) adalah Sebuah bahasa dan

pesan format yang digunakan oleh program aplikasi untuk berkomunikasi dengan sistem operasi atau program pengendalian lainnya seperti sistem manajemen database (DBMS) atau protokol komunikasi [7]. API diimplementasikan dengan menulis panggilan fungsi dalam program, yang menyediakan hubungan ke subrutin yang diperlukan untuk eksekusi. Dengan demikian, API menyiratkan bahwa driver atau program modul tersedia dalam komputer untuk melakukan operasi atau perangkat lunak yang harus dihubungkan ke dalam program yang ada untuk melakukan tugas-tugas.API dapat menjelaskan cara sebuah tugas (task) tertentu dilakukan. Dalam pemrograman procedural seperti bahasa C, aksi biasanya dilakukan dengan media pemanggilan fungsi. Karena itu, API biasanya menyertakan penjelasan dari fungsi/rutin yang disediakannya.

API (Application Programming Interface) merupakan interface yang digunakan untuk mengakses aplikasi atau layanan dari sebuah program. API memungkinkan pengembangan untuk memakai fungsi yang sudah ada dari aplikasi lain sehingga tidak perlu membuat ulang dari awal

Gambar 2.1 (sumber: www.pcmag.com/encyclopedia/term/37856/api)

(2)

6 Gambar 2.2 (sumber: 3scale Networks)

Dari gambar 2.1 dan 2.2 dapat dilihat bahwa API banyak digunakan dan memudahkan dalam kegiatan bisnis. Keuntungan memprogram dengan menggunakan API adalah:

Portabilitas. Programmer yang menggunakan API dapat menjalankan programnya dalam sistem operasi mana saja asalkan sudah ter- install API tersebut. Sedangkan system call berbeda antar sistem operasi, dengan catatan dalam implementasinya mungkin saja berbeda.

Lebih Mudah Dimengerti. API menggunakan bahasa yang lebih terstruktur dan mudah dimengerti daripada bahasa system call. Hal ini sangat penting dalam hal editing dan pengembangan.

2.2 API TESTING

Testing API dilakukan untuk sistem yang memiliki banyak API untuk di tes. Pengecekan dilakukan dengan mensimulasikan penggunaan API oleh pengguna. Ada beberapa harus diperhatikan dalam pengecekan API [8] yakni:

a. Menjelajahi kondisi batas dan memastikan bahwa tes memanfaatkan berbagai parameter dari API panggilan dengan cara yang memverifikasi fungsi dan mengekspos kegagalan.

b. Menghasilkan kombinasi nilai parameter yang menarik untuk panggilan dengan dua parameter atau lebih.

(3)

7 c. Memverifikasi perilaku API yang mempertimbangkan kondisi lingkungan

eksternal seperti file, perangkat periferal, dan sebagainya

d. Memverifikasi Urutan panggilan API dan memeriksa apakah API menghasilkan hasil yang bermanfaat dari panggilan berturut-turut.

Secara umum pengecekan yang dilakukan terhadap API yaitu a. Nilai yang diberukan sesuai kondisi yang diberikan.

b. Memastikan bahka API tidak memberikan nilai apapun selain kondisi c. Memastikan jika API memicu panggilan terhadap API lain, pengeluaran

harus bias dilacak dan diverifikasi.

d. Memastikan jika API mengubah struktur data

2.3 PHP

Php adalah bahasa pemrograman server side yang dirancang untuk pengembangan web, tetapi bias juga digunakan sebagau bahasa pemrograman untuk tujuan umum. Php awalnya singkatan dari Personal Home Page, namun secara resmi PHP adalah Hyper Text Preprosessor. Bahasa PHP merupakan bahasa server-side sehingga hanya bias berjalan menggunakan web server

Php merupakan software yang bersifat open source dan mampu melintas di berbagai platform, yaitu dapat digunakan di sistem operasi dan web server apapun. PHP mampu berjalan di windows dan linux. Php dapat dijalankan dengan dua cara, yaitu sebagai modul Apache di web server dan sebagai binary di CGI (Common Gateway Interface)

Bahasa ini dibuat pertama kali oleh Rasmus Lerdoff pada 1994, awalnya PHP itu program CGI yang di khususkan untuk menerima input melalui form yang ditampilkan dalam browser. Pertama kali php dibuat Rasmus pada websitenya hanya untuk mencatat log siapa saja yang membuka (berkunjung) websitenya dan berapa jumlah pengunjung.

Kode PHP bisa dicampur dengan kode HTML atau dapat digunakan dalam kombinasi dengan berbagai template engine dan kerangka web.

(4)

8 2.5 GRABBING

Grabbing adalah suatu teknik untuk mengambil teks atau secara umum obyek

yang ada pada situs lain kemudian diletakkan ke situs kita [9]. Grabbing menggunakan command line curl yang berfungsi mengambil atau mengirim file melalui sebuah URL syntax. Konsep grabbing ini berbeda dengan konsep web

service karena data teks yang diambil melalui grabbing ini tidak disajikan dalam

bentuk format tertentu seperti halnya XML atau JSON. Namun teks yang diambil berada di halaman web situs, atau dengan kata lain terselip di dalam kode-kode HTML. Untuk melakukan grabbing ini, kita bisa menggunakan CURL. Dengan

CURL ini nanti, kita bisa baca semua kode HTML dari suatu situs lalu kita ambil

informasi yang kita inginkan dan kemudian informasi tersebut kita tampilkan di web kita.

PHP mendukung libcurl, CURL adalaha sebuah library yang diciptakan

oleh Daniel Stenberg, yang memungkinkan kita untuk terhubung dan berkomunikasi dengan berbagai jenis server dengan berbagai jenis protokol.

libcurl saat ini mendukung http, https, ftp, gopher, telnet, dict, file, dan protokol ldap. libcurl juga mendukung sertifikat HTTPS, HTTP POST, HTTP PUT, FTP upload (hal ini juga bisa dilakukan dengan ekstensi ftp PHP), HTTP bentuk yang

didasarkan upload, proxy, cookies, dan user + otentikasi password. Fungsi-fungsi ini telah ditambahkan di PHP 4.0.2. Secara umum teknik grabbing pada php dapat ditulis dengan kode berikut

Untuk memanggil funsi tersebut, dapat dipanggil dengan cara berikut

Kode tersebut akan mengambil halaman google dan menunjukkannya. $grab= grabbing('http://www.google.com/'); echo $grab; <?php function grabbing($url){ $data = curl_init(); curl_setopt($data,CURLOPT_RETURNTRANSFER, 1); curl_setopt($data, CURLOPT_URL, $url);

$output = curl_exec($data); curl_close($data);

return $output; }

(5)

9 2.6 MySQL

MySQL adalah sistem manajemen database MySQL yang bersifat open source dan paling popular saat ini. Sistem Database MySQL mendukung beberapa

fitur seperti multithreading, multiuser, dan SQL database managemen system (DBMS). Database ini dibuat untuk keperluan sistem database yang cepat, handal dan mudah digunakan

Kehandalan suatu sistem basis data (DBMS) dapat diketahui dari cara kerja pengoptimasinya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai penyedia basis data, MySQL mendukung operasi basis data transaksional maupun operasi basis data non-transaksional. Pada modus operasi nontransaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak penyedia basis data kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis Web ( wordpress ), CMS dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basis data transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus nontransaksional [10].

Kelebihan MySQL :

1. Source MySQL dapat diperoleh dengan mudah dan gratis

2. Sintaksnya lebih mudah dipahami dan tidak rumit 3. Pengaksesan database dapat dilakukan dengan mudah

4. MySQL merupakan program yang multithreading, sehingga dapat dipasang

pada server yang memiliki multiCPU

5. Didukung program-program umum seperti C, C++, Java, PHP, dsb

6. Bekerja pada berbagai platform (tersedia dalam berbagai versi untuk berbagai sistem operasi)

(6)

10 7. Memiliki jenis kolom yang cukup banyak sehingga memudahkan

konfigurasi sistem database.

8. Memiliki sistem security yang cukup baik dengan verifikasi host. 9. Mendukung ODBC untuk sistem operasi windows

10. Mendukung record yang memiliki kolom dengan panjang tetap atau panjang bervariasi.

2.7 RESPONSIVE WEB DESIGN

Berdasarkan artikel UIE yang berjudul ”Device Experience & Responsive

Design”, responsive design merupakan salah satu teknik yang dapat membuat

proses perancangan aplikasi dan situs web untuk berbagai jenis perangkat menjadi lebih mudah. Hal ini dikarenakan bahwa dengan menggunakan responsive design, perancang dimungkinkan untuk dapat menerapkan solusi bagi berbagai resolusi layar, density, dan rasio aspek pada banyak jenis perangkat.

Responsive design memiliki kemampuan untuk mengelola aset media

dengan efektif. Hal ini memberikannya keunggulan untuk dapat diterapkan ke dalam perancangan situs web sehingga situs dapat diakses melalui smartphone,

tablet, desktop, ataupun smart TV tanpa memperlihatkan perbedaan yang terlalu

besar dalam hal penggunaan.

Menggunakan konfigurasi responsive design, sebuah situs web mampu memberikan respon secara otomatis terhadap ukuran layar, sehingga situs dapat beradaptasi dengan optimal dalam perangkat apapun yang digunakan pengguna untuk mengaksesnya [11]. Kemampuan adaptasi tersebut jelas merupakan poin penting dalam proses perancangan situs. Sebab, untuk dapat menciptakan sebuah desain situs yang baik, maka proses perancangan perlu berfokus pada penyediaan layanan dan mobilisasi yang baik bagi pengguna [12].

2.8 JAVASCRIPT

Javascript diperkenalkan pertama kali oleh Netscape pada tahun 1995. Pada awalnya bahasa ini dinamakan “LiveScript” yang berfungsi sebagai bahasa sederhana untuk browser Netscape Navigator 2. Pada masa itu bahasa ini banyak di kritik karena kurang aman, pengembangannya yang terkesan buru buru dan

(7)

11 tidak ada pesan kesalahan yang di tampilkan setiap kali kita membuat kesalahan pada saat menyusun suatu program. Kemudian sejalan dengan sedang giatnya kerjasama antara Netscape dan Sun (pengembang bahasa pemrograman “Java” ) pada masa itu, maka Netscape memberikan nama “JavaScript” kepada bahasa tersebut pada tanggal 4 desember 1995. Pada saat yang bersamaan Microsoft sendiri mencoba untuk mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” di browser Internet Explorer 3.

Javascript adalah bahasa yang berbentuk kumpulan skrip yang pada fungsinya

berjalan pada suatu dokumen HTML, sepanjang sejarah internet bahasa ini adalah bahasa skrip pertama untuk web. Bahasa ini adalah bahasa pemrograman untuk memberikan kemampuan tambahan terhadap bahasa HTML dengan mengijinkan pengeksekusian perintah perintah di sisi user, yang artinya di sisi browser bukan di sisi server web.

Javascript bergantung kepada browser(navigator) yang memanggil halaman web yang mberisi skrip skrip dari Javascript dan tentu saja terselip di dalam dokumen HTML. Javascript juga tidak memerlukan kompilator atau penterjemah khusus untuk menjalankannya (pada kenyataannya kompilator Javascript sendiri sudah termasuk di dalam browser tersebut). Lain halnya dengan bahasa “Java” (dengan mana JavaScript selalu di banding bandingkan) yang memerlukan kompilator khusus untuk menterjemahkannya di sisi user/klien.

2.9 AJAX

AJAX adalah singkatan dari Asynchronous JavaScript and XML. AJAX, terdiri dari HTML, Javascript, DHTML dan DOM yang kemudian digabungkan dengan bahasa pemograman web di sisi server seperti PHP dan ASP, sehingga membentuk suatu aplikasi berbasis web yang interaktif. AJAX bukanlah bahasa pemograman baru, tetapi adalah teknik baru untuk membuat aplikasi web lebih baik, lebih cepat dan lebih interaktif. Dengan AJAX, Javascript dapat langsung berkomunikasi dengan server dengan menggunakan objek XMLHttpRequest. Dengan objek ini, javascript dapat melakukan transaksi data denga server web,

(8)

12 tanpa harus me-reloading halaman web tersebut secara keseluruhan. Berikut adalah teknologi yang termasuk dalam aplikasi AJAX:

HTML yang digunakan untuk membuat Web forms dan mengindentifikasikan filed-field yang akan anda gunakan dalam aplikasi.

JavaScript adalah kode inti untuk menjalankanaplikasi Ajax dan untuk membantu memfasilitasi komunikasi dengan aplikasi .

DHTML, atau Dynamic HTML, membantu anda untuk membuat form atau web anda dinamis. Anda akan menggunakan <div>, <span> dan elemen HTML dinamis lainya.

DOM, Document Object Model, akan digunakan (melalui kode JavaScript) untuk bekerja dengan kedua struktur dari HTML dan XML anda yang dalam beberapa kasus berasal dari server.

2.10 JSON

JSON (JavaScript Object Notation) adalah format pertukaran data yang ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan dibuat (generate) oleh komputer. Format ini dibuat berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-262 Edisi ke-3 - Desember 1999. JSON merupakan format teks yang tidak bergantung pada bahasa pemprograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data.

JSON terbuat dari dua struktur:

 Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek (object), rekaman (record), struktur (struct), kamus (dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau associative array.

Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa, hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau urutan (sequence).

(9)

13 Struktur-struktur data ini disebut sebagai struktur data universal. Pada dasarnya, semua bahasa pemprograman moderen mendukung struktur data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman yang juga berdasarkan pada struktur data ini.

2.10.1 Objek

Objek adalah sepasang nama/nilai yang tidak terurutkan. Objek dimulai dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti dengan : (titik dua)dan setiap pasangan nama/nilai dipisahkan oleh , (koma).

Sumber: http://www.json.org/

2.10.2 Larik

Larik (array) adalah kumpulan nilai yang terurutkan. Larik dimulai

dengan [ (kurung kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan oleh , (koma).

Sumber: http://www.json.org/

2.10.3 Nilai

Nilai(value) dapat berupa sebuah string dalam tanda kutip ganda, atau angka, atau true atau false atau null, atau sebuah objek atau sebuah larik. Struktur-struktur tersebut dapat disusun bertingkat.

(10)

14 Sumber: http://www.json.org/

2.10.4 String

String adalah kumpulan dari nol atau lebih karakter Unicode, yang dibungkus dengan tanda kutip ganda. Di dalam string dapat digunakan backslash escapes "\" untuk membentuk karakter khusus. Sebuah karakter mewakili karakter tunggal pada string. String sangat mirip dengan string C atau Java.

(11)

15

2.10.5 Angka

Angka adalah sangat mirip dengan angka di C atau Java, kecuali format oktal dan heksadesimal tidak digunakan.

Sumber: http://www.json.org/

2.10.6 Spasi kosong (whitespace)

Spasi kosong (whitespace) dapat disisipkan di antara pasangan tanda-tanda tersebut, kecuali beberapa detil encoding yang secara lengkap dipaparkan oleh bahasa pemprograman yang bersangkutan.

Referensi

Dokumen terkait

2 BPJS kesehatan di RSU Puri Raharja dianggap tidak optimal dari segi jasa pelayanan kesehatan bila dilihat dalam kasus persalinan yang ditolak oleh rumah sakit dan Peserta

Memahami diagram fasa sebagai langkah awal pengambilan parameter untuk melakukan modifikasi sifat logam melalui perlakuan

story picture untuk meningkatkan pemahaman konsep materi pelajaran IPS bagi siswa di kelas VIII-F SMP Negeri 26 Bandung. Mengidentifikasi hambatan dan upaya yang

Pengujian pengaruh simultan (F test) pada tabel, didapatkan F hitung sebesar 14,79 dengan signifikansi pada 0,000 karena p &lt; 0,05 maka model regresi dapat

Dari hasil tersebut dapat diketahui bahwa nilai t hitung lebih besar daripada t table yaitu 12,191 &gt; 1,984723 sehingga dapat disimpulkan bahwa hipotesis yang diajukan

menen%&amp;kan setara dengan naturalisasi $P!).. 3.5 Menganalisis sifat larutan elektrolit dan nonelektrolit 4.5 Mem%edakan pemeriksaan sifat larutan elektrolit dan

Berdasarkan data ukuran tubuh tenaga kerja dan ukuran stasiun kerja (kursi, meja kerja dan monitor yang dipakai dalam bekerja) dapat dianalisa ada atau tidaknya kesesuaian

Simpulan: Penggunaan pasta gigi dengan kandungan xylitol dan flouride dapat menghambat pembentukan plak gigi tetapi pasta gigi dengan flouride tidak dapat menghambat