Jumat, 24 Oktober 2014

Pembangunan Web Menggunakan GO Programming [2]

== PART 2 ==


Saya akan melanjutkan postingan pembangunan web menggunakan pemrograman GO sebelumnya.
Kali ini saya akan membahas tentang cara menampilkan data yang diambil dari database MySQL

*tetep ya pada postingan ini framework saya samarkan*

1. Menampilkan nama provinsi yang ada pada table province

Berikut beberapa potongan source code nya:

- Controller :
*buka file mhs.go*

Tambahkan function berikut :

func Lihat (w http.ResponseWriter, r *http.Request) {
t,_ := mr.MRenderTemplate("login/lihat.html")
r.ParseForm();
p := model.GetProvince()
data := struct { Data []model.Province}{Data:p}
mr.MExecute(w,t,data)
}

- Model :
*buka file M_province.go*

Buat source code berikut :

package model
import (
_ "github.com/go-sql-driver/mysql"
"framework/sys/config"
)
     type Province struct { 
ProvinceId int
ProvinceName string}
func GetProvince() []Province { 
db := config.MuntoiDB
rows, _ := db.Query("SELECT  province.province_id as             ProvinceId, province.province_name as ProvinceName FROM             province")
        mis := []Province{} 
mi := Province{} 
for rows.Next() {
rows.Scan(&mi.ProvinceId, &mi.ProvinceName)
mis = append(mis, mi) 
}
return mis
}

- Routing :
*buka file Routing.go*

Tambahkan source code berikut :

jalan.MuntoiReg("/lihat", mhs.Lihat)

- Buat sebuah file html dengan nama file lihat.html dan simpan pada folder C:\xampp\htdocs\gomuntoi\template\login

<html>
<head>
<title>List Province</title>
</head>
<body>
{{with .Data}}{{range .}}
<input type = "button" value = "{{.ProvinceName}}" />
{{end}}{{end}}
</body>
</html>
- Akses pada browser : localhost:8080/lihat
Maka akan muncul seperti gambar dibawah ini :



2. Menampilkan provinsi berdasarkan id provinsi yang telah dipilih

- Controller :
*buka file mhs.go*

Tambahkan function berikut :

func LihatById (w http.ResponseWriter, r *http.Request) {
t, _ := mr.MRenderTemplate("login/lihat.html")
idprov := r.FormValue("id")
p := model.GetProvinceById(idprov)
data := struct { Data []model.Province}{Data:p}
mr.MExecute(w,t,data)
}

- Model :
*buka file M_province.go*

Tambahkan source code berikut :

func GetProvinceById(id string) []Province{
db := config.MuntoiDB
rows, _ := db.Query("SELECT  province.province_id as                   ProvinceId, province.province_name as ProvinceName FROM                 province where province.province_id="+id)
mis := []Province{}
mi := Province{}
for rows.Next() {
rows.Scan(&mi.ProvinceId, &mi.ProvinceName)
mis = append(mis, mi)
}
return mis
}

- Routing :
*buka file Routing.go*

Tambahkan source code berikut :

jalan.MuntoiReg("/lihatid", mhs.LihatById)
- Akses pada browser : localhost:8080/lihatid?id=7
*pemilihan id kondisional, sesuai yang ingin ditampilkan*
Maka akan muncul seperti gambar dibawah ini :




  

Pembangunan Web Menggunakan GO Programming [1]

== Part 1 ==

Hai
Saya akan melanjutkan postingan sebelumnya. Kali ini saya akan berbagi info mengenai pembangunan web menggunakan GO Programming.
Part 1? maksudnya gini loh, untuk membangun sebuah web itu kan harus melalui beberapa tahapan. Nah part 1 ini adalah langkah awal yang harus disiapkan untuk memulai membangun sebuah web. Part 1 ini saya akan berbagi beberapa hal yang harus di install atau dikonfigurasi.
oh ya, FYI dalam membangun sebuah web menggunakan GO Programming saya menggunakan framework. ups, tapi maaf ni yak untuk framework nya kali ini belum bisa saya share karena ada beberapa alasan. hmmmm mungkin dilain waktu saya bisa berbagi info tentang framework tersebut. Nantikan sajaaaaa haha
Untuk kali ini sebut saja framework F.

Tahapan instalasi :

1. Pastikan laptop sudah ter-install XAMPP dan MySQL. Kebetulan saya menggunakan database MySQL. Apabila belum ada, bisa download dari https://www.apachefriends.org 

2. Install GIT. apa itu GIT? bisa cari tau dari link ini ya http://git-scm.com/downloads trus langsung download aja

3. Buka command prompt a.k.a CMD, lalu ketik git. Hal ini untuk mengetahui apakah instalasi git telah berhasil

instalasi berhasil
Apabila instalasi git tidak berhasil, maka
klik kanan my computer -> properties -> Advanced system settings -> Environment variables -> edit pada system variables, edit variable Path, tambahkan C:\GOAPP\bin;C:\Program Files\Git\bin
*path kondisikan sesuai nama folder

4. Install go sql driver dengan cara ketik go get github.com/go-sql-driver/mysql pada CMD.

5. Install Gorilla.

Ketikkan pada CMD :

  • go get github.com/gorilla/sessions 
  • go get github.com/gorilla/context 
  • go get github.com/gorilla/securecookie 
  • go get github.com/gorilla/mux

Membuat halaman web sederhana

1. Buat project baru pada IntelliJ IDEA. copy folder framework F ke folder src pada project yang baru dibuat di IntelliJ IDEA dan ke folder tempat directory yang diinginkan. Saya menjadikan folder htdocs sebagai directory.

2. Buat go file baru pada folder controller, beri nama file mhs.go

3. Source code mhs.go adalah sebagai berikut :

package mhs
import(
"net/http"
"framework/sys/mr"
)

func View (w http.ResponseWriter, r *http.Request) {
t, _ := mr.MRenderTemplate("login/tes.html");
mr.MExecute(w,t,r)
}
Lalu tambahkan source code berikut pada file Routing.go :
jalan.MuntoiReg("/coba", mhs.View)

Lakukan konfigurasi database pada file DBConfig.go. Isikan variabel sesuai nama database yang digunakan
var DB_Database string = "materikulasi"

4. Pada folder framework, buka folder template lalu tambahkan folder login dan buat sebuah file html dengan nama tes.html
<HTML>
HALLO ARES !
</HTML>

5. Run project pada IntelliJ IDEA tersebut, lalu buka browser dan ketik localhost:8080/coba pada address bar. Maka tampilan pada browser adalah sebagai berikut :

Rabu, 22 Oktober 2014

Aplikasi Sederhana Menggunakan Golang


Hollaaaa !!
Masih tentang Google Programming Language a.k.a golang.
oh ya sebelumnya akan lebih baik jika mengetahui terlebih dahulu beberapa standard library yang terdapat pada golang. Bisa di check disini nih http://golang.org/pkg/
Kali ini saya akan share beberapa contoh source code untuk membuat aplikasi sederhana menggunakan golang.

Untuk membuat aplikasi yang digunakan untuk melakukan perhitungan yang menggunakan beberapa rumus, seperti rumus matematika, fisika, dan lain sebagainya, cara nya cukup simple.Kita hanya butuh membuat beberapa variabel untuk menampung bilangan yang akan diinputkan dan jangan lupa untuk deklarasi tipe data dari variabel tersebut. akan tetapi kita juga dapat langsung menentukan value dari variabel tersebut.
contohnya gini nih :
  • var x int
  • var ( x, y, z int)
  • x := 5 //ini variabel yang langsung ditentukan value nya
selain memakai var kita juga bisa memakai constant a.k.a const. Bedanya var sama const itu apa sih? dari nama nya aja udah bisa ditebak, kalo makai const itu value nya tidak bisa diganti. Maksudnya?
Gini contohnya :
conts x string = "Hai Ares"
x = "Halo Ares" //ini akan error karena variabel x sudah di set conts dengan value "Hai Ares"

selain itu kita juga bisa menggunakan variabel untuk menampung rumus. 
oke langsung aja ya ini contohnya

package main

import "fmt"
func main(){
var(a, t int)
fmt.Print("alas segitiga = ")
fmt.Scanf("%d", &a)
fmt.Print("tinggi segitiga = ")
fmt.Scanf("%d", &t)
segitiga := (a*t)/2
fmt.Println("Luas Segitiga = ", segitiga)
 }
Maka output nya :



contoh berikut ini adalah source code menggunakan pengkondisian. kira-kira kalo dibikin soal, bunyi soalnya begini nih 
"Buatlah aplikasi untuk konversi untuk semua satuan suhu!"


package main
import "fmt"
func main(){
var (x string)
fmt.Println("Satuan Suhu : ")
fmt.Println("Reamor")
fmt.Println("Celcius")
fmt.Println("Kelvin")
fmt.Println("Fahrenheit")
fmt.Println("Pilih Satuan Suhu")
fmt.Print("(Masukkan salah satu satuan suhu yang terdapat pada list) :")
fmt.Scanf("%s", &x)

if x == "Reamor"{
var y int
fmt.Print("Derajat = ")
fmt.Scanf("%d", &y)
fmt.Println("======================================")
fmt.Println("Celcius = ", (5*y)/4)
fmt.Println("Kelvin = ", (5*y)/4)
fmt.Println("Fahrenheit = ", ((9*y)/4)+32)
} else if x == "Celcius" || x == "Kelvin"{
var y int
fmt.Print("Derajat = ")
fmt.Scanf("%d", &y)
fmt.Println("======================================")
fmt.Println("Celcius = ", (5*y)/5)
fmt.Println("Kelvin = ", (5*y)/5)
fmt.Println("Reamor = ", (4*y)/5)
fmt.Println("Fahrenheit = ", ((9*y)/5)+32)
} else if x == "Fahrenheit"{
var y int
fmt.Print("Derajat = ")
fmt.Scanf("%d", &y)
fmt.Println("======================================")
fmt.Println("Celcius = ", ((5*y)/9)-32)
fmt.Println("Kelvin = ", ((5*y)/9)-32)
fmt.Println("Reamor = ", ((4*y)/9)-32)
}
}

Maka output dari program diatas adalah sebagai berikut :





Sekian dulu yaaaa.. Nantikan info lain tentang golang.
FYI eksekusi source code diatas saya menggunakan IntelliJ IDEA 13.1.3

Selasa, 21 Oktober 2014

Google Programming Language


Google Programming Language? Apasih? Mungkin beberapa diantara kita masih asing mendengarnya, termasuk saya haha..

Oke mari kita sharing beberapa hal tentang Google Programming Language a.k.a golang.

Golang adalah bahasa pemrograman yang mengkombinasikan antara performa dan keamanan yang merupakan keuntungan dalam bahasa compiler seperti C++ dan kecepatan dari bahasa yang dinamis seperti Python. Golang diproyeksikan menjadi bahasa yang dipergunakan untuk system programming dengan dukungan terhadap multiprocessing dan ringan untuk object oriented design. 
Golang merupakan bahasa pemrograman yang dibutuhkan di era globalisasi seperti saat sekarang ini. 
Kenapa??

Keistimewaan dari Golang adalah sebagai berikut :
1. Fast
  Compiler Go menghasilkan code secara cepat. Build hanya memerlukan waktu hitungan detik.
2. Safe
   Go aman terhadap pengguna memori
3. Concurrent
 Go memperkenalkan lightweight communicating process a.k.a goroutines
4. Fun
  Go build secara cepat, clean syntax, garbage collection, methods for any type, and runtime reflection. Seperti dynamic language tetapi memiliki kecepatan dan keamanan seperti static language.
5. Opensource
  Go adalah sebuah proyek open source yang didistribusikan dibawah BSD-style license.

Nah ini nih contoh syntaks golang yang simple banget

package main
import “fmt”
func main()

{
    fmt.Printf(“Hello, Salam kenal saya Ares”)
}



gambar disamping ini bukan gambar hewan pengerat biasa loh, ini logo nya golang.




Segini dulu ya perkenalan awal dari bahasa pemrograman google punya.. pantengin postingan selanjutnya yaaa