Sistem Informasi Web Hosting dan Model View Controller (MVC)
A. Sistem Informasi Web
Sebuah web memiliki beberapa dokumen yang biasanya disebut dengan halaman web, serta komponen-komponennya.
1. Konsep Pengembangan Sistem Informasi Berbasis Web
Sistem Informasi (SI) identik de- ngan kombinasi dari teknologi informasi dan aktivitas orang yang menggunakan teknologi untuk mendukung operasi dan manajemen. Dalam arti yang sangat luas , istilah sistem informasi yang sering digunakan merujuk kepada interaksi an- tara orang, proses algoritma, data, dan teknologi .adapun istilah "berbasis"adalah dasar,berdasarkan dengan,dan melalui. Adapun web adalah suatu halaman yang saling berhubungan yang umumnya berada pada peladen yang sama, berisikan kumpulan informasi yang disediakan secara perorangan, kelompok, atau organisasi. Jadi, secara bahasa pengertian sistem in- formasi berbasis web adalah kombinasi dari teknologi informasi berdasarkan suatu halaman situs pada jaringan internet. Dalam sistem informasi berbasis web juga sering dikenal dengan internet, website, domain, dan kode html.
2. Prosedur Perencanaan Aplikasi Sistem Informasi Berbasis Web
Saat ini perkembangan sistem informasi yang berbasis web dimanfaatkan sebagai sarana peningkatan informasi pada hampir semua bidang usaha, baik bidang perdagang- an, industri, maupun pendidikan. Peman- faatan tersebut akan mempermudah suatu pekerjaan seperti pengolahan data yang lebih cepat, keputusan yang akan diambil lebih tepat, serta menghemat tempat atau ruang penyimpanan data. Selain itu, sistem infor- masi yang berbasis web juga dapat menjadi sarana promosi efisien dan sumber informasi yang dapat diakses oleh pengguna internet yang makin lama makin luas.
a. Analisis Aliran Data dengan CML
Analisis aliran data bertujuan untuk mengetahui aliran proses informasi. Analisis ini menggunakan pengembangan berorientasi objek dengan caras a sebagai berikut.
1) Use Case Diagram
Use case diagram identik dengan serangkaian skenario yang digabungkan bang dipta sama oleh tujuan umum pengguna Halyak diri annan adalah apa yang diperbuat sistem, dan bukan "bagaimana".
2) Activity Diagram
Activity diagram identik dengan teknik untuk mendeskripsikan logika prose- dural, proses bisnis, dan jalur kerja. Activity diagram menunjukkan tahapan, pengambilan keputusan, dan percabangan. Activity diagram berbentuk seperti sebuah flow chart.
3) Sequence Diagram
Sequence diagram menggambarkan interaksi antarobjek di dalam dan di sekitar sistem (termasuk pengguna, tampilan, dan sebagainya) berupa message (pesan) yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).
4) Class Diagram
Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment,pewarisan,asosiasi, dan lain lain.
b. Membuat Tampilan Website
Berikut ini merupakan tahap-tahap dalam membuat tampilan sebuah website
1) Gather and Learn
Tahap pertama yang dilakukan adalah mengumpulkan informasi dan mempela jarinya. Informasi yang harus kita kumpulkan meliputi hal-hal berikut.
a) Tujuan pembuatan website.
b) Layanan yang akan disediakan di dalam website.
c) Target demografi pengunjung web (audiens)
d) Konten website yang akan ditampilkan.
2) Planning
Selanjutnya yang dilakukan adalah membuat rencana mengenai hal-hal berikut. a) Menentukan site map.
b) Menentukan teknologi atau platform yang akan digunakan.
c) Membuat prototype.
d) Menyiapkan konten.
3) Implementasi Desain
Setelah mengumpulkan informasi dan membuat rencana mengenai isi website, selanjutnya yang harus dilakukan adalah membuat desain. Anda sudah dapat membuat desain sesuai dengan konten website yang telah ditentukan.
4) Development
Setelah tahapan desain disetujui, website sudah dapat dibuat dan dikembangkan. Ada beberapa halaman yang perlu diperhatikan, yaitu sebagai berikut.
a) Halaman Index.php
Halaman ini berfungsi sebagai halaman depan/homepage. Halaman ini terdiri atas menu pilihan yang dapat dilihat oleh pengunjung.
b) Halaman Login User
Halaman ini berisi username dan kata sandi yang harus diisi untuk dapat memasuki ruang user.
5) Testing, Delivery, and Launch
Website siap untuk diuji coba dari mulai fungsionalitas sampai kompatibili- tas. Jika semua persiapan sudah selesai dilakukan, maka website siap untuk dipublikasikan.
6) Maintenance
Setelah website selesai di-publish, jangan lupa lakukan pemeliharaan agar website dapat terus berjalan dengan baik.
B. Web Hosting
Web hosting merupakan layanan jasa atau penyewaan tempat untuk menyim pan file atau bentuk script yang berada di Internet dan memungkinkan untuk perorangan ataupun organisasi guna menampilkan layanan jasa/produk di web atau bahkan situs Internet seperti web portal, web pribadi dan banyak lagi. Di samping itu, web hosting juga dapat diartikan sebagai tempat penyimpanan data berupa file dengan ukuran megabytes (MB) hingga terabytes (TB) yang memiliki koneksi ke internet, sehingga data dalam web hosting tersebut dapat di-request atau Diakses oleh pengguna internet dari semua penjuru atau global. Hal dapat di akses secara bersamaan dalam dekade satu waktu.
1. Konsep Web Hosting
hosting merupakan sebuah komputer biasa yang memiliki kelebih- an dari segi hardware dan soft- ware sebagai dasar sebuah server dan memiliki kemampuan online 24 jam setiap harinya. Komputer- komputer di dalam satu jaringan dapat saja terkoneksi 24 jam. serta terkoneksi pada saat-saat tertentu. Komputer-komputer yang terkoneksi terus selama 24 jam pada umumnya disebut 'server' yang memiliki server software. Server software dibuat untuk menampilkan halaman-halaman web dan situs-situs web. Komputer server memiliki banyak situs web di dalamnya dan hanya menunggu untuk orang mengakses (melalui web browser seperti Firefox/Chrome/IE, dan lain-lain) untuk meminta akses dan membuka situs tersebut. Saat browser meminta akses untuk halaman situs web, server akan mengirimkan halaman tersebut.
a. Fungsi Web Hosting
Web hosting berfungsi untuk menyediakan layanan yang memungkinkan user dapat menyimpan data mereka (baik itu database dan html) untuk dapat diakses dari mana saja melalui jaringan internet. Web hosting akan memudahkan dalam mencari informasi di internet, sekaligus berbagi dengan orang banyak dari data yang telah dibuat seperti halnya artikel, berita, sebuah kejadian, dan lain-lain.
b. Jenis-Jenis Hosting
Terdapat banyak layanan hosting yang tersedia, dari yang gratis, murah, hingga yang paling mahal. Semuanya memiliki kelebihan dan keterbatasan, sehingga tipe yang digunakan sebaiknya sesuai dengan kebutuhan. Jenis-jenis hosting atau server yang dapat dipakai di antaranya sebagai berikut.
1) Shared hosting yaitu, server hosting yang dipakai secara bersama-sama atau sering disebut di sharing. Di satu server terdapat lebih dari satu nama domain sebab berbagai orang dapat memakainya.
2) VPS (Virtual Private Server) atau bisa juga virtual dedicated server, yaitu merupa kan proses virtualisasi dari lingkungan software OS (sistem operasi) yang dipakai oleh server.
3) Colocation Server, yaitu sebuah layanan penyewaan tempat untuk meletakkan server yang digunakan untuk hosting. Server disediakan oleh konsumen atau pelanggan yang biasanya bekerja sama dengan vendor
4) Dedicated Server, dipakai untuk aplikasi yang lebih besar serta tidak bisa di operasikan di dalam shared hosting atau virtual dedicated server. Pada jenis ter- sebut, penyediaan server ditanggung perusahaan hosting yang biasanya bekerja sama dengan vendor.
2. Prosedur Penggunaan dan Penanganan Web Hosting
Adanya kemajuan dalam pengembangan website memudahkan dalam pem- buatan sebuah website, seperti menggunakan sistem manajemen konten, meman- faatkan website builder, atau mengaplikasikan cara membuat website dari awal. Disadarı atau tidak, membuat website bagi sebagian orang mungkin cukup mudah tapi tidak bagi sebagian lainnya.
a. Prosedur Penggunaan Web Hosting
Sebuah halaman website memiliki keunggulan yang tidak dimiliki oleh sosial media, yaitu tampilan dan kontennya yang dapat diatur sendiri sepenuhnya sesuai keinginan. Terutama untuk blogging, mempublikasikan berita atau menjual barang secara online, sebuah halaman web tentunya tetap menjadi pilihan terbaik. Di masa sekarang jika ingin memiliki website sangat mudah dan terjangkau. CMS platform seperti WordPress dan Joomla bebas dan mudah digunakan.
1) Pengenalan tentang Web Hosting dan Data Center.
Pada dasarnya istilah web hosting merujuk ke server yang meng-host website atau perusahaan hosting yang menyewakan ruang server. Sedangkan data center akan merujuk pada fasilitas yang digunakan untuk rumah server sebagai sebuah pusat data yang bisa menjadi ruang, rumah, atau bangunan yang sangat besar dilengkapi dengan pasokan listrik berlebihan atau cadangan, berlebihan komunikasi data, kontrol lingkungan (misalnya AC dan pencegah keba dan perangkat keamanan.
2) Tipe Web Hosting
Secara umum, ada empat jenis web hosting, yaitu General, Virtual Private S (VPS), Dedicated, dan Cloud Hosting. Sementara semua jenis server hog akan bertindak sebagai pusat penyimpanan untuk website, mereka beri dalam jumlah kapasitas penyimpanan, kontrol, persyaratan pengetahuan tel kecepatan server, dan keandalan.
3) Pengenalan Domain Name (Nama Domain)
Sebuah domain adalah nama dari website. Sebuah nama domain bukan se fisik yang dapat disentuh atau dilihat namun serangkaian karakter yang te berikan website identitas. Beberapa contoh domain name seperti google Alexa.com, Linux.org. eLearningEuropa.info, WebRevenue.co, serta yahoo yang perlu dilakukan untuk memiliki domain sendiri adalah mendafus nama domain. Untuk mendaftarkan nama domain di antaranya dapat me GoDaddy, Domain.com, NameCheap, dan Network Solutions.
4) Web Hosting vs Domain
Banyak yang sulit membedakan antara nama domain dengan web hosting trasinya adalah sebuah nama domain seperti alamat rumah, sedangkan 7) hosting di sisi lain sebagai ruang rumah untuk menempatkan perabot rumi
5) Cara Mendaftar Nama Domain
Mendaftarkan nama domain pada dasarnya seperti memiliki bagian i dari internet. Aturan pedoman pendaftaran domain ditentukan oleh Inter Corporation atau ICANN sebagai badan regulator global untuk pendaftar. host, dan klien yang berinteraksi dengan mereka. Menurut standar, semua pelanggan yang mendaftarkan nama domain harus siap untuk memberikan informası kontak pribadi seperti nomor HP. organisasi, bisnis, dan lain-lain. Bagi pelanggan yang mendaftar dengan nama domain khusus negara (seperti "us" atau "co uk"), akan dilakukan konfirmasi tentang keabsahan pembeli benar-benar berasal dari negara tersebut. Karena hanya pembeli yang berasal dari negara tersebut yang berhak secara hukum. Meskipun ada ratusan dengan akhiran nama domain (seperti com" atau "net), banyak dari domain tersebut memiliki persyaratan pendaftaran khusus. Misalnya, hanya organisasi yang dapat menggunakan nama domain "org" dan hanya warga Amerika dapat mendaftarkan nama domain yang berakhir di "us" Apabila tidak memenuhi pedoman dan persyaratan untuk masing-masing jenis domain selama proses pendaftaran dan pembayaran akan membatalkan pembelian.
6) TLD. TLDec dan Subdomain
Sebuah domain harus unik (misalnya hanya ada satu pun yahoo.com) dan harus terdaftar di agen domain, sedangkan untuk sub domain, pengguna bebas dapat menambahkannya di atas domain yang ada selama web host mereka menyediakan layanan. Ada pula yang menyatakan subdomain adalah tingkat ketiga domain dalam arti bahwa mereka hanya "subfolder" di bawah direktori root domain. biasanya digunakan untuk mengatur konten website dalam bahasa yang berbeda atau kategori yang berbeda. Sebagian besar Top Level Domain (TLD) terbuka untuk pendaftaran publik, ada peraturan ketat untuk mendapatkannya pada pendaftaran domain tertentu. Beberapa ekstensi pada Top Level Domain (TLD) di antaranya uk, ws. .co.jp .com.sg. Tv, edu, co, com.my, dan Mobi. Misalnya pendaftaran kode negara Top Level Domain (seperti co uk untuk Inggris Raya) dibatasi bagi warga negara tertentu, dan seluruh kegiatan dengan menggunakan situs domain tersebut di atur oleh peraturan daerah dan hukum cyber Ekstensi tertentu TLDs ini digunakan untuk menggambarkan karakteristik dari website. seperti biz untuk bisnis, edu ini digunakan untuk pendidikan (sekolah. universitas, rekan, dan lain-lain), org untuk organisasi publik. Misalnya mail yahoo.com, di mana yahoo.com adalah domain. Sedangkan mail.yahoo.com adalah sub domain.
7) Privast Domain
Setiap nama domain memiliki catatan Whois yang dapat diakses ke publik yang mencakup informasi pribadi pemilik seperti nama pemilik, nomor kontak, alamat. dan pendaftaran domain serta tanggal kedaluwarsa seperti yang disyaratkan oleh Internet Corporation (ICANN). Catatan-catatan ini tersedia kapan saja dan untuk siapa saja yang melakukan pencarian Whois. Karena siapa pun dapat melihat catatan Whois maka kegiatan spammer, hacker, pencuri identitas dan penguntit dapat mengakses informası pribadi si pemilik.
8) Bandwidth Web Hosting dan File Transfer Protocol
Bandwidth identik dengda ukuran data maksimum yang dapat ditransfer oleh account hosting dalam waktu tertentu dan diukur dalam satuan detik. Hal yang perlu dipahami yaitu bandwidth tidak boleh dicampur dengan transfer data karena keduanya adalah dua hal yang sangat berbeda. Dalam hal ini, transfer data mengacu pada konsumsi bandwidth. Sedangkan transfer data dan batas bandwidth yang digunakan menjadi hal yang penting saat memilih web host. Sedangkan File Transfer Protocol (FTP) adalah protokol jaringan standar yang digunakan untuk mentransfer file dari satu komputer ke komputer lain melalui internet.
b. Bentuk-Bentuk Kesalahan dan Penanganan Web Hosting
Beberapa bentuk kesalahan dan penanganan web hosting adalah sebagai berikut.
1) Mengatasi Internal Server Error Internal server error adalah pesan yang web server tampilkan karena tidak mampu memenuhi apa yang diminta visitor web karena terdapat kesalahan untuk akses URL yang diminta pengunjung. Beberapa penyebab internal server error yang paling sering terjadi pada website di antaranya sebagai berikut.
a) htaccess yang salah, atau seting disebut hak akses yang salah untuk cara mengatasinya dengan membuat .htaccess baru
b) Kesalahan coding di .htaccess dan kesalahan terjadi pada konfigurasi file, atau file dengan awalan (.) misalnya .htaccess
c) File index yang tidak ada tempatnya.
d) Limit memori pada paket hosting yang melebihi batas. Adapun untuk cara mengatasinya dengan menaikkan memori limit pada website. Jika memori limit sudah maksimal bisa menambah memori limit dengan cara menghubungi pihak hosting.
e) Jika Anda pengguna wordpress, maka jika mengalami internal server error bisa disebabkan oleh theme atau plugins yang crash. Cara mengatasinya dengan menonaktifkan theme atau plugins.
f) Komputer terserang virus/trojan/spoofing. Adapun cara mengatasi dengan scan virus.
2) Disk Space Hosting Penuh
Disk menggunakan Cpanel dan tiba-tiba melihat pada bagian disk space hosting penuh, terdapat beberapa langkah untuk mengatasi masalah tersebut, di anting nya sebagai berikut.
a) Hapus error log
Error log merupakan sebuah file yang secara otomatis dibuat oleh sistem ketika ada sebuah kesalahan yang dihadapi pada sistem. Pada cPanel, error log ini berguna bagi webmaster guna untuk mengetahui pesan kesalahan pada website yang dikelola, sehingga dapat melakukan perbaikan sesuai dengan petunjuk error log yang ada. Namun, webmaster juga tidak boleh lupa untuk menghapus file error log ini setelah selesai melakukan perbaikan website. Jika tidak dihapus maka ukuran file error log akan bertambah apabila di kemudian hari ada kesalahan pada website.
b) Cek folder trash Terkadang ketika menghapus file melalui cPanel, kita sering lupa untuk memilih "skip trash". Hal ini sebenarnya juga menjadi salah satu penyebab mengapa disk space tetap penuh padahal sudah menghapus beberapa file di Cpanel. Untuk menghapus file yang ada di folder .trash dapat dilakukan dengan cara berikut.
(1) Masuk ke akun cPanel.
(2) Masuk ke File Manager cPanel.
(3) Pilih menu "Setting" pada pojok kanan atas. Pilih "Show hidden files"
(4) Lalu masuk pada folder ".trash" yang tampil di sebelah kiri.
(5) Hapus file yang tidak diperlukan lagi untuk di-restore.
c) Jika semua cara di atas sudah di lakukan dan disk space tetap penuh, maka cara terakhir adalah dengan upgrade paket hosting dengan kapasitas disk space yang lebih besar.
3) Error Establishing a Connection
Kondisi eror hine Database Cegagalan pada script wordpress ketika melakukan koneksi dengan MySQL. Pada umumnya, error establishing a database connection disebabkan oleh beberapa faktor berikut ini:
a) Login database tidak tepat adalah kesalahan penulisan, spasi, dan lain-lain dapat menyebabkan hal ini terjadi.
b) Database corrupted yaitu plugin dan tema yang tidak memiliki struktur peng- kodean yang baik serta belum teruji dapat menyebabkan terjadinya hal ini.
c) Plugin dan tema tidak kompatibel
d) Server Database tidak merespons yaitu server database down atau terlalu banyak traffic yang sedang berjalan dapat menyebabkan server MySQL tidak merespons.
3. Prosedur Administrasi Aplikasi Web dengan Web Hosting
Administrasi web merupakan peran penting dalam pengembangan web. Jika tidak memiliki administrasi web dampaknya adalah situs web akan sulit berjalan dengan baik. Meskipun tugasnya sederhana, tapi tugas mereka telah memberikan dampak yang besar. Sedangkan web hosting merupakan sebuah komputer tempat dimana individu atau organisasi menempatkan situs website mereka. Pada materi berikut kita akan mempelajari cPanel sebagai pembelajaran awal kita mengenai web hosting.
a. Pengertian cPanel
Pengertian cPanel merupakan kontrol panel dimana Anda dapat mengatur se- luruh elemen dari account hosting. Pada dasarnya konsep web hosting sama dengan komputer, sama-sama memilki kontrol panel dengan fungsi untuk memudahkan pengguna mengatur seluruh elemen pada komputer/hosting. Melalui cPanel peng guna dapat mengelola berbagai macam fasilitas web hosting, seperti:
1) membuat dan mengelola e-mail account untuk website Anda,
2) menginstal WordPress (Atau CMS lain seperti Joomla, Prestashop, dsb),
3) back up file website,
4) mengupload file, dan
5) mengecek pemakaian bandwidth dan disk space.
b. Interface
Tampilan awal dari cPanel sangat sederhana dan mudah untuk kita pelajari, kita akan melihat tampilan cPanel seperti di bawah ini.
Untuk mengubah tampilan/theme/style seperti di atas, caranya sangat mudah, cari "Preferences" pada cPanel Anda dan kemudian klik "Change Style".
Terdapat dua pilihan, yaitu "Basic" dan "Retro". Apabila kita memilih "Basic", tampilan cPanel Anda akan berubah ke tampilan yang terbaru dengan design yang berbeda dari sebelumnya.
c. Meng-update Preferences
Ketika pengguna login ke cPanel untuk pertama kali, pastikan kita mengunjungi bagian "preferences" untuk meng-update informasi kontak dan mengganti password yang digunakan.
1) Mengganti Password
Langkah mengganti password, yaitu:
a) Pertama-tama klik "password & security" pada bagian preferences.
b) Kemudian Anda akan melihat halaman dengan tampilan seperti di bawah ini.
c) Setelah itu kita dapat mengganti password sesuai dengan keinginan.
2) Mengupdate Informasi Kontak
E-mail yang digunakan pada saat pendaftaran hosting akan menjadi e-mail utama pada cPanel Anda, namun demi alasan keamanan, saya menyarankan Anda untuk menggunakan e-mail yang berbeda untuk menerima update dari cPanel, Untuk meng-update informasi kontak, klik "Contact Information" pada bagian pre- ferences dan Anda akan melihat tampilan seperti di bawah ini.
d. Mengelola Domain
Bagian "Domains" pada cPanel memungkinkan Anda untuk mengelola segala hal yang berhubungan dengan domain, seperti menambahkan domain yang baru Anda beli dari account hosting Anda, menambahkan subdomains, atau redirects domain yang Anda miliki ke domain lainnya.
e. Pengaturan E-mail Account
Bagian "E-mail" pada cPanel memungkinkan Anda untuk mengelola segala aspek yang berhubungan dengan e-mail Anda mulai dari membuat email baru, membuat autoresponders e-mail hingga mengaktifkan "SpamAssassin" guna mencegah e-mail spam.
f. Mengelola File-File Website
Bagian "Files" pada cPanel memungkinkan Anda untuk mengupload file, mem- backup website Anda, mengelola File Transfer Protocol (FTP) Anda dan juga melihat pemakaian disk. FTP adalah cara lain untuk mengelola file website Anda, yang mana dengan FTP Anda juga dapat mengupload file website.
C. Aplikasi Web dengan Model View
Controller (MVC) Guna memahami framework di PHP, minimal harus memahami konsep MVC (Model, View, Controller) yang berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Implementasi paling mudah dapat djumpai pada pembuatan akun Facebook. Diawali dengan melihat tampilan sign-up/register (ini adalah View), kemudian pada form pengisian isi data username, kata sandi, dan lain-lain, selanjutnya klik sign-up/register. Di sini View memanggil Controller dan Controller memanggil Model, sedangkan Model bekerja untuk mengecek kesesuaian dengan kriteria pendaftaran seperti sudah mengisi username, kata sandi, dan lain- lain. Selanjutnya Model mengembalikan (callback) ke Controller dan selanjutnya Controller mengembalikan ke View, dan akan melihat berhasil tidaknya melakukan sign-up/register.
1. Konsep Model View Controller (MVC)
Pola Model View Controller awalnya dirumuskan pada sekitaran tahun 1970- an. Sebuah pola arsitektur perangkat lunak yang dibangun untuk memisahkan data yang dipresentasikan dengan metode yang digunakan untuk berinteraksi dengan data. Secara teori, sistem MVC hanya memperbolehkan front-end developer dan back-end developer untuk bekerja sama dalam suatu sistem yang sama tanpa mengganggu, berbagi, atau mengedit file yang sama. Model-View-Controller (MVC) adalah sebuah metode untuk membuat aplikasi dengan memisahkan antara data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Model View Controller sebagai sebuah konsep yang cukup populer dalam pembangunan aplikasi web. Sistem dari MVC sebenarnya cukup sederhana dan mudah dipahami, membeda-bedakan setiap bagian sesuai dengan fungsinya. Jenis-jenis komponen yang membangun suatu MVC dalam suatu aplikasi adalah sebagai berikut.
a. Model
biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian Controller, namun tidak dapat berhubungan langsung dengan bagian View. Model merupakan layer yang berada di antara data dan aplikasi. Data itu sendiri disimpan dalam berbagai jenis RDBMS misalnya MySQL, file XML, dan Excel.
b. View
View adalah representasi visual dari suatu aplikasi. Bagian ini memiliki fungsi untuk menyajikan data yang diterima oleh Controller dari Model. Dengan kata lain View adalah bagian dari sistem di mana HTML dihasilkan dan kemudian ditampilkan.
c. Controller
Controller merupakan bagian yang mengatur hubungan antara bagian model dan bagian View. Fungsi utama dari Controller adalah untuk menangani permintaan dan menyampaikan data dari Model menuju View. Faktor penting dari Controller adalah pengguna. Tanpa interaksi pengguna, Controller tidak memiliki tujuan. Dalam hal ini, Controller bisa dikatakan sebagai penghubung antara Model dengan View.
MVC dengan cepat menjadi standar yang digunakan pada lingkungan pengem- bangan aplikasi web modern. Banyak framework berbasis PHP seperti Laravel, CakePHP, CodeIgniter dan lain-lain yang menggunakan pola MVC untuk memisahkan logika di balik aplikasi dengan bagian representasi. Pola MVC memberikan aplikasi web memiliki banyak pandangan yang berbeda dibandingkan dengan model tunggal yang umum. Meskipun MVC pada awalnya dirancang untuk komputasi personal, kini telah diadaptasi dengan baik dan digunakan secara luas untuk pengembangan aplikasi/web karena pemisahan fungsi dan secara tidak langsung source code nya juga bisa digunakan kembali. Hal ini juga mendukung modular sistem, memungkinkan developer untuk dengan cepat memperbaharui, menambah, bahkan menghapus fungsi. Dengan pola MVC, para web designer dan web programmer bisa bekerja sama b. Codeignite membangun aplikasi web tanpa perlu mengganggu satu sama lainnya.
2. Jenis-Jenis Framework untuk Aplikasi Web (CodeIgniter, Zend, Symfony, dan Lain-Lain)
Hal penting dalam membuat sebuah project website adalah kemudahan dalam pembuatan dan penggunaan, struktural, serta keamanan program. Namun demikian, seringkali seorang programmer lebih fokus pada salah satu atau dua dari ketiga hal penting di atas, sementara poin lain diabaikan begitu saja. Framework (kerangka kerja) identik dengan sebuah tools/alat yang berfungsi dalam membantu sebuah pekerjaan developer atau programmer dalam menangani berbagai masalah dalam pemrograman seperti koneksi database, pemanggilan variabel, file, dan lain-lain. Sehingga developer lebih fokus dan lebih cepat membangun aplikasi. Web framework berawal dengan web statis yang berbasis HTML dan halaman yang hanya berupa kode HTML. Web statis ini, kemudian berkembang menjadi web dinamis yang memisahkan antara kode program dan data. Setelah web dinamis, kemudian berkembang lagi menjadi CMS (Content Management System), web instan yang berupa template web. CMS ini lebih menarik dari segi penampilan. Dari CMS perkembangan web terus meningkat hingga framework ini dapat membagi sistem.
Beberapa framework PHP open source menggunakan konsep MVC di antaranya sebagai berikut.
a. CakePHP CakePHP juga menjadi framework pilihan yang memungkinkan pengem- bang web membuat sebuah aplikasi dengan karakter pengembangan RAD (Rapid Aplication Development) untuk dapat dikembangkan menjadi aplikasi yang lebih kompleks. CakePHP sebuah rapid development framework yang gratis dan sumber terbuka untuk PHP. CakePHP adalah sebuah framework untuk membuat aplikasi CRUD (Create, Read, Update, Delete) berbasis bahasa pemrograman PHP.
b. CodeIgniter
CodeIgniter identik dengan aplikasi open source yang berupa framework de- ngan model MVC (Model, View, Controller) untuk membangun website dinamis. CodeIgniter memudahkan developer untuk membuat aplikasi web dengan cepat tanpa membuatnya dari awal. CodeIgniter dirilis pertama kali pada 28 Februari 2006. Berbeda dengan Yii, CodeIgniter atau CI lebih sederhana karena diperuntukkan untuk web project ukuran kecil-menengah. Dari segi pengguna, CodeIgniter lebih banyak digunakan dan dikenal daripada framework lainnya.
c. FuelPHP
Framework ini dimulai pada akhir tahun 2010 oleh Dan Horrigan. Kemudian tak lama setelah itu, Dan Horrigan menyertakan Phil Sturgeon, Jelmer Schreuder, Harro Verton, dan Frank de Jonge. Pada 2013, Steve West bergabung dengan tim tersebut. Tim ini telah berpengalaman puluhan tahun dengan PHP dan semuanya telah terlibat dengan framework opensource lain seperti CodeIgniter dan lain-lain. FuelPHP mengambil pendekatan yang berbeda dari framework lain dan ber- usaha untuk menjadi berbasis masyarakat. FuelPHP baru berdiri selama 3 tahun dan telah memiliki lebih dari 300 pengembang yang berkomitmen pada source code dan bahkan ada yang membantu dalam dokumentasi.
d. Laravel
Laravel identik dengan framework aplikasi web dengan sintaks yang ekspresif dan elegan. Pengembangnya percaya bahwa pengerjaan sebuah project harus men- jadi pengalaman kreatif, menyenangkan, dan memuaskan. Laravel bertujuan untuk membuat proses programming yang menyenangkan bagi pengembang tanpa me- ngorbankan fungsionalitas aplikasi. Guna mendukung tujuan ini, pengembang telah mencoba untuk menggabungkan yang terbaik dari apa yang telah mereka lihat dalam kerangka web lain, termasuk kerangka yang diimplementasikan dalam bahasa lain seperti Ruby on Rails, ASP.NET MVC, dan Sinatra.
e. Symfony
Symfony adalah sebuah framework lengkap yang didesain untuk mengoptimalkan pengembangan aplikasi berbasis web dengan menyuguhkan beberapa fitur untuk pemula. Symfony mengelompokkan aturan bisnis aplikasi, logika server, dan tampilan presentasi. Beberapa kelebihan Symfony adalah cepat, fleksibilitas tidak terbatas (mudah diadaptasikan), mudah dikembangkan dan diperluas, serta mudah untuk digunakan. Dengan pengembang SensioLabs yang memang sudah cukup berpengalaman dalam bidang ini, Symfony memiliki framework yang cukup powerfull untuk digunakan pada project website Anda.
f. Yii Yii
identik dengan framework php gratis atau open source yang ditulis dalam PHP5 dan dikembangkan untuk aplikasi web 2.0. Yii diucapkan sebagai "Yee", dan merupakan singkatan dari "Yes, it is!". Saat ini, Yii adalah framework yang paling mudah dan lengkap fiturnya dibandingkan framework lain. Dengan kelengkapan fiturnya tersebut, Yii cocok digunakan untuk proyek kecil maupun besar. Yii membantu web programmer membangun aplikasi kompleks dengan efektif dan efisien.
g. Zend Framework 2
Zend Framework 2 identik dengan framework php open source untuk mengem- bangkan aplikasi web dengan menggunakan PHP 5.3+. Zend Framework 2 meng- gunakan kode berorientasi objek (object oriented) 100% dan menggunakan sebagian besar fitur baru dari PHP 5.3, yaitu namespace, fungsi lambda, dan closures. Struktur komponen Zend Framework 2 unik dengan web service yang lebih aman, reliabel dan modern. Masing-masing komponen dirancang dengan beberapa ketergantungan pada komponen lainnya. ZF2 mengikuti prinsip desain object oriented SOLID. Arsitektur yang longgar ini memungkinkan pengembang untuk menggunakan komponen mana yang mereka inginkan. Ini biasa disebut "Use-at-will". Framework ini juga mendukung beberapa API untuk beberapa vendor, seperti Google, Amazon, Yahoo!, dan flickr.
3. Prosedur Penggunaan Framework untuk Aplikasi Berbasis Web
Pengembangan sebuah web yang lebih cepat dan efektif dengan memanfaatkan sebuah framework PHP yang terkenal, yaitu Framework CodeIgniter. CodeIgniter (CI) merupakan framework PHP yang tangguh dan sangat mudah dipelajari se- hingga diperuntukkan kepada developer PHP yang ingin membangun aplikasi web yang full featured dengan mudah dan elegan. CI hadir dengan dokumentasi yang lengkap dan menyediakan contoh-contoh koding yang bervariasi. CI juga memiliki komunitas yang besar sehingga ada banyak forum yang siap membantu ketika Anda merasa kesulitan dalam menggunakan CI. Framework CI menggunakan metode pengembangan berbasis MVC (Model View Controller), sehingga developer wajib memahami konsep MVC sebelum menggunakan Framework CI. Konsep MVC adalah konsep pemisahan antara logik dari aplikasi (Controller) dengan tampilan aplikasi (View) dan database aplikasi (Model). Model View Controller (MVC) merupakan suatu metode untuk membuat sebuah aplikasi atau sistem dengan memisahkan beberapa bagian penting dari aplikasi ter- sebut di antaranya memisahkan bagian data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Salah satu keuntungan dari MVC adalah kemudahan perawatan (maintenance) dan pengembangan aplikasi. Penerapan kon- sep Model View Controller (MVC) akan membuat alur program menjadi lebih jelas sehingga mudah dipahami oleh pengembang selanjutnya. Pada penelitian ini konsep Model View Controller (MVC) akan diimplementasikan dengan menggunakan Framework PHP, yaitu Framework Codeigniter. Misalnya pada website yang menjual aneka miniatur seperti miniatur kereta, becak, kapal, pesawat, sepeda, motor, mobil dan lain-lain. Di sini pemilik toko hanya berperan sebagai distributor saja, sehingga pemilik tidak memiliki toko miniatur secara fisik. Oleh karena itu, seluruh media promosi akan dilakukan melalui media internet. Selain menggunakan konsep Model View Controller (MVC), Website e-commerce ini juga memiliki dua fitur yang cukup menarik, yaitu Push Notification dan aplikasi Mobile. Adanya dua fitur tersebut, diharapkan dapat memudahkan pengguna.
a. Struktur Direktori CI
Setelah men-download framework CI (dalam bentuk rar), maka ekstraklah file tersebut dan simpan di directory localhost. Folder-folder yang terdapat di dalam Fromework CI adalah sebagai berikut:
Terdapat tiga folder utama pada Framework CI. Folder "application" merupakan area kerja dari pengembang web karena code-code yang akan dikembangkan akan dituliskan di direktori tersebut. Kemudian folder "system" merupakan folder yang mengandung definisi kelas-kelas inti, helper, dan lain-lain yang sudah dibuat oleh pengembang CI. Terakhir, folder "user_guide" merupakan direktori yang berisi tutorial atau dokumentasi cara penggunaan framework CI. Guna pembuatan website, kita hanya diperkenankan untuk memodifikasi folder "application". Isi dari folder tersebut adalah sebagai berikut.
b. Memulai Menggunakan CI
Secara umum, tahapan untuk menggunakan Framework CI pertama kali adalah sebagai berikut.
1) Konfigurasi Framework CI Buka folder config Framework CI dengan cara sebagai berikut.
a) Buka file config.php dan diisi dengan $config['encryption_key']
b) Buka file database.php dan diisi dengan hostname, username, kata sandi (password), dan database.
c) Buka file route.php untuk menentukan $route['default_controller'].
2) Persiapkan Model
Beberapa persiapan Model antara lain sebagai berikut.
a) Buka folder 'Models' di folder 'application.
b) Buat file baru, misal 'datausr_model.php.
c) Buka file tersebut dan deklarasi kelas dengan nama yang sama dengan nama file tersebut.
d) Kelas yang baru dideklarasikan wajib menurunkan kelas 'CI_model' sebagai berikut.
Hasil kodingan:
3) Persiapkan View
Beberapa cara untuk mempersiapkan View antara lain sebagai berikut.
a) Buka folder 'Views' di folder 'application'
b) Buat file baru dengan nm misalnya 'home.php'
c) Isilah file tersebut dengan script-script html biasa untuk menampilkan halaman web sebagai berikut.
Hasil kodingan:
4) Persiapkan Controller
Beberapa persiapan controller antara lain sebagai berikut. a) Buka folder 'Controllers' di folder 'application' b) Buat file baru, misal 'dt_user.php' c) Buka file tersebut dan deklarasi kelas dengan nm yang sama dengan nm file tersebut d) Kelas yang baru dideklarasikan wajib menurunkan kelas 'CI_Controller'
Hasil kodingan:
C. Pemanggilan fungsi yang sudah dibuat pada class controller bisa dipanggil melalui url dengan format sebagai berikut. host/index.php/class_name/function_name/data.
host/index.php/class_name/function_name/data
Tidak ada komentar:
Posting Komentar