tugas 4 – 0916 (individu)

6
TUGAS 4 – 0916 (Individu) rekayasa web Muhamad Fahrul azis 1511510453

Upload: muhamad-fahrul-azis

Post on 16-Apr-2017

77 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Tugas 4 – 0916 (individu)

TUGAS 4 – 0916 (Individu)

rekayasa web

Muhamad Fahrul azis1511510453

Page 2: Tugas 4 – 0916 (individu)

1. Jelaskan yang dimaksud dengan framework pada aplikasi web?

Framework atau bahasa indonesianya kerangka kerja adalah sebuah software untuk memudahkan para programmer membuat aplikasi atau web yang isinya adalah berbagai fungsi, plugin, dan konsep sehingga membentuk suatu sistem tertentu. Dengan menggunakan framework, sebuah aplikasi akan tersusun dan terstruktur dengan rapi.Namun, menggunakan framework bukan berarti kita bebas dari pengkodean. Kita sebagai pengguna/programmer menggunakan variabel dan fungsi-fungsi yang ada di sebuah framework itu. Karena itulah, kerja kita bisa menjadi efektif karena tidak harus membuat fungsi-fungsi lagi. Untuk lebih memahaminya, anda bisa membaca cerita berikut.Rahman adalah seorang web programmer. Dia menerima pesanan sebuah proyek website. Lalu dia mengerjakannya dari mulai mendesain sampai sistemnya. Semua kode-kode fungsi & konsep yang harus ada di sebuah website semuanya ia buat. Mulai dari kode untuk postingan, menu, paginasi, dan sebagainya. Alhasil, pesanannya pun berhasil diselesaikan.Perusahaan yang memesan merasa puas dengan hasil website Rahman. Lalu, perusahaan itu membuat kontrak dengan Rahman untuk membuat proyek website lainnya.Kemudian, tibalah waktu untuk membuat proyek website yang kedua. Rahman mulai mengerjakannya lagi. Diawal pengerjaannya, Rahman menyadari bahwa ada fungsi-fungsi tertentu yang harus selalu ada dalam sebuah website. Misalnya seperti fungsi postingan, paginasi dan lain-lain.Karena itulah Rahman kembali membedah proyek website pertama yang telah berhasil dibuat. Lalu dia memeriksa kembali kode-kode untuk fungsi-fungsi tertentu dan mengumpulkannya menjadi satu untuk digunakan di proyek kedua yang akan dikerjakannya.Nah, kumpulan kode fungsi-fungsi tertentu itulah yang disebut sebagai framework. Setiap bahasa pemrograman bisa dibuat frameworknya, jadi tidak hanya untuk website saja.Sejauh ini, framework untuk pemrograman website yang sering digunakan adalah framework php dan framework css. Contoh framework php adalah CodeIgniter dan Zend Framework. Sedangkan, contoh framework css adalah Bootstrap. Silahkan dicek sendiri agar lebih mengerti.

Page 3: Tugas 4 – 0916 (individu)

2. Berikan 3 contoh contoh framework aplikasi web (php based), dan jelaskan kelebihan dan kekurangan dari masing-masing framework tersebut !

A. CodeIgniter (CI)• Kelebihan :Fungsi-fungsi pendukung yang cukup lengkapMendukung PHP4 dan PHP5Memakai konsep MVC (Model View Controller)Performa dalam mengeksekusi sangat cepatDokumentasi lengkap, friendly dan didukung oleh forum, wiki, dan komunitas yang besarMudah dipelajari bagi pemula• Kekurangan :Tidak support AJAX dan ORMMasih banyak kelonggaran dalam hal coding, misalnya penamaan file dan membebaskan programmer untuk melanggar aturan MVCKarena 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 4 – 0916 (individu)

B. CakePHP• Kelebihan :Support AJAX dan ORMPengembangan yang terus dilakukanMendukung PHP4 dan PHP5Arsitektur OOP dan MVC yang sesungguhnyaAutomagic function seperti validasi input, dll, yang mempercepat codingKomunitas pengguna yang besar dan forum cukup baik• Kekurangan :Manual Book tidak selengkap CodeIgniterButuh waktu belajar yang lebih lama untuk menguasai framework ini dibanding CI. (namun jika sudah benar-benar menguasai, Framework CakePHP mempunyai kemampuan yang benar-benar luar biasa handal)

Page 5: Tugas 4 – 0916 (individu)

C. SymfonyKelebihan :Dukungan terhadap AJAX, ORM.Kompatibel dengan berbagai macam database.Banyak library dan fungsi symfony yang sudah tersedia. Bahkan hampir mendekati CMS. Sehingga ada yang mengatakan ”Symphony is a CMS with a heart of a framework.” ini menjadi kelebihan sekaligus kekurangan.• Kekurangan :Tidak mendukung PHP4.Relatif butuh waktu lama untuk mengerti framework ini.Instalasi dan konfigurasinya cukup rumit.

Page 6: Tugas 4 – 0916 (individu)

3. Jelaskan pengertian MVC (Model View Controler) pada Framework Code Igniter !

MVC, atau Model View Controller, merupakan salah satu implementasi prinsip SoC untuk aplikasi yang kita kembangkan. Dalam MVC, kita membagikan bentuk aplikasi dalam tiga bagian utama, yaitu:• Model, yaitu bagian kode aplikasi yang berhubungan

dengan basis data.• View, yaitu bagian kode yang berhubungan dengan

tampilan ke pengguna.• Controller, yaitu bagian kode yang menghubungkan

antara Model dan View.Secara kasar, berikut adalah arsitektur aplikasi web kita jika dikembangkan dengan menggunakan pola MVC:

Alur kerja aplikasi web kita ketika user mengunjungi salah satu halaman yaitu:• Browser berhubungan dengan server untuk akses halaman.• Request (permintaan) browser ditangani oleh bagian

Controller dari kode kita.• Controller akan melakukan pemanggilan ke Model untuk

mendapatkan data yang relevan, dan kemudian mempersiapkan data tersebut untuk ditampilkan.

• Controller memberikan data yang diperlukan kepada view.• View menampilkan data dan berbagai elemen antarmuka

tambahan yang diperlukan.Meskipun memerlukan banyak langkah hanya untuk menampilkan satu halaman web, kita dapat langsung melihat keuntungan tambahan dari penggunaan MVC, yaitu bagaimana setiap bagian memiliki tanggung jawab masing-masing. Ingin mengubah query yang digunakan agar menjadi lebih cepat? Langsung saja edit kode pada bagian Model. Designer juga dapat bekerja pada bagian view jika ingin mengubah tampilan, tanpa perlu takut merusak keseluruhan kode. Pastinya hal seperti ini akan mempercepat dan mempermudah pengembangan web kita!