Modul Upskilling Dan Reskilling Web Technoligies
Modul Upskilling Dan Reskilling Web Technoligies
Jadi, jika Anda ingin membuat aplikasi web yang elegan dan kompleks, sebaiknya belajar
Laravel. Namun jika aplikasi web Anda cukup sederhana, CodeIgniter bisa menjadi solusi.
2
D. APA YANG PERLU ANDA PAHAMI SEBELUM BELAJAR LARAVEL?
1. PENGUNAAN HTML / CSS
HTML dan CSS merupakan dasar untuk membuat tampilan dan struktur alias front-end
website. Dengan kata lain, HTML dan CSS membentuk kulit dan tulang website.
Sedangkan untuk membangun otak alias logikanya, Anda bisa menggunakan PHP.
2. PENGGUNAAN PHP
Untuk belajar Laravel secara mendalam, pemahaman akan PHP sangat penting. Sebab,
ini bahasa pemrograman yang Laravel gunakan. PHP adalah bahasa pemrograman
dengan sistem server-side. Jadi, tugas PHP yaitu membangun back-end alias
pemrograman pada sisi server.
PHP singkatan dari Hypertext Preprocessor, yaitu bahasa pemrograman yang
dirancang khusus untuk aplikasi dan pengembangan website. Mulanya, PHP
dikembangkan pada tahun 1994 dan rilis perdana pada 8 Juni 1995 oleh pengembang
berketurunan Denmark-Kanada, Rasmus Lerdorf.
Awalnya PHP merupakan kependekan dari Personal Home Page (Situs personal).
Dengan sifatnya yang open source, minat dari para developer untuk berkontribusi
dalam pengembangan PHP semakin meningkat. Pada tahun 1995, sebuah perusahaan
bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan
lebih cepat. Kemudian pada Juni 1995, perusahaan tersebut merilis interpreter baru
untuk PHP dan meresmikan rilis tersebut sebagai PHP 3.0 dan singkatan PHP diubah
menjadi akronim berulang PHP: Hypertext Preprocessor.
Biasanya, PHP disisipkan ke dalam dokumen HTML dan dipadukan dengan bahasa
pemrograman lain seperti CSS.
a. Cara Kerja PHP
Client (web browser) mengirim sebuah permintaan HTTP ke web server, sebagai
contoh index.php. PHP yang berada di web server akan memproses kode PHP
untuk menghasilkan file HTML. Web server akan mengirim file HTML kembali ke
client.
b. Kelebihan PHP
• Mudah dipelajari
• Terintegrasi dengan banyak database
• Open source
• Komunitas besar
• Mendukung layanan cloud
• Fleksibel
• Cross-platform
c. Kekurangan PHP
• Keamanan kurang baik
• Alat debugging terbatas
• Bukan bahasa serbaguna
• Tidak dapat mengubah core behavior
3
• Variabel PHP bersifat case-sensitive
e. Variabel
• Digunakan untuk menyimpan sebuah value, data atau informasi
• Nama variabel diawali dengan tanda $
• Panjang tidak terbatas
• Setelah tanda $ diawali oleh huruf atau under-scrore (_). Karakter
berikutnya bisa terdiri dari huruf, angka, dan karakter tertentu yang
diperbolehkan (karakter ASCII dari 127 – 255).
• Bersifat case-sensitive.
• Tidak perlu dideklarasikan.
• Tidak boleh mengandung spasi.
f. Tipe Data
Tipe data adalah pengklasifikasian data berdasarkan jenis data tersebut yang
digunakan dalam pemrograman. Adapun beberapa jenis tipe sebagai berikut:
• Boolean
Tipe data boolean adalah tipe data paling standar yang hanya menyatakan
kebenaran, apakah TRUE (benar) atau FALSE (salah).
4
• String
Tipe data string adalah tipe data yang berbentuk text. dan untuk cara
penulisan tipe data string di letakkan di tengah-tengah tanda petik.
• Integer
Tipe data integer adalah tipe data yang berbentuk angka yang berbentuk
bilangan asli atau bilangan bulat. untuk penulisan tipe data Integer tidak
perlu menambahkan tanda petik karena akan di baca sebagai string jika
anda menambahkan tanda petik pada tipe data integer.
• Float
Tipe data float atau di sebut juga tipe data double adalah tipe data yang
berisi bilangan desimal. cara penulisannya hampir sama dengan tipe data
integer karena tidak memerlukan tanda petik di awal dan di akhir isi
variabel float.
• Array
Array adalah sebuah tipe data yang menyimpan banyak isi di dalam sebuah
variabel. jika kita ibaratkan array seperti sebuahh tas yang di dalamnya bisa
saja berisi pulpen, buku, penggaris dan lainnya. isi dari pada variabel array
di tandai dengan masing-masing angka yang sudah di terapkan menurut
urutannya.
5
• Objek
Tipe data objek digunakan untuk membuat instan dari suatu kelas. Objek
memiliki properti dan metode yang dapat diakses untuk melakukan
berbagai tindakan.
• NULL
Tipe data NULL digunakan untuk menyimpan nilai kosong atau tidak ada.
Tipe data ini sering digunakan ketika suatu variabel belum memiliki nilai
yang ditetapkan.
6
Dengan pemisahan antara tampilan (front-end) dengan controller (back-end), Anda
akan lebih memahami bagaimana Laravel memproses setiap file dan resource yang
digunakan.
Pada gambar di atas dapat dilihat versi xampp yang terbaru yaitu 8.2.12 yang di
mana versi Bahasa permrograman PHP dengan versi 8.2.12. untuk saat ini master
installer xampp hanya dapat diinstall pada arsitektur operating system 64bit.
Silahkan disesuaikan dengan operating system masing-masing.
7
2. Instalasi file master xampp
Setelah melakukan download file master xampp, selanjutnya melakukan instalasi.
Untuk melakukankan instalasi dengan cara mengklik dua kali pada file xampp,
kemudian menekan tombol Next sampai akhir instalasi.
Pada gambar di atas adalah tampilan awal untuk installasi xampp, silahkan klik
tombok next, next, dan next sampai muncul tombol finish. Tombol finish muncul
menandakan installasi aplikasi sudah selesai.
Pada gambar diatas menunjukkan service apache dan mysql sudah berjalan, untuk
memastikan service-service tersebut dapat berfungsi dengan baik, maka cobalah
mengakses link berikut : http://localhost/phpMyadmin di browser.
8
3. Jika terdapat pesan error pada saat mengklik tombol start, dapat melakukan
beberapa perbaikan melalui tombol config. Salah satu contoh Ketika ingin
menginstall Laravel, muncul pesan error seperti pada gambar dibawah ini:
Pada gambar di atas muncul error dikarenakan ada extention yang perlu untuk
diaktifkan pada file php.ini. cara untuk mengaktifkan bisa dilihat pada gambar
dibawah ini:
Pada gambar di atas, fokuslah pada tanda warna merah, Ketika diklik maka akan
muncul seperti pada gambar dibawah ini:
Pada gambar diatas ketik CTR+F untuk memunculkan kolom pencarian, kemudian
ketik zip sehingga nantinya langsung diarahkan pada baris extention yang
diperlukan, setelah berada pada baris extention zip, hapuslah tanda titik koma pada
9
baris tersebut, sehingga extention zip menjadi aktif. Contohnya dapat dilihat pada
gambar berikut ini :
Pada gambar diatas fokuslah pada tanda warna merah, dimana titik koma sudah
dihapus. Kemudian simpanlah, cobalah Kembali menekan tombol Start. Setelah
tidak ada masalah, maka cobalah akses link sesuai dengan penjelasan diawal.
Setelah mengakses link, maka akan menampilkan seperti gambar dibawah ini.
Pada gambar di atas menunjukkan bahwa instalasi xampp sudah berhasil dengan
sempurna, untuk membuat database dan tabel akan dilakukan melalui framework
Laravel, salah satu fitur Laravel yaitu Database Migration.
10
b. VISUAL STUDIO CODE
Berikut adalah cara untuk melakukan instalasi Composer di Sistem Operasi Windows:
1. Unduh Visual Studio Code link https://code.visualstudio.com/docs/setup/windows
2. Jika sudah klik/buka Aplikasi VSCode yang sudah di download, Kemudian ikuti
kotak merah pada gambar klik Next.
11
4. Kemudian klik Next lagi itu hanya penempatan direktori file programnya, lalu
Next untuk membuat folder nya, Kemudian Ceklis “Create Desktop Icon” jika
ingin membuat shortcut VSCode nya kemudian ceklis “Add to PATH (available
after restart) jika sudah klik Next.
5. Kemudian Klik Install tunggu sampai “Setup has finished installing Visual
Studio Code on your komputer” . kemudian klik Finish seperti gambar dibawah
ini.
c. COMPOSER
Laravel menggunakan Composer untuk mengelola libraries yang dipakai Laravel
dalam suatu proyek. Karena itu, Composer juga dijuluki
sebagai dependency atau library manager untuk PHP.
12
Dengan composer, pekerjaan Anda akan jauh lebih efisien. Sebab, composer mampu
menyederhanakan pekerjaan sehingga Anda tidak perlu memberi perintah berulang
kali. Selain itu, pemrograman PHP Anda juga jadi lebih rapi.
Berikut adalah cara untuk melakukan instalasi Composer di Sistem Operasi Windows:
1. Unduh Composer versi terbaru pada link https://getcomposer.org/Composer-
Setup.exe
2. Jalankan (run) Composer installation wizard. Abaikan jika Anda diminta
untuk mengaktifkan mode developer. Lanjutkan proses install.
3. Muncul jendela yang akan meminta Anda untuk mencari baris perintah PHP.
Secara default, baris perintah dapat ditemukan di C:/xampp/php/pjp.exe.
Setelah itu, klik Next.
4. Permintaan Pengaturan Proxy (Proxy Settings) akan muncul. Kosongkan
boks (tidak perlu ditandai) dan lewati bagian ini dengan meng-klik opsi Next.
Klik Install di jendela berikutnya.
5. Buka command prompt. Tekan tombol CTRL+R, ketik “cmd” di dalam kolom
prompt, dan klik OK.
13
7. Berikut tampilan jika composere telah berjalan dengan baik.
d. LARAVEL
Setelah Composer selesai terinstal, tahap berikutnya yaitu memasang Laravel.
Cara memasang laravel sebagai berikut :
1. Buat folder baru untuk projek kita dan masuk kedalam folder tersebut.
3. Shortcut tercepat untuk arahakan CMD ke directory adalah dengan mengklik link
Alamat folder dan ketik CMD kemudian tekan Enter.
14
4. Instal Laravel didalam folder projek yang sudah kita buat sebelumnya dengan
perintah : composer create-project laravel/laravel nama project, dan pastikan
computer kita terkoneksi internet dengan baik.
6. Tampilan dibawah ini adalah tampilan Ketika Laravel berhasil di download dan
diterapkan pada folder projek kita.
15
7. Kemudian kita masuk Kembali ke command promt mengetik perintah dibawah ini,
Untuk menjelankan server localhost
16
17
MODUL II
DIRECTORY STRUCTURE LARAVEL
Laravel, sebagai salah satu framework PHP yang paling populer, memiliki struktur direktori yang
terorganisir dengan baik. Laravel adalah salah satu framework PHP yang menggunakan konsep
MVC (Model-View-Controller). Struktur direktori Laravel dirancang untuk memudahkan
pengembangan aplikasi dengan mengorganisir kode berdasarkan fungsinya.
Berikut adalah penjelasan mengenai setiap direktori default pada Laravel dan bagaimana mereka
berhubungan dengan konsep MVC:
18
➢ /Controllers: Berisi semua controller aplikasi.
Perintah dibawah merupakan perintah untuk membuat file controller baru
Setelah perintah membuat controller baru sukses maka otomatis akan dibuatkan format
controller.
➢ /models
Selanjutnya sub folder yang ada pada folder utama app yaitu folder Models. Pada folder
ini berisi semua model Eloquent.
Di bawah ini merupakan perintah untuk membuat file model baru menggunakan perintah
seperti d iatas.
19
Setelah perintah membuat Model baru sukses maka otomatis akan dibuatkan format Model
seperti di atas.
➢ /bootstrap
Bootstrap berisi file yang digunakan untuk bootstrap framework, seperti file app.php yang
mem-bootstrapping framework.
20
➢ /database
Berisi migrasi, seeder, dan factory untuk pengujian.
Setelah perintah membuat migration baru sukses maka otomatis akan dibuatkan format
migration seperti diatas.
➢ /public
Direktori yang dapat diakses public
21
➢ File index.php utama yang menjadi entry point aplikasi, serta file aset publik seperti
gambar, JavaScript, dan CSS.
➢ /resource
/resource berisi resource view, file bahasa, dan aset yang tidak di-compile seperti SASS
atau JavaScript. Pada folder view berisi file.blade.php yang dimana untuk pembuatan
tampilan program.
22
Setelah perintah membuat file blade baru sukses maka otomatis akan dibuatkan format
.blade.php seperti di atas.
➢ /routes
Berisi definisi rute aplikasi yang menghubungkan URL permintaan dengan controller yang
tepat.
File web.php merupakan file yang digunakan untuk mendefinisikan rute-rute yang akan
diakses melalui web browser. Di dalam file ini, Anda dapat mendefinisikan rute-rute untuk
aplikasi Anda.
➢ /storage
Direktori ini berisi file yang di-generate oleh framework, termasuk log, cache, dan file
yang diunggah pengguna.
23
➢ /app : Berisi file aplikasi.
➢ /framework : Berisi file framework seperti cache dan sesi.
➢ /logs : Berisi log aplikasi.
➢ /tests
Direktori ini berisikan test unit dan test fitur untuk aplikasi. Laravel menggunakan
PHPUnit sebagai framework testing default.
24
➢ / root directory
Berikut merupakan beberapa file yang ada pada root directory
Dengan struktur ini memungkinkan pengguna menggunakan metode MVC (Model, View,
Controller), dimana Laravel memisahkan logika aplikasi (model), logika tampilan (view), dan
kontrol logika aplikasi (controller) secara jelas. Ini membuat pengembangan dan pemeliharaan
aplikasi menjadi lebih mudah dan terorganisir.
25
MODUL III
ELOQUENT ORM
1. Model: Eloquent dapat merepresentasikan tabel dalam basis data. Pengembang dapat
menentukan relasi antara model, seperti one-to-one, one-to-many, dan many-to-many.
2. Query Builder: Untuk membangun query basis data dengan sintaks yang ekspresif dan
mudah dipahami. Ini memungkinkan pengembang untuk menulis query kompleks tanpa
perlu menulis SQL mentah.
3. Eloquent Collections: Hasil query dikembalikkan dalam bentuk koleksi yang merupakan
objek terstruktur yang dapat diiterasi dan dimanipulasi dengan mudah.
4. Soft Deletes: memungkinkan penghapusan data dengan menandai data yang di hapus
daripada menghapusnya secara permanen dari basis data.
26
B. MENERAPKAN ELOQUENT MODEL
Pastikan sudah menginstal Laravel dan mengkonfigurasi proyek. Jika belum melakukan
penginstalan , dapat mengikuti panduan instalasi resmi laravel di :
(https://laravel.com/docs).
Gambar diatas dapat dilihat struktur folder dan file pada Laravel, akan tetapi fokus pada
file .env, folder Migrations yang adad didalam folder Database/Migrations dan folder
Model yang ada didalam folder App/Model.
1. Konfigurasi file .env
Untuk pertama kalinya sebelum Laravel dapat terkoneksi ke database mysql yang
ada di xampp, maka perlu melakukan deklarasi didalam file .env. Didalam file .env
ini ada beberapa yang harus dirubah seperti :
a. Menuliskan nama aplikasi databasenya misalkan mysql, postgresql, sqlite,
mongodb, dan lain-lain.
27
b. Melakukan Uncomment pada baris yang masih ter comment secara default
oleh Laravel.
Pada gambar di atas fokuslah pada area yang tersorot warna merah, merupakan contoh
bagian yang di comment dengan yang tidak comment, untuk bagian yang di comment
itu tidak akan dieksekusi oleh Laravel. Untuk bagian yang tidak dicomment
merupakan sebuah deklarasi dari nama database yang akan digunakan. Lihatlah
penjelasan Pada tabel dibawah ini.
28
2. Membuat tabel dengan nama tabel “guru” melalui artisan
Untuk membuat tabel disini bisa melalui Command Prompt (CMD) atau
bisa melalui VSCODE, kemudian bisa mengetikkan perintah pada gambar dibawah
ini :
Pada tahap ini, selanjutnya yaitu melakukan generate database serta tabelnya melalui
Laravel, sebelum melakukan generate, terlebih dahulu melakukan deklarasi field-field apa
saja yang ada di tabel guru, pada modul ini field yang akan digunakan sebagai contoh
yaitu filed id, nama, mata_pelajaran. Bukalah file 2024_0511_012817_guru.php, Listing
kode programnya bisa dilihat pada gambar dibawah ini :
29
Pada gambar diatas, fokuslah pada Listing kode yang ditandai warna merah, untuk syntax
Schema::create merupakan syntax baku atau syntax yang sudah menjadi aturan dari
Laravel itu sendiri tinggal mengikuti saja perintahnya. Untuk lebih jelasnya silahkan baca
dokumentasi resmi dari Laravel pada bagian Database Migrations
https://laravel.com/docs/11.x/migrations. Setelah medeklarasikan field-field tersebut,
selanjutnya melakukan generate databse, tabel serta field-fielnya dengan perintah seperti
pada gambar dibawah ini :
Untuk membuktikan apakah generate database, tabel, dan field berhasil, cobalah kembali
membuka phpMyAdmin seperti link yang sudah dijelaskan, maka akan nampak sebuah
database dengan nama db_laravel, dan tabel guru, adapun tabel-tabel lain yang ada di
database db_laravel merupakan tabel default yang memang harus ada dan di migrate
pertama kali. Apabila tabel-tabel tersebut ingin di hapus ataupun ingin melakukan
custimisasi setelah melakukan migrate menjadi opsi masing-masing, silahkan perhatikan
gambar dibawah ini :
30
Pada gambar diatas dapat dilihat pada tanda warna kuning dan merah, cobalah fokus ke
warna merah, kemudian klik icon + untuk melihat struktur filed yang sudah didefiniskan
sebelumnya pada Laravel, coba perhatikan gambar dibawah ini :
Sampai pada tahap ini artinya sudah berhasil mnelakukan migrations pada database,
selanjutnya beralih untuk Langkah berikutnya yaitu membuat Model.
Pada gambar diatas merupakan perintah untuk membuat sebuah file Model yang dimana
nama Model nya adalah GuruModel, setelah menekan tombol Enter, maka cobalah
perhatikan perubahan pada folder App/Models, akan tercipat sebuah file dengan nama
GuruModel, hasilnya dapat dilihat pada gambar dibawah ini :
31
Pada gambar diatas menunjukan pembuatan file GuruModel sudah berhasil, selanjutnya
bukalah file GuruModel yang selanjutnya mendefiniskan sebuah variable dengan nama
tabel, untuk penamaan variable didahulukan dengan tanda dolar $tabel , contoh dapat
dilihat pada gambar dibawah ini :
Pada gambar diatas dapat dilihat baris-barsi kode program, baris kode diatas secara
automatis dibuat oleh Laravel kecuali pada baris kode protected $table = ‘guru’, baris
kode tersebut ditulis secara manual yang artinya terlebih dahulu mendeklarasikan nama
tabel yang sudah di migrate, kemudian untuk dapat berintraksi kedalam database mysql,
sehingga untuk dapat menyimpan, melihat, mengubah dan menghapus record akan
dijelaskan pada bagian terpisah.
32
MODUL IV
BACK END (MEMBUAT API)
B. Definisi API
API (Application Programming Interface) adalah sekumpulan aturan, protokol, dan alat
yang memungkinkan berbagai aplikasi perangkat lunak untuk berinteraksi satu sama lain.
API menyediakan cara bagi pengembang perangkat lunak untuk menggunakan
fungsionalitas atau layanan yang disediakan oleh aplikasi lain atau oleh sistem yang lebih
besar.
33
Jenis – Jenis API :
API dapat berbentuk berbagai jenis, termasuk:
❖ RESTful API: Menggunakan HTTP request (GET, POST, PUT, DELETE) untuk
mengakses dan memanipulasi data melalui URI (Uniform Resource Identifier).
❖ GraphQL: Sebuah query language dan runtime untuk mengambil data dari server.
Menggunakan struktur tipe dan field untuk memungkinkan pengguna untuk
menentukan struktur data yang mereka inginkan.
❖ SOAP (Simple Object Access Protocol): Sebuah protokol yang mendefinisikan
cara pemanggilan prosedur atau metode dalam jaringan komputer, khususnya
dalam web services.
❖ API Client Libraries: Kumpulan kode yang disediakan oleh pembuat API untuk
mempermudah penggunaan API mereka dalam berbagai bahasa pemrograman.
34
2. Buka file routes/api.php dan tambahkan rute-rute yang telah kamu definisikan di
dalam file Api.php. Contoh:
Pada file Api. Php, kita buat route baru dengan nama api_guru
35
Melakukan pengecekan Restful Api kita, apakah sudah berjalan dengan baik dan
manampilkan data, jika sudah akan muncul tampilan seperti gambar di bawah ini.
Pengecekan di menggunaka aplikasi Postman
36
MODUL V
INSTALASI DAN KONFIGURASI REACT JS
ReactJS adalah library JavaScript popular yang dibuat oleh Facebook yang digunakan
dalam proses pengembangan aplikasi mobile dan web. untuk memfasilitasi pembuatan daripada
komponen antarmuka yang interaktif, stateful, serta mudah untuk digunakan ulang. ReactJS
sangatlah cocok digunakan untuk rendering antarmuka yang kompleks dengan performa tinggi
(Kumar & Singh, 2016).
Dalam pengembangan, ReactJS memiliki berbagai macam kemampuan seperti dapat
digunakan untuk membuat animasi suatu objek dengan efek transisi, menjalankan permainan di
web browser yang sepenuhnya diprogram dengan menggunakan React. Selain itu, ReactJS juga
mampu melakukan validasi form secara real-time saat pengguna mengisikan data pada form
tersebut.
React bergantung pada Node.js dan npm (Node Package Manager). Untuk menjalankan hal
tersebut perlu dilakukan proses untuk menginstal aplikasi Node.js seperti pada langkah-langkah
dibawah ini:
Langkah 1: Instal Node.js dan npm
1. Kunjungi situs resmi Node.js di https://nodejs.org/
2. Unduh dan instal versi LTS (Long Term Support).
37
3. Selesai melakukan download aplikasi Node.js, dilanjutkan menginstal aplikasi tersebut
hingga proses selesai
4. Setelah instalasi selesai, verifikasi instalasi dengan menjalankan perintah node -v dan npm
-v di terminal atau command prompt:
3. Buka direktori tempat anda akan membuat project react menggunakan cmd
4. kemudian ketikkan perintah npx create-react-app (nama folder project)
38
5. Jalankan Visual Studio Code, kemudian open folder yang sudah di install React.
6. Untuk melihat hasil tampilan, buka terminal pada visual studio code dan ketikkan npm start
sehingga akan muncul tampilan pada browser
39
MODUL VI
PENGENALAN JSX
JSX adalah singkatan dari JavaScript XML merupakan sintaks ekstensi untuk JavaScript
yang memungkinkan penulisan kode HTML di dalam React. Penulisan menggunakan JSX
memudahkan dalam menulis elemen HTML dan menempatkannya di DOM tanpa harus
menggunakan fungsi createElement() atau appendChild() sehingga mengubah tag HTML menjadi
react elemen. Penggunaan JSX pada dasarnya bukan suatu keharusan atau kewajiban namun JSX
mempermudah dalam penulisan coding pada React
Penggunaan tanpa JSX, pengguna dapat membuat elemen React dengan method seperti
berikut :
Dalam method diatas memiliki tiga parameter utama yang wajib untuk diisi yaitu:
1. Type elemen dalam bentuk string.
2. Properti element dalam bentuk object.
3. Children dalam bentuk string dan juga object react element.
40
Untuk lebih jelasnya, berikut adalah contoh penulisan sintax React tanpa menggunakan
JSX
Adapun untuk penulisan penggunaan JSX yang benar adalah sebagai berikut
Dari gambar diatas terlihat bahwa penulisan sintax atau script menggunakan JSX pada
React lebih mempermudah atau menyingkat penulisan sintax. Disisi lain penggunaan JSX
memiliki manfaat lain yaitu dapat dipanggil berulang-ulang seperti berikut :
41
MODUL VII
COMPONENT, PROPS DAN STATE
1. Component (Komponen)
Komponen adalah blok bangunan dasar dalam React yang memungkinkan
pemisahan UI menjadi bagian-bagian yang terisolasi. Komponen sendiri merupakan bagian
terpenting dalam React karena React tersusun dari komponen-komponen itu sendiri.
Pembuatan komponen pada ReactJS dapat dilakukan dengan du acara yaitu
menggunakan fungsi dan yang kedua menggunakan class. Untuk komponen yang dibuat
dengan fungsi disebut juga dengan function components dan untuk komponen yang dibuat
menggunakan class disebut dengan class components.
Penulisan komponen yang dibuat menggunakan fungsi adalah sebagai berikut :
Berdasarkan gambar diatas ada beberapa hal yang perlu diperhatikan karena didalam
komponen terdapat beberapa hal yaitu
a. Terdapat perintah function
b. Terdapat nama komponen yang harus dimulai dengan huruf capital
c. Terdapat elemen JSX
d. Serta cara penggunaan komponen ketika dipanggil.
Adapun penulisan komponen berdasarkan class perlu melakukan extends dari class dengan
cara sebagai berikut
42
Berdasarkan gambar diatas terdapat beberapa hal yang perlu diperhatikan dalam penulisan
komponen yaitu :
a. Terdapat perintah class
b. Memiliki nama komponen dan dimulai dengan huruf capital
c. Terdapat class component dari ReactJs
d. Terdapat elemen JSX
e. Cara penggunaan komponen
Kedua komponen diatas pada dasarnya sama namun yang membedakan adalah cara
penulisannya. Untuk komponen pertama dibuat menggunakan fungsi dan komponen kedua
menggunakan class.
Di dalam komponen terdapat sebuah method atau fungsi khusus yang terdapat pada class
yang akan dieksekusi saat object dibuat atau pada saat komponen digunakan yaitu
constructor. Constructor biasanya digunakan untuk melakukan inisialisasi komponen dan
hanya pada komponen yang dibuat dengan class. Adapun penulisan constructor dan cara
membuatnya didalam komponen adalah sebagai berikut :
State dan props adalah objek khusus yang menyimpan data untuk komponen. Kedua
objek ini memiliki cara kerja yang berbeda. State adalah objek yang digunakan untuk
43
menyimpan data di dalam komponen, sedangkan props adalah objek yang digunakan untuk
menyimpan data yang diterima dari luar komponen. Data yang disimpan di dalam state
dapat di ubah-ubah, sedangkan data yang disimpan di dalam props tidak bisa diubah karena
sifatnya read-only. Adapun konsep dari Props dan State adalah sebagai berikut
Nilai pada props tidak bisa diubah karena sifat dari props yaitu hanya dapat dibaca saja
atau read-only.
Sedangkan untuk penulisan state yang mana nilainya dapat berubah-ubah adalah sebagai
berikut :
44
Pengguna dapat mengambil nilai dari state dan elemen tersebut akan di render ulang
apabila nilai state berubah dengan cara penulisan seperti berikut :
45
MODUL VIII
EVENT HANDLING
Setelah sebelumnya telah dipelajari terkait tentang props dan state, pada modul ini akan dibahas
terkait event handling pada React Js. Dalam setiap aplikasi web, pengguna akan berinteraksi
dengan elemen-elemen yang berada didalam web seperti button (tombol) atau formulir dan perlu
ada proses untuk menangani interaksi tersebut. Event handling merupakan salah satu cara untuk
menangani interaksi pengguna pada elemen-elemen tersebut.
Event handling adalah proses menangani action atau interaction yang dilakukan user pada
element-element di dalam aplikasi web. Dalam ReactJS, event handling bisa dilakukan dengan
menambahkan event listener pada element tersebut.
Untuk menambahkan event handler pada component, kita perlu membuat function yang akan
menangani interaksi user pada element seperti tombol, formulir, dan lain-lain. Kemudian, kita
dapat menambahkan event listener pada elemen tersebut dan menghubungkannya dengan
function event handler yang sudah dibuat.
Sebagai contoh, kita akan membuat sebuah tombol yang akan menampilkan pesan saat diklik.
Pertama, kita buat sebuah function bernama mulai() yang akan menampilkan detik di saat tombol
diklik:
Kemudian, kita tambahkan event listener pada element tombol dan hubungkan dengan function
mulai() yang sudah dibuat:
46
Dalam contoh ini, dapat menggunakan prop onClick untuk menambahkan event listener pada
tombol. Prop ini akan menangkap event click pada tombol dan menjalankan function mulai().
Berhubung penulisan sintaks yang digunakan menggunakan class component maka penanganan
event dapat dilakukan menggunakan method yang sudah disediakan oleh react yaitu
this.setState().
47
MODUL IX
REACT-ROUTER
React Router adalah sebuah library yang digunakan dalam aplikasi React untuk membuat
routing dan navigasi antar halaman. Dengan React Router, sebuah aplikasi web akan dapat
memiliki banyak halaman dengan URL yang berbeda-beda. React Router sangat membantu dalam
mengatur halaman-halaman tersebut dan memastikan bahwa setiap halaman ditampilkan dengan
tepat.
Tanpa React Router, aplikasi React yang memiliki banyak halaman akan menjadi sangat sulit
untuk dikelola. Pengembang harus membuat komponen untuk setiap halaman dan memastikan
bahwa setiap komponen ditampilkan pada URL yang tepat. Dengan menggunakan React Router,
memudahkan dalam memisahkan logika routing dari logika komponen sehingga dapat fokus pada
pengembangan aplikasi itu sendiri.
Sebelum menggunakan React Router perlu dilakukan penginstalan React Router dengan
menggunakan npm (Node Package Manager). Berikut ini adalah langkah-langkahnya:
Setelah proses instalasi react router selesai dilakukan, maka dalam penulisan sintaks tidak akan
bisa berjalan karena perlu dilakukan import library dari react router dengan menulis sintaks
berikut pada project :
48
Sebelum lanjut membuat route, perlu dibuat beberapa tiga file js yang akan diroute yaitu
DataGuru.js dan About.js dan setiap halaman akan menampilkan beberapa teks sederhana seperti
berikut :
Pada sintaks diatas dapat disimpan dengan nama About.js sebab halaman tersebut yang akan di
route nantinya. Hal yang sama juga dilakukan pada file dengan nama DataGuru.js seperti dibawah
ini
49
Selanjutnya yaitu mengintegrasikan React Router ke dalam proyek yang telah dikerjakan. Dalam
komponen App.js akan ditentukan rute-rute yang akan digunakan dalam aplikasi yang dibuat
dengan sintaks dibawah ini :
Pada kode diatas akan menampilkan beberapa komponen dimana untuk URL dari element Home
adalah “/” atau disebut juga dengan nama root. Untuk URL dari element DataGuru adalah
/dataguru dan adapun hasilnya adalah sebagai berikut :
50
Dari gambar diatas terlihat bahwa ketika pengguna memilih data guru maka akan pinda ke
halaman data guru, begitu pula ketika memilih about ataupun home maka akan diarahkan sesuai
tujuan yang dipilih.
51
MODUL IX
PARSING DATA MENGGUNAKAN API
52
Fetch adalah sebuah fungsi baru pada JavaScript yang digunakan untuk mengambil data dari
server dengan mengirimkan permintaan HTTP. Fetch mengembalikan sebuah respon, sehingga
kita dapat menangani respon data yang dikembalikan oleh server dengan menggunakan then() dan
catch().
Berikut adalah contoh penggunaan fetch() untuk mengambil data dari sebuah API:
Sekarang data sudah tersedia dalam state komponen, Anda dapat menggunakan data tersebut
dalam rendering komponen React Anda. Dalam contoh ini, data di-mapping untuk menampilkan
elemen-elemen JSX untuk setiap item dalam array data
53
Adapun tampilan halaman dari penggunaan API yang telah dipraktekkan diatas adalah sebagai
berikut
Apabila tabel dari data yang berada di backend bisa ditampilkan maka API berfungsi dengan baik
dan front end nya berfungsi sesuai dengan yang diharapkan.
54
PENULIS
55
Yudi Febriandy, S.Kom adalah Guru SMKN 2 Mataram Provinsi
Nusa Tenggara Barat. Merupakan Alumnus Sekolah Tinggi
Manajemen Informatika dan Komputer (STMIK) Bumigora
Mataram Tahun 2015. Bergabung dalam kegiatan Upskilling dan
Reskilling Angkatan IV Konsentrasi Rekayasa Perangkat Lunak
dengan teman Teknik Design Laman ( Web Tehcnologies ) yang
diselenggarakan oleh BBPPMPV BOE Malang pada tanggal 02 -
31 Mei 2024. Dengan harapan menambah semangat baru bagi
guru-guru Teknik Komputer & Iinformatika se-Indonesia serta
memantapkan selogan " Coding Harga Mati"
56
Dere Jalu Putro Nuswantoro, S.ST adalah guru dari SMK
Negeri 3 Teknologi dan Rekayasa Merauke, Papua Selatan.
Merupakan alumnus Politeknik Elektronika Negeri Surabaya,
Bidang Studio Teknik Informatika Komputer, Tahun 2009.
Bergabung dalam kegiatan Upskilling dan Reskilling Angkatan IV
Konsentrasi Rekayasa Perangkat Lunak dengan teman Teknik
Design Laman ( Web Tehcnologies ) yang diselenggarakan oleh
BBPPMPV BOE Malang pada tanggal 02 - 31 Mei 2024.
57
Sanry Merciana Nisikoen, S.Kom adalah Guru dari SMKN 6
Kupang, Prov Nusa Tenggara Timur. Merupakan alumnus dari
STIKOM UYELINDO Kupang Prodi Sistem Informasi tahun 2010.
Bergabung dalam kegiatan Upskilling dan Reskilling Angkatan IV
Konsentrasi Rekayasa Perangkat Lunak dengan teman Teknik
Design Laman ( Web Tehcnologies ) yang diselenggarakan oleh
BBPPMPV BOE Malang pada tanggal 02 - 31 Mei 2024.
58