Skip to main content

Create MVC Pattern Using Echo Framework #GolangDev

pixabay.com

Hi, Back again. today I am gonna share about Go Language, yes it is a new programming language that really fast growing this day, so many startup using it, especially in indonesia, there is a Gojek, Dana, Tiket and many more. Go Lang is a programming language found by google engineer, this language is a multi paradigm language, you could use it as functional programming or treat it like an OOP bases.

Echo is an framework that use Golang as a main language, to use a fast and reliable backend/web apps, as you know Golang has a really fast performance than other language, one of the reason is because its compiled not interpreted, so the Echo claim that its 10x faster. insane right ? Actually I didn't test the performance yet, but yeah for newbie like me in golang its not the main thing that you must understand, so the thing that we should know is how we actually can do with Golang. 

I am person with MVC bases, before jump to golang, I have experience with Laravel, you know its typically MVC pattern bases, so to make me comfortable with new environment, I try to treat Golang to be a MVC bases to make a web apps. Hence Golang could do the seem thing without overwhelming to built as MVC.

Firstly install the Echo Framework using go get command, look at the documentation here.

I am using Echo because this framework is already present a router, controller, view unfortunately not the model, so if you need a models, I recomend you to use Gorm. Gorm is a package to manage a model and migration, you could define table and relation in one file model, just like a ORM do. if you dont know ORM, maybe this article will help you. another best thing is Gorm could be your migration too, so you could define a table and column name in the model, and apply the migration from the seem file. it's really good approach and applied DRY principal.

If you already have gorm installed, now you could create fundamental MVC folder structure to grouping the Models, Controller, and Views files.

Because I am people who really like the laravel structure folder, so I put any folder from laravel that I think it might be required. then the structure just link this.




If you know Laravel or Ruby on Rails, you might be familiar.

see the complete code here. Happy coding ^_^

Popular posts from this blog

OpenVPN Alternatif Solusi Menanggulangi Blokir dari KOMINFO

Sejak akhir juli 2022 kemaren indonesia di gegerkan dengan tindakan kominfo atas diblokirnya banyak platform digital karna tidak mendaftar PSE, terutama paypal dan plaform game (steam, epic game dll). keputusan ini semakin membuat netizen geram dikarenakan platform judi online malah disetujui untuk beroperasi karna sudah daftar PSE. Jujur menurut saya memang keputusan ini sejak awal saya dengar sudah mengada-ada karna sangat aneh memblokir semua platform digital yang jumlahnya tidak terhitung banyaknya dan hanya membolehkan akses platform yang sudah mendaftar yang jumlahnya hanya ratusan.  saya sebagai developer juga merasa aneh banget ini kebijakan apalagi platform development juga banyak yang di blacklist oleh kominfo seperti, github, gitlab, bitbucket, even website CDN pun di blacklist. astaga wkwkwk. anyway terlepas dari kebijakan konyol ini, saya mau berbagi tips cara agar tetep bisa mengakses semua platform tersebut tanpa ada halangan, yaitu dengan menggunakan VPN. banyak ban...

Mengapa .env File Laravel Tidak Terupload / Tercommit ke Git

.env file atau bisa kita bilang "environment file" atau file yang berisi variable constan untuk memberikan value secara global ke dalam aplikasi kita. file ini berisi variable dan value yang sensitif yang membuatnya sangat riskan atau beresiko apabila di ketahui oleh orang yang tidak bertanggung jawab. contoh  seperti berikut ini file .env di atas memiliki informasi sensitif seperti host, user dan password dari database kita. maka dari itu kita sebagai developer harus pintar-pintar untuk memperlakukan .env file ini, secara default apabila kita upload ke hosting atau vps file .env ini tidak akan bisa di akses secara global dari host kita, karna letak root host kita ada di folder public yang notabene berada di satu level ke atas folder dari posisi .env. jadi user awam tidak akan bisa mengakses dari host kita eg : http://angon.dev/.env . nah kalo ke git gmn? apabila kita menggunakan version controller seperti github, gitlab, bitbucket. secara default git akan mem...

Install, Update dan Remove Paket Library PHP Menggunakan Composer | Learn and Practice

composer adalah package manager khusus php yang berguna untuk segala manajemen paket atau library seperti : install, update, remove, dll. composer juga bisa dibuat untuk menginstall framework seperti codeigniter, laravel, slim dll. Install Laravel Menggunakan Composer dan Laravel Instant Builder | Learn and Practice package manager di setiap bahasa pemrograman berbeda beda, kalo temen2 pernah make java, package managernya adalah maven, dan banyak package manager lain : python :  pip ruby : gem javascipt :  npm dan bower java : maven  dll cara install composer bisa di lihat di website resminya , Note : mengingat cara install composer berbeda beda tiap versinya maka tidak saya buatkan tutor installnya. saya asumsikan kalian sudah install composer, so lets moving on. buka terminal (linux/macos) atau cmd (windows) . ketikkan command berikut untuk melihat perintah2 apa saja yang ada di dalam composer. composer --help  hasilnya aka...