BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. mengangkat kasus dan penggunaan teknologi yang berbeda-beda, pada table 2.1

dokumen-dokumen yang mirip
BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. pernah dilakukan oleh beberapa penulis. tentang membangun aplikasi chat berbasis android.

BAB II LANDASAN TEORI

BAB III LANDASAN TEORI

Hal yang harus diperhatikan dalam penggunaan AJAX adalah: XHTML dan CSS digunakan untuk menandai dan mempercantik tampilan informasi.

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Tinjauan pustaka yang dipergunakan dalam penelitian disajikan melalui

BAB III LANDASAN TEORI

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. AKAKOM yang akan melakukan Praktik Kerja Lapangan Yang dimana

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. mengangkat kasus dan penggunaan teknologi yang berbeda-beda, pada tabel 2.1

Network Access/Interface Layer Internet Layer Host-to-Host Transport Layer Application Layer

HTTP Protocol Ketika sebuah alamat web (atau URL) yang diketik ke dalam web browser, web browser melakukan koneksi ke web service yang berjalan pada

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. mendefenisikan penelitian yang sebelumnya hampir sama dilakukan

BAB II KAJIAN PUSTAKA

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Untuk membangun aplikasi ini, ada beberapa dasar penelitian seperti,

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. sebuah sistem pencarian lokasi kuliner berbasis mobile web untuk wilayah

BAB II LANDASAN TEORI

IMPLEMENTASI APLIKASI CHEPPYCHAT UNTUK JARINGAN KOMPUTER PADA LOCAL AREA NETWORK

BAB 3 LANDASAN TEORI

BAB 3 LANDASAN TEORI

Pokok Bahasan 2 Teknologi Dasar Internet dan Web. L. Erawan

Komputer Perkantoran. Salhazan Nasution, S.Kom

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Komputer Perkantoran. Internet. Salhazan Nasution, S.Kom

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Tabel 2.1. Tinjauan Pustaka. Tidak Apotek PHP

BAB III LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Firewall & WEB SERVICE

MAKALAH SISTEM KOMPUTASI GRID

BAB II KAJIAN PUSTAKA. seluler (mobile) seperti telepon pintar (smartphone) dan komputer tablet. Android

BAB II TINJAUAN PUSTAKA. Bab ini membahas teori-teori yang dijadikan acuan tugas akhir ini.

BAB III ANALISA DAN PERANCANGAN

BAB II LANDASAN TEORI. diperlukan dalam pembangunan website e-commerce Distro Baju MedanEtnic.

BAB III LANDASAN TEORI

BAB I PENDAHULUAN. 1.1.Latar Belakang

HTML 5. Geolocation Web SQL Database, media penyimpanan database lokal

Rancang Bangun Aplikasi Perangkat Bergerak Layanan Pemesanan Barang (Studi Kasus Dinas Kebersihan dan Pertamanan Kota Surabaya )

BAB III LANDASAN TEORI. Pada bab ini akan dijelaskan mengenai teori dasar yang digunakan oleh penulis sebagai acuan dalam membangun aplikasi.

BAB 3 Landasan Teori

BAB I PENDAHULUAN. Kabupaten Brebes, Propinsi Jawa Tengah. Kondisi umum desa Grinting pada bulan

Pengenalan Internet dan Protokol HTTP

APLIKASI INSTANT MESSAGING DAN REAL TIME DOODLE DENGAN TEKNIK NON BLOCKING MENGGUNAKAN NODE.JS DI LINGKUNGAN JARINGAN WLAN

BAB 2 TINJAUAN PUSTAKA DAN DASAR TEORI

BAB II TINJAUAN PUSTAKA

JURUSAN SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA

BAB 1 PENDAHULUAN 1.1 Latar Belakang

Dasar Pemrograman Web. Pemrograman Web. Adam Hendra Brata

BAB I PENDAHULUAN. Strategic Analytics dimana terdapat peningkatan adopsi smartphone secara global

Pemrograman Jaringan

Pengenalan Internet dan Protokol HTTP

Protokol. Pemrograman Client/Server dengan Java Socket. Protokol TCP/IP. Tipe pemrograman jaringan. Java Socket

APLIKASI SISTEM PENDIDIKAN JARAK JAUH BERBASIS WEB

BAB IV PEMBAHASAN. menyebabkan kesalahan pada tahap selanjutnya. yaitu wappalayzer, tool tersebut membantu untuk mengetahui CMS (content

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB 2 TINJAUAN PUSTAKA

Tujuan Pembangunan Jaringan Komputer. mengantarkan informasi secara tepat dan akurat dari sisi pengirim ke sisi penerima

APPLICATION LAYER. Oleh : Reza Chandra

BAB 1 PENDAHULUAN. Teknologi komputer dewasa ini adalah salah satu teknologi yang berkembang paling

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI

Rekayasa Sistem Web. Teguh Wahyono. Fakultas Teknologi Informasi Semester Antara Tahun 2012/2013

BAB II KAJIAN PUSTAKA

Agenda. Protokol TCP/IP dan OSI Keluarga Protokol TCP/IP

BAB 3 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Adapun tinjauan pustaka yang digunakan sebagai berikut : Table 2.1 Tabel Tinjauan Pustaka

BAB III LANDASAN TEORI

BAB 3 PERANCANGAN SISTEM

BAB II TINJAUAN PUSTAKA PERANCANGAN DAN IMPLEMENTASI APLIKASI CHATTING BERBASIS

Arsitektur Web Service Web service memiliki tiga entitas dalam arsitekturnya, yaitu: 1. Service Requester (peminta layanan)

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. merupakan salah satu metode komunikasi yang bersifat real-time. Selama ini

Pengembangan Media Uploading untuk Mendukung E-Learning pada Kondisi Jaringan Dinamis

BAB II LANDASAN TEORI

BAB I PENDAHULUAN 1.1 Latar Belakang

Pengumpulan Data. Analisa Data. Pembuatan Use Case,Activity dan Sequence Diagram. Perancangan Database. Bisnis Proses.

PENGANTAR INTERNET & DESAIN WEB

BAB III METODE PENELITIAN. ini, diantaranya adalah dengan langkah-langkah sebagai berikut :

BAB II TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA DAN DASAR TEORI. Adapun tinjauan pustaka pada pengembangan microblog ini diambil dari

BAB 1 PENDAHULUAN. Sebagai universitas yang berkembang pesat dan memiliki rencana untuk

APLIKASI CHATTING DENGAN FASILITAS FTP DAN IP ADDRESS BLOCKING UNTUK CLIENT-SERVER MULTIPLE CONNECTIONS. Makalah Seminar Tugas Akhir

PERANCANGAN DAN IMPLEMENTASI WEB SERVICESEBAGAI MEDIA PERTUKARAN DATA PADA APLIKASI PERMAINAN

GAME BELAJAR MATEMATIKA UNTUK SISWA SEKOLAH DASAR PADA MOBILE DEVICE BERBASIS ANDROID

BAB 2 LANDASAN TEORI. bahasa pemrograman java dan bersifat open source. Yang mana artinya aplikasi

DESAIN DAN IMPLEMENTASI INSTANT MESSENGER SERVER BERBASIS OPEN SOURCE PADA PT. MITRA DANA PUTRA UTAMA FINANCE PALEMBANG

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI

Teknik Informatika S1

KOMUNIKASI PENGANTAR DATA TERDISTRIBUSI. Materi: 1. Komunikasi Data 2. Protocol 3. Remote Procedure Call 4. Object Remote

BAB I PENDAHULUAN. pengambil keputusan. Data Warehouse sebagai sarana pengambilan keputusan, merupakan

Kelompok 1. Anggota : BOBBY KURNIAWAN NIA FITRIANA ARI FEBRYANSYAH DIAN ULUMIA ORIN HARITSA YASSER

BAB II KAJIAN PUSTAKA. bervariasi, berikut adalah beberapa definisi SIG:

LAPORAN PENDAHULUAN PRAKTIKUM ADMINISTRASI MANAJEMEN JARINGAN WEB SERVER

Rekayasa Web Pertemuan 8

BAB III ANALISIS DAN DESAIN SISTEM

TEKNOLOGI APLIKASI WEB BERBASIS SERVER

BAB 3 LANDASAN TEORI

BAB II KAJIAN PUSTAKA. tablet layar sentuh (touchscreen) yang berbasis Linux. Seiring perkembangannya

INTEGRASI SISTEM VOIP BERBASIS SIP DENGAN SISTEM MANAJEMEN PEMBELAJARAN DOKEOS

BAB 3 LANDASAN TEORI

Transkripsi:

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI 2.1 Tinjauan Pustaka Aplikasi chat messenger sebelumnya sudah pernah dibuat dengan mengangkat kasus dan penggunaan teknologi yang berbeda-beda, pada table 2.1 menunjukkan penelitian-penelitian yang sudah pernah dilakukan oleh beberapa penulis. Pada skripsi yang ditulis oleh Andre yang berjudul Aplikasi panduan kepramukaan berbasis android menggunakan format pertukaran data JSON membahas mengenai penggunaan dari format pertukaran data JSON (Java Script Object Notation). Pada jurnal yang ditulis oleh Gabriel L. Muller yang berjudul HTML5 Websocket Protocol And It s Application To Distributed Computing menjelaskan mengenai cara kerja websocket yang diimplementasikan pada bahasa pemrograman HTML untuk membuat aplikasi sederhana untuk melakukan pertukaran data. Pada skripsi yang ditulis oleh Fitri Hardianto dengan judul pengembangan Aplikasi Grup Chat di Android Menggunakan Websocket berisi mengenai pembuatan aplikasi group chat sederhana yang hanya dapat berkirim pesan berupa teks dengan memanfaatkan websocket. Kemudian pada skripsi yang ditulis oleh Mahardika Kurniawati yang berjudul aplikasi chat room menggunakan ajax dan php berisi mengenai 5

6 pembuatan chatroom dengan AJAX dan PHP dimana room yang dibuat dapat diberi sandi. Pada skripsi yang ditulis oleh Ficki Nur Fadly Fauzian yang berjudul Pemanfaatan Websocket Untuk Pertukaran Data Web Secara Waktu Nyata: Studi Kasus Aplikasi Jejaring Sosial Sederhana berisi mengenai pembuatan aplikasi chatting dengan fitur yang menyerupai jejaring sosial facebook namun hanya dapat mengirimkan pesan teks. Usulan yang diajukan dalam skripsi ini adalah membuat aplikasi chat messenger yang memiliki fitur chat room dan private chat dengan memanfaatkan teknologi websocket. Tabel 2.1 Tinjauan Pustaka Penulis Andre (2015) Parameter Gabriel L. Muller (2014) Fitri Hardianto (2015) Mahardika Kurniawati (2011) Ficki Nur Fadly Fauzian (2012) Objek Penelitian Aplikasi panduan kepramukaan berbasis android menggunakan format pertukaran data JSON HTML5 Websocket Protocol And It s Application To Distributed Computing Aplikasi Grup Chat di Android Menggunakan Websocket Aplikasi Chat Room Menggunakan Ajax Dan Php Pemanfaatan Websocket Untuk Pertukaran Data Web Secara Waktu Nyata: Studi Metode/ Teknologi JSON (Java Script Object Notation) Websocket dan HTML Websocket, AJAX dan PHP AJAX dan PHP Websocket, HTML, CSS Interface

7 I Kadek Utama Yoga Kasus Aplikasi Jejaring Sosial Sederhana Implementasi Websocket pada aplikasi chat messenger berbasis android Socket.io, mongodb, Node.js 2.2 Dasar Teori 2.2.1 Chat Chat adalah suatu fitur atau suatu program di Internet untuk berkomunikasi langsung sesama pengguna internet yang sedang online / yang sedang sama-sama menggunakan Internet. Komunikasi ini berupa pertukaran data baik berupa teks, file, gambar, suara maupun video (Hardianto,Fitri. 2015) 2.2.2 Websocket WebSocket adalah standar baru untuk komunikasi realtime pada Web dan aplikasi mobile. WebSocket dirancang untuk diterapkan di browser web dan server web, tetapi dapat digunakan oleh aplikasi client atau server. WebSocket adalah protokol yang menyediakan saluran komunikasi fullduplex melalui koneksi TCP tunggal. Protokol WebSocket sudah di standarisasi oleh IETF sebagai RFC 6455 pada tahun 2011, dan API WebSocket di Web IDL sedang distandarisasi oleh W3C. (Hardianto,Fitri. 2015)

8 2.2.3 Socket.io Socket.io adalah sebuah library yang dibuat menggunakan bahasa pemrograman JavaScript dan merupakan salah satu dari Websocket API (Application Programming Interface). Tidak hanya dari sisi client, library ini mendukung node.js sebagai server dengan sangat baik. Library ini memberikan performa yang sangat baik dalam transfer data secara real-time. (Julisman, Agung. 2014) 2.2.4 Node.js Sebuah platform yang dirancang untuk pengembangan aplikasi web dan diimplementasikan di server. Node.js mampu melakukan proses baik secara blocking (synchronous) maupun non-blocking (asynchronous). Dengan kemampuan Node.js yang dapat melakukan non-blocking, maka terbuka kemungkinan untuk membuat aplikasi web instant messaging yang ringan, real-time dan efisien. (nodejs.org) 2.2.5 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 pemrograman apapun karena menggunakan gaya

9 bahasa yang umum digunakan oleh programmer keluarga bahasa perograman C (JSON.org) 2.2.6 MongoDB MongoDB merupakan basis data nosql (not only SQL) yang merupakan document-oriented database dan merupakan open source project yang tersedia di github (https://github.com/mongodb/mongo). (Julisman, Agung. 2015) 2.2.7 Socket Programming Socket programming merupakan pemrograman ke arah protocol jaringan. Dalam pemrograman socket ini ada banyak protocol jaringan yang dapat diimplementasikan seperti UDC, HTTP, TCP, serta UDP. Ilustrasi dari socket programming dapat dicontohkan seperti dua orang yang berkomunikasi dengan telepon. Konsep telepon di mana penerima dan penghubung akan melakukan komunikasi dua arah, ketika keduanya dapat terhubung. Yang menariknya konsep ini menggunakan nomor ekstension. Sehingga ketika penghubung menelpon nomor telepon yang dituju, ada nomor ekstensi yang harus ditekan, contohnya 114 untuk layanan keuangan dan 115 untuk layanan komunikasi. Untuk pendefinisian istilah-istilah dalam socket programming dapat dirinci sebagai berikut :

10 1. Server merupakan proses yang menjawab permintaan dari banyak client secara serempak. Jadi jika diilustrasikan, server ini merupakan customer service yang menerima telepon dari banyak client. 2. Client merupakan proses yang memulai suatu koneksi untuk melakukan hubungan komunikasi dengan server. Secara umum, akan ada banyak client yang mengadakan koneksi dengan suatu server dalam waktu yang sama. Jika diilustrasikan maka client merupakan orang yang menelpon customer service. 3. IP Addres merupakan alamat IP yang berbeda yang dimiliki oleh masing-masing komputer untuk dapat berkomunikasi dalam suatu jaringan. Jika diilustrasikan dalam socket programming maka alamat IP merupakan nomor telepon dari suatu instansi yang besar yang memiliki banyak layanan. 4. Port Number merupakan nomor yang digunakan sebagai identifikasi atau layanan dari client yang ingin melakukan komunikasi. Jika bicara mengenai socket programming maka port number merupakan nomor ekstensi dari suatu nomor telepon. Sehingga ketika client ingin melakukan pembicaraan dengan server, client harus mengetahui IP address dan port untuk berkomunikasi. (Masya, Fajar., dan Fiade Andrew. 2015). Analogi dari socket programming dapat digambarkan dalam beberapa fungsi. Fungsi-fungsi tersebut diantaranya adalah :

11 1. Socket() digunakan untuk membangun endpoint dari komunikasi antara penghubung dengan customer service (client dan server). 2. Bind() digunakan untuk menentukan nomor telepon beserta nomornomor ekstensi yang tersedia (IP address dan port number). 3. Listen() digunakan ketika server atau customer service menunggu panggilan dari penghubung (server menunggu koneksi dari client). 4. Connect() digunakan ketika penghubung menelpon customer service dan meminta layanan (client melakukan koneksi ke server). 5. Accept() digunakan ketika customer service menerima telepon dan memberikan layanan pada penghubung (server menerima koneksi client). 6. Send() dan Recv() digunakan untuk merepresentasikan proses komunikasi antara customer service dan penghubung (client dan server). 7. Close() merupakan fungsi ketika client dan server sudah selesai berkomunikasi atau menutup telepon (client menghancurkan koneksi yang dibangun ke server). Dan Jika digambarkan dalam bentuk diagram, maka cara kerja dari socket server dan socket client dapat dilihat pada gambar 2.1.

Gambar 2.1 Diagram cara kerja socket server dan socket client 12