11
TUGAS 3 – 0317 (Individu) Lingga Eka Pradipta 1411501073 KB

Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Embed Size (px)

Citation preview

Page 1: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

TUGAS 3 – 0317 (Individu)

Lingga Eka Pradipta1411501073

KB

Page 2: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Konsep MVC

• Model-View-Controller (MVC) adalah pola arsitektur yang memisahkan aplikasi dalam tiga komponen utama Logis: Model, View dan Controller. Masing - masing komponen ini dibangun untuk menangani aspek-aspek tertentu pembangunan aplikasi. MVC adalah salah satu kerangka pembangunan web standar industri paling sering digunakan untuk menciptakan proyek yang terukur an besar dan extensible.

Soal 1

Page 3: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Web Framework MengunakanKonsep MVC

• CodeIgniter (CI)• Kelebihan :

1). Fungsi-fungsi pendukung yang cukup lengkap2). Mendukung PHP4 dan PHP53). Performa dalam mengeksekusi sangat cepat4). Dokumentasi lengkap, friendly dan didukung oleh forum, wiki, dan komunitas yang

besar5). Mudah dipelajari bagi pemula

• Kekurangan :1). Tidak support AJAX dan ORM2). Masih banyak kelonggaran dalam hal coding, misalnya penamaan file dan

membebaskan programmer untuk melanggar aturan MVC3). Karena kelonggaran tersebut, CodeIgniter Tidak ditujukan untuk pembuatan

web dengan skala besar (enterprise) walaupun tersedia banyak library, karena pengembangan akan semakin sulit dilakukan.

Page 4: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Pengertian JSON• JSON adalah salah satu bahasa markup yang dapat melakukan pertukaran

data dimana JSON ini dibuat berdasarkan javascript dan pastinya sintaknya lebih ke javascript. Dengan membuat sebuah JSON sama halnya dengan kita membuat sebuah object pada javascript itu sendiri. Di dalam membuat JSON pasti kita bakal berkenalan dengan yang namanya array pada javascript sehingga memudahkan bagi para deveploper/programmer.

• Contoh :1. Java2. Python3. PHP4. Ruby5. Java Script

Soal 2

Page 5: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Pengertian XML• XML adalah bahasa markup untuk dokumen yang berisi

informasi yang terstruktur.Informasi yang terstruktur berisi kedua isi (kata-kata, gambar, dll) dan beberapa indikasi peran apa yang dimainkan konten (misalnya, isi di bagian judul memiliki arti yang berbeda dari konten dalam sebuah catatan kaki, yang berarti sesuatu yang berbeda dari konten dalam angka caption atau konten dalam sebuah tabel database, dll). Hampir semua dokumen memiliki beberapa struktur

• Contoh :1. JEE (java enterprise edition)

Page 6: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

AJAX (asynchronous JavaScript and XML)

Dengan adanya AJAX, akses data server yang dikirim memalui client via web dapat lebih cepat daripada mekanisme biasa. Hal ini dikarenakan AJAX tidak perlu melakukan proses loading page (refresh page) atau pindah ke page yang lain. AJAC dapat diintegrasikan dengan server side programing seperti PHP, ASP, JSP dll.

Soal 3

Page 7: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Contoh AJAX

Pada mekanisme diatas, proses berawal dari web client. Web client merequest sebuah halaman PHP ke server melalui Javascript. Selanjutnya server akan merespon dan menjalankan script PHP. Script PHP akan menghasilkan respon dalam bentuk XML dan data XML tersebut akan dikirim kembali ke web client untuk diolah oleh Javascript. Hasil olahan javascript tersebut akhirnya akan ditampilkan di web client sebagai output tanpa harus merefresh halaman web. Bandingkan dengan mekanisme biasa dalam menjalankan PHP seperti yang ditunjukan pada gambar berikut (Lihat halaman Selanjutnya):

Page 8: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Contoh

• Pada mekanisme biasa, respon yang dihasilkan oleh server berupa HTL yang mengakibatkan halaman web akan merefresh tampilan. Dilihat dari sisi efisiensi, hal ini tentu kurang sekali. Sedangkan kekurangan AJAX dibandingkan mekanisme biasa adalah memiliki tingkatan kesukaran pemrograman yang lebih tinggi, karena programmer harus menguasai 4 hal yaitu HTML-(XHTML), Javascript, XML dan juga server side programming seperti PHP dan lain sebagainya

Page 9: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

CSRF (Cross Site Request Forgery)

• CSRF (Cross Site Request Forgery) adalah sebuah serangan pada website yang dieksekusi atas wewenang korban, tanpa dikehendakinya. CSRF merupakan pemalsuan request yang berasal dari site yang berbeda, tetapi dari sisi client tidak mengubah alamat IP karena memang dieksekusi oleh korban. Serangan CSRF dapat ditunjukkan seperti serangan pada diagram diatas.

Soal 4

Page 10: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Web Socket

• 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 full-duplex 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.

Soal 5

Page 11: Tugas[3] 0317-[lingga eka pradipta]-[1411501073]

Contoh• Aplikasi Yang Harus Menggunakan WebSocket1. Aplikasi dengan banyak pengguna atau Multi-User Apps2. Aplikasi langsung atau Realtime Apps3. Aplikasi dimana data live sangat dibutuhkan, seperti pasar saham, atau kurs.

• WebSocket Client1. Di website, WebSocket didukung oleh browser seperti Google Chrome, Firefox,

Opera 2. Pada ponsel, WebSocket support di iOS dan Android3. WebSocket client menggunakan Javascript untuk meminta atau merequest ke

server WebSocket, sebagai percobaan bisa ikuti tutorial di website w3schools atau tutorialspoint

• WebSocket ServerPada server, WebSocket sudah support di Ruby, Java, Objective-C, PHP, .NET, Node.js, ActionScript dan banyak bahasa lainnya, bisa dicoba pada website-website berikut ini Ruby, Java, Objective-C(iOS), PHP, .NET, node.js