tugas 7 – rekayasa web

11
TUGAS 7 – REKAYASA WEB IKA SULISTIYANI – KI - 0316 1412510529

Upload: ikasulistiyani

Post on 15-Apr-2017

75 views

Category:

Internet


2 download

TRANSCRIPT

Page 1: Tugas 7 – rekayasa web

TUGAS 7 – REKAYASA WEBIKA SULISTIYANI – KI - 0316

1412510529

Page 2: Tugas 7 – rekayasa web

1. Apa yang anda ketahui tentang konsep MVC(model-view-controller) dalam pemrogram web, berikan illustrasi yang tepat untuk meggambarkan konsep MVC tersebut !

MVC (Model-View-Controller) adalah sebuah metode dalam membuat aplikasi dengan memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, antarmuka pengguna, dan bagian yang menjadi kontrol utama aplikasi.

Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan secara terpisah antara layer application-logic dan presentation, sehingga dalam sebuah tim pengembangan website, seorang programmer bisa berkonsentrasi pada pengembangan core-system saja, sedangkan web designer bisa berkonsentrasi pada tampilan web saja. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer.

Ada tiga layer utama dalam arsitektur web MVC, yang disebut sebagai best practices :

– Model– View– Controller

Page 3: Tugas 7 – rekayasa web

Model, bukan sebuah database tetapi merupakan bagian (fungsi-fungsi) yang berhubungan langsung dengan database untuk memanipulasi data seperti memasukkan data, pembaruan data, hapus data, dan lain-lain, namun tidak dapat berhubungan langsung dengan bagian view.

View, merupakan bagian yang mengatur tampilan ke pengguna. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. Viewberfungsi untuk menerima dan merepresentasikan data kepada pengguna. Bagian ini tidak memiliki akses langsung terhadap bagian model.

Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi.

Tiga layer utama dalam arsitektur web MVC yaitu :

Page 4: Tugas 7 – rekayasa web

Bagaimana alur kerja MVC :

Saat user mengeksekusi program anda, user akan dipilihkan sebuah controller yang sesuai dengan apa yang user inginkan, anggap saja user mengakses sebuah controller bernama 'home'.

Kemudian anda membuat program-program pada controller bernama home, program tersebut harus menghasilkan sebuah output, anda tidak boleh membuat output pada sebuah controller, jadi pada controller tersebut buatah sebuah panggilan ke sebuah view.

Di file view anda harus menyesuaikan output sesuai controller yang anda buat.

Bila anda membutuhkan data (kebanyakan program pasti membutuhkan), bisa dari database atau yang lain. Sebelum anda memanggil view, anda harus memanggil sebuah model, buat program pada model untuk mengambil/menyaring data, data dari model tersebut kemudian diserahkan kepada controller sebelum akhirnya ke view.

Page 5: Tugas 7 – rekayasa web

2. Jelaskan perintah GET,POST pada pemrograman web, dan berikan perbedaannya !

Method get fungsinya sama seperti post yaitu mengirimkan nilai dari dari client ke server, namun perbedaannya terletak pada informasi yang dikirim bersifat public, artinya nilai dari form yang telah diinputkan tersebut akan terlihat di address browser dan informasi yang dikirimkan pun terbatas karena method ini tidak bisa menyimpan variabel yang nilainya lebih dari 2000 karakter maka method get ini tidak akan cocok untuk nilai variabel yang jumlahnya besar.

Method post merupakan sebuah fungsi yang digunakan untuk mengumpulkan nilai dari form yang telah diisi untuk selanjutnya akan dikirimkan dari client ke server dengan metode post, informasi yang dikirim dengan method post ini tidak akan bisa dilihat secara public dan tidak memiliki batasan pada banyaknya infomasi yang dikirim, untuk ukuran defailt dari method post ini adalah 8mb. Method ini biasanya digunakan pada form seperti pendaftaran, login dll.

Page 6: Tugas 7 – rekayasa web

POST GET

Nilai variabel tidak ditampilkan di URL

Nilai variabel ditampilkan di URL sehingga user dapat dengan mudah memasukkan nilai variabel baru

Lebih aman Kurang aman

Tidak dibatasi panjang string Dibatasi panjang string sampai 2047 karakter

Pengambilan variabel dengan $_POST

Pengambilan variabel dengan $_GET

Biasanya untuk input data melalui form

Biasanya untuk input data melalui link

Digunakan untuk mengirim data-data penting seperti password

Digunakan untuk mengirim data-data tidak penting

Perbedaan GET dan POST

Page 7: Tugas 7 – rekayasa web

3. Jelaskan konsep REST (Representational State Transfer) pada web service !REST adalah salah satu jenis web service yang menerapkan konsep perpindahan antar state. State disini dapat digambarkan seperti jika browser meminta suatu halaman web, maka serverakan mengirimkan state halaman web yang sekarang ke browser. Bernavigasi melalui link-link yang disediakan sama halnya dengan mengganti state dari halaman web. Begitu pula REST bekerja, dengan bernavigasi melalui link-link HTTP untuk melakukan aktivitas tertentu, seakan-akan terjadi perpindahan state satu sama lain. Perintah HTTP yang bisa digunakan adalah fungsi GET, POST, PUT atau DELETE. Balasan yang dikirimkan adalah dalam bentuk XML sederhana tanpa ada protokol pemaketan data, sehingga informasi yang diterima lebih mudah dibaca dan diparsing disisi client.Berikut ini method-method yang mendukung REST:

GET, cocok untuk resource yang hanya perlu dibaca saja (read only) PUT, cocok digunakan untuk membuat/create resource baru. DELETE, cocok digunakan untuk menghapus suatu resource. POST, cocok digunakan untuk mengupdate suatu resource. OPTIONS, cocok digunakan untuk mendapatkan operasi yang disupport

pada resource.

Page 8: Tugas 7 – rekayasa web

Keuntungan utama web service REST yaitu:

lightweigt, tidak membutuhkan XML markup tambahan hasilnya dapat dibaca dengan mudah oleh manusia (human readable result) mudah untuk dikembangkan, tidak membutuhkan toolkit

Page 9: Tugas 7 – rekayasa web

Keuntungan REST :

bahasa dan platform agnostic lebih sederhana/simpel untuk dikembangkan ketimbang SOAP mudah dipelajari, tidak bergantung pada tools ringkas, tidak membutuhkan layer pertukaran pesan (messaging)

tambahan secara desain dan filosofi lebih dekat dengan webKelemahan REST : Mengasumsi model point-to-point komunikasi - tidak dapat

digunakan untuk lingkungan komputasi terdistribusi di mana pesan akan melalui satu atau lebih perantara

Kurangnya dukungan standar untuk keamanan, kebijakan, keandalan pesan, dll, sehingga layanan yang mempunyai persyaratan lebih canggih lebih sulit untuk dikembangkan ("dipecahkan sendiri")

Berkaitan dengan model transport HTTP

Page 10: Tugas 7 – rekayasa web

Cara Kerja REST web services

Sebuah client mengirimkan sebuah data atau request melalui HTTP Request dan kemudian server merespon melalui HTTP Response.

Page 11: Tugas 7 – rekayasa web

Komponen dari http request : Verb, HTTP method yang digunakan misalnya GET, POST, DELETE,

PUT dll. Uniform Resource Identifier  (URI) untuk mengidentifikasikan lokasi

resource pada server. HTTP Version, menunjukkan versi dari HTTP yang digunakan,

contoh HTTP v1.1. Request Header, berisi metadata untuk HTTP Request. Contoh,

type client/browser, format yang didukung oleh client, format dari body pesan, seting cache dll.

Request Body, konten dari data.

Sedangkan komponen dari http response : Status/Response Code, mengindikasikan status server terhadap

resource yang direquest. misal : 404, artinya resource tidak ditemukan dan 200 response OK.

HTTP Version, menunjukkan versi dari HTTP yang digunakan, contoh HTTP v1.1.

Response Header, berisi metadata untuk HTTP Response. Contoh, type server, panjang content, tipe content, waktu response, dll

Response Body, konten dari data yang diberikan.