http://martini.codegangsta.io/

https://github.com/go-martini/martini


frontend로 쓰기에 딱 좋은 go 웹 프레임웍을 발견했다. play나 rails를 보는 느낌이다~

그리고 쉽게 개발할 수 있는 환경이라서 좋다. 아주 간단한 예제를 소개해본다. 


한국 번역 내용은 아래를 참조한다. 

https://github.com/go-martini/martini/blob/master/translations/README_ko_kr.md




GO 개발 워크스페이스를  .bash_profile에 추가한다. 

export GOPATH=/mydev/go

export PATH=$PATH:$GOPATH/bin


(참고로 GOPATH는 여러 개의 workspace를 둘 수 있다. 예-export GOPATH=/mydev/go1:/mydev/go2


그리고 /mydev/go 서버 코드를 작성한다. 

$ cat server.go
package main

import "github.com/go-martini/martini"

func main() {
m := martini.Classic()
m.Get("/", func() string {
return "Hello, 세계!"
})

m.Get("/hello/:name", func(params martini.Params) string {
return "Hello " + params["name"] // :name을 Params인자에서 추출
})

m.Run()

}


소스에 있는 라이브러리를 설치한다.


 $ go get github.com/go-martini/martini



서버를 실행한다. 


 $ go run server.go
[martini] listening on :3000 (development)



실행을 완료한다. 

Hello, 세계!

Hello Google





현재 martini와 비슷한 툴은 아래와 같이 나와 있다. 


 Traffic, gocraft/web.

Posted by '김용환'
,