Mencoba Membuat Website Peminjaman Buku untuk Tugas Sekolah
Cerita pengalaman gw saat membuat website peminjaman buku untuk tugas sekolah, mulai dari menentukan tampilan sampai menghadapi masalah saat proses pengerjaan.
Project ini berawal dari tugas sekolah. Waktu itu gw mendapat tugas untuk membuat sebuah website yang berhubungan dengan sistem peminjaman buku.
Awalnya gw mengira project ini bakal cukup sederhana. Tinggal membuat halaman daftar buku, form peminjaman, dan beberapa halaman lainnya. Tapi setelah mulai dikerjakan, ternyata ada cukup banyak hal yang harus dipikirkan.
Mulai dari tampilan, database, sampai bagaimana data peminjaman bisa disimpan dan ditampilkan kembali.
Awalnya Gw Mulai dari Tampilan
Sebelum masuk terlalu jauh ke bagian coding, gw mencoba memikirkan dulu tampilan websitenya.
Gw ingin membuat tampilan yang sederhana supaya pengguna tidak bingung saat mencari buku atau melakukan peminjaman.
Beberapa halaman yang gw pikirkan waktu itu antara lain:
- Halaman utama
- Daftar buku
- Detail buku
- Form peminjaman
- Data peminjaman
Gw sengaja tidak membuat desain yang terlalu ramai karena menurut gw website sekolah lebih penting mudah digunakan daripada memiliki terlalu banyak elemen.
Mulai Membuat Sistemnya
Setelah gambaran tampilannya mulai jelas, gw mulai mengerjakan bagian sistem.
Data buku perlu disimpan supaya bisa ditampilkan di halaman daftar buku. Selain itu, data peminjaman juga harus dicatat agar bisa diketahui siapa yang meminjam, buku apa yang dipinjam, dan kapan buku tersebut dipinjam.
Kurang lebih data yang dibutuhkan seperti:
Buku
- id
- judul buku
- penulis
- penerbit
- stok
Peminjaman
- id
- nama peminjam
- buku
- tanggal peminjaman
- tanggal pengembalian
Dari sini gw mulai lebih paham kalau membuat website bukan cuma soal membuat tampilan. Data yang ada di belakang website juga harus dipikirkan dari awal.
Bagian yang Sempat Bikin Bingung
Salah satu bagian yang menurut gw lumayan bikin bingung adalah ketika mulai menghubungkan data buku dengan data peminjaman.
Gw harus memastikan ketika seseorang memilih sebuah buku, data buku yang dipilih benar-benar masuk ke data peminjaman.
Selain itu, gw juga perlu memikirkan kondisi stok buku.
Misalnya stok sebuah buku tinggal 1, kemudian buku tersebut dipinjam. Berarti jumlah stok harus berubah. Hal seperti ini kelihatannya sederhana, tetapi ketika mulai dibuat di dalam program, ternyata perlu diperhatikan satu per satu.
Error yang Muncul Selama Mengerjakan
Seperti project-project sebelumnya, tentu saja tidak semuanya langsung berhasil.
Beberapa kali gw menemukan error saat menjalankan project. Ada bagian yang sudah gw kira benar, tetapi ternyata masih ada yang salah.
Biasanya gw mulai dari membaca pesan error yang muncul, kemudian mengecek lagi bagian kode atau database yang berhubungan dengan error tersebut.
Dari situ gw belajar untuk tidak langsung panik ketika melihat error.
Kadang penyebabnya ternyata cukup sederhana, seperti nama field database yang berbeda dengan yang dipanggil di kode atau data yang belum tersedia.
Hal yang Gw Dapat dari Project Ini
Menurut gw, bagian paling penting dari project ini bukan cuma websitenya selesai atau tidak.
Gw jadi lebih memahami bagaimana sebuah sistem sederhana bisa dibuat dari kebutuhan yang sebenarnya.
Sebelumnya gw lebih sering melihat website dari bagian tampilannya saja. Setelah mengerjakan project ini, gw mulai melihat ada banyak proses di belakang layar.
Ada database, hubungan antar-data, form input, validasi, dan proses untuk menampilkan data kembali kepada pengguna.
Penutup
Website peminjaman buku ini memang dibuat untuk tugas sekolah, tetapi dari project sederhana ini gw jadi mendapat pengalaman baru.
Gw masih merasa banyak bagian yang belum gw kuasai dan masih sering menemukan error saat mengerjakan project. Tapi justru dari proses itu gw jadi lebih terbiasa mencoba, mencari penyebab masalah, dan memperbaikinya.
Buat gw, project sekolah seperti ini bukan cuma tentang mendapatkan nilai.
Ini juga menjadi salah satu cara gw belajar seperti apa proses membuat sebuah website dari awal sampai bisa digunakan.