Tutorial Membuat Aplikasi Web Sederhana dengan Bahasa Pemrograman Go Part 1

Kornelius Sipayung
4 min readMay 30, 2020

--

Photo by Sean Lim on Unsplash

Halo semuanya …

Belajar bahasa pemrograman yang baru sangat lah menyenangkan bukan ? kali ini kita akan belajar salah satu bahasa pemrograman yang lagi hype belakangan ini nih. Ya tentu saja bahasa pemrograman Go. Tapi di seri tutorial kali ini ada yang beda hahaha, karena kita akan belajar untuk membuat sebuah aplikasi web sederhana dengan menggunakan bahasa pemrograman GO , menarik kan ???

Bahasa pemrograman Go menyediakan package net/http yang berisi berbagai macam fitur yang bisa kita gunakan untuk keperluan pembuatan aplikasi berbasis web seperti web server, routing , templating dan lainnya. Nah untuk lebih jelasnya teman-teman bisa lihat di link ini terkati package net/http didalam bahasa pemrograman Go.

Banyak yang bilang kalau bahasa pemrograman Go ini spesial loh , tapi tau gak kenapa ?? nih ya aku bakalan kasi tau salah satu hal spesial yang ada didalam bahasa pemrograman Go dan yang pastinya berhubungan dengan materi kita kali ini yaitu Go memiliki web server sendiri

Tidak seperti bahasa pemrograman lainnya dimana server nya terpisah dan perlu untuk kita install (seperti PHP yang memerlukan Apache, .NET yang memerlukan IIS)

Gimana ? Udah siap belum ? hahahaha, jangan lupa siapin code editor nya ya….

Let’s Go

Inisialiasi Project

Langkah pertama yang harus kita lakukan adalah membuat direktori bernama “web-sederhana” dimana direktori ini bebas mau ditempatkan dimana. Buka CMD, masuk ke direktori tersebut dan jalankan command dibawah ini untuk melakukan inisialisasi project

mkdir web-sederhana
cd web-sederhana
go mod init web-sederhana

Setelah langkah diatas selesai silahkan teman-teman load projectnya ke code editor kesayangan nya teman-teman. Disini saya menggunakan visual studio code.

visual studio code

Buat file main.go

Setelah selesai melakukan inisialisai project dan meng-load nya ke code editor langkah selanjutnya adalah membuat file main.go

visual studio code

Setelah itu silahkan teman-teman ketikan kode dibawah ini didalam file main.go yang sudah kita buat tadi , sebisa mungkin jangan di copy paste ya, biar terbiasa dan familiar dengan syntax dan cara penulisan didalam bahasa pemrograman Go.

package main

import "fmt"
import "net/http"

func aboutme(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "Nama saya adalah kornelius dan saat ini saya sedang berkuliah di Institut Teknologi DEL!")
}

func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "Selamat datang dihalaman dashboard !")
})

http.HandleFunc("/aboutme", aboutme)

fmt.Println("starting web server at http://localhost:8080/")
http.ListenAndServe(":8080", nil)
}

Kita akan bahas satu per satu kode yang ada diatas . Mari kita mulai dengan fokus ke fungsi yang ada dibawah ini

http.HandleFunc()

http.HandleFunc() kita gunakan untuk melakukan routing aplikasi web kita, nah routing itu apa sih ?? maksud dari routing adalah penentuan aksi ketika url tertentu kita akses. Kita dapat melihat dalam program sederhana diatas terdapat 2 buah route yang kita daftarkan, yaitu /dan /aboutme. Aksi yang ada pada route / akan menampilkan textSelamat datang dihalaman dashboard !" pada halaman website kita sedangkan route/aboutme akan menampilak text "Nama saya adalah kornelius dan saat ini saya sedang berkuliah di Institut Teknologi DEL!" . Fungsi http.HandleFunc() memiliki 2 buah parameter yang harus kita isi yaitu ("/", func(w http.ResponseWriter, r *http.Request) . Parameter pertama "/" merupakan route yang kita inginkan sedangkan pada parameter kedua merupakan sebuah callback dimana dapat kita lihat callback tersebut bertipe fungsi func(w http.ResponseWriter, r *http.Request).

berbeda dengan Pada saat kita mendaftarkan route /aboutme callback nya adalah fungsi aboutme(), hal-hal seperti ini tetap diperbolehkan kok teman-teman, ASAL KAN TIPE DARI FUNGSI TERSEBUT SESUAI

Selanjutnya mari kita perhatikan fungsi http.ListenAndServe() , fungsi tersebut kita gunakan untuk menghidupkan server sekaligus menjalankan aplikasi kita dengan server terserbut, pada program sederhana diatas kita bisa lihat server dijalankan pada port 8080

Ohh iya hampir kelupaan nih, disini kita menggunakan fungsi fmt.Fprintln() dan bukan lagi fmt.Println() jadi kita harus menyertakan parameter pertama berupa writer w .

Gimana teman-teman ? Udah ngerti kan ? kalau semua nya udah beres langkah terakhir mari kita compile program kita.

Silahkan buka terminal/CMD dan jalan kan command dibawah ini

go run main.go

Nah kalau muncul dialog box seperti gambar dibawah ini, silahkan klik “Allow access”

Selanjutnya buka browser dan ketikan

terminal
http://localhost:8080/

Yeayyyy …

Google Chrome

Bisa dilihat halaman browser menampilkan text “Selamat datang dihalaman dashboard” itu karena kita mengakses route/

Selanjutnya mari kita coba dengan mengetikan http://localhost:8080/aboutme di url

Google Chrome

Halaman browser akan menampilkan text "Nama saya adalah kornelius dan saat ini saya sedang berkuliah di Institut Teknologi DEL!" karena kita mengakses route /aboutme .

Hal penting yang perlu teman-teman ingat adalah

Setiap ada perubahan pada file .go, go run harus dipanggil lagi.

Di tutorial berikutnya kita akan membahas tentang bagaimana cara penggunaan template engine dalam mendesain tampilan view pada aplikasi web kita, Terimakasih

Kalau teman-teman memiliki pertanyaan , ide bahkan kritik dan saran silahkan email ke sipayung09091999@gmail.com

--

--