Friday, September 18, 2015

Memilih Full Framework untuk GO.

Beberapa waktu yang lalu saya dan rekan-rekan di berikan sebuah tantangan untuk membuat aplikasi menggunakan Go. Hal yang menjadi tantangan adalah bagaimana membangun aplikasi menggunakan GO yang scalable dan powerfull.

Membangun aplikasi menggunakan GO sangatlah mudah kita bisa menggunakan beberapa framework berikut untuk membuat aplikasi rest api, contohnya:

  1. Gorilla Mux (http://www.gorillatoolkit.org/pkg/mux)
  2. Gin (https://gin-gonic.github.io/gin/)
  3. Atau, Martini (https://github.com/go-martini/martini)
Tapi, ada beberapa feature yang tidak disediakan oleh framework diatas, misalnya: 

  1. Session management
  2. Caching
  3. Logging
  4. Database access
  5. Asynchronous job queue
  6. Development and deployment tools
  7. MVC or other architectural pattern
Untuk mendapatkan beberapa feature diatas saya membutuhkan sebuah full framework yang sudah menginclude feature diatas. Berikut 2 framework yang sekarang sedang saya riset:

  1. Revel
  2. BeeGo

REVEL
Sebuah Web Framework seperti Django dan Rails. Memiliki banyak utility dan Patterns yang bisa digunakan untuk mendukung pembuatan aplikasi menggunakan GO.

Kelebihan.
  1. Memiliki tools revel. (tool yang bisa kita gunakan untuk mengenerate aplikasi go , menjalankan server dan lain-lain)
  2. Logging. (Revel memungkinkan kita untuk membuat log yang dipisahkan ke bebrapa type seperti: error, info, dll)
  3. Interceptors and filters

BEEGO

Sama halnya Web Framework seperti Revel, teteapi memiliki komunitas dan memiliki built-in feature yang lebih baik dari Revel.

Kelebihan.
  1. bee tool
  2. Filter middleware
  3. SQL/ORM support
  4. Swagger.


1 comment:

  1. Gan kalo cara untuk downgrade aplikasi ke versi lawas tetapi yang ke baca tetep versi terbarunya bagaimana yah gan? Tolong informasinya gan kirim via email, thanks

    ReplyDelete