d031-codewars-golang-๋ฌธ์ -ํ๊ธฐ-์ํ-goland-์ค์ ๋ฐฉ๋ฒ ์์ goland ํ๋ก์ ํธ๋ฅผ ๋นจ๋ฆฌ ๋ง๋๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ ์ ์ด ์์ต๋๋ค. ํ์ํ ์ผ์ด ์์ด ์ฌ์ฉํด ๋ณด๋ ค๊ณ ํ๋, ์ ๋๋ก ์๋ํ์ง ์์ ๋ค์๊ณผ ๊ฐ์ด ์์ ์ต๋๋ค.
์ด ์คํฌ๋ฆฝํธ์ ๋ชฉ์ ์ ๋ค์๊ณผ ๊ฐ์ ๊ฐ๋จํ ํ๋ก์ ํธ๋ฅผ ๋นจ๋ฆฌ ๋ง๋๋ ๋ฐ์ ์์ต๋๋ค.
go module์ ์ฌ์ฉํ๋๋ ์๋๋์ ๋ฐ๋ผ ์ค์ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง ๊ฐ ์์ต๋๋ค.
go module์ ์ฌ์ฉํ์ง ์๋ ๋ฒ์
ํ๊ฒฝ๋ณ์ go111module์ off๋ก ํด์ค์ผ ํฉ๋๋ค.
ํจ์๋ ๋ ๊ฐ๋ฅผ ์ค๋นํฉ๋๋ค.
- New-TemporaryFolder
- codewar-go
codewar-go ํจ์๋ ํ ํ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ง๋๋ ๋์ ํ๋์, ํ์ํ ํ์ผ์ ๋ง๋๋ ํจ์ ์ ๋๋ค. ํ์ํ ํ์ผ์ ์ปค์คํ ํจํค์ง์ฉ ํ์ผ์ด ํ๋, ๊ทธ๋ฆฌ๊ณ main ํจํค์ง ํ์ผ์ด ํ๋์ ๋๋ค.
|
|
goland์์์๋ ์ค์ ์ ํ๋ ๋ ํด์ค์ผ ํฉ๋๋ค. go module์ ์ฌ์ฉํ์ง ์๊ฒ ๋ค๊ณ ์ค์ ํ๋ ๊ฒ์ด์ฃ .
go module์ ์ฌ์ฉํ๋ ๋ฒ์
ํ๊ฒฝ๋ณ์ go111module๋ ๋ํดํธ๊ฐ on ์ด๊ธฐ ๋๋ฌธ์ ๊ฑด๋ค์ง ์์๋ ๋ฉ๋๋ค. ๋์ ์ go.mod ํ์ผ์ ๋ง๋ค์ด์ผ ํด์.
ํ๊ฒฝ๋ณ์ $env:GO111MODULE ์๋์ ์ค์ ๋๋ก ๋๊ฑฐ๋, on ์ผ๋ก ํฉ๋๋ค.
mainํจ์์์ importํ๋ ๋ฐฉ์์ด, module์ ์ฌ์ฉํ์ง ์๋ ๋ฒ์ ๊ณผ ์กฐ๊ธ ๋ค๋ฆ ๋๋ค.
|
|
์ด ์ค์ ์ go.mod๋ฅผ ์ฌ์ฉํ๋ ์ค์ ์ ๋๋ค. ํ์ง๋ง, go.modsms GOPATH์ ์กด์ฌํด์๋ ์๋๋ ๊ท์น์ด ์์ต๋๋ค. ๊ทธ๋์ goland์์๋ ํ๋ก์ ํธ ํด๋๋ฅผ GOPATH๋ก ์ฌ์ฉํ์ง ์๊ณ ๋ํดํธ GOPATH๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ค์ ์ ์๋์ ๊ฐ์ ํ๋ฉด์์ ์ค์ ํ ์ ์์ต๋๋ค.
์ด ์ค์ ์ ๋๋ฌด ๊ฐ๋จํด์ ์ธ๋ถ ๋ชจ๋์ ์ฌ์ฉํ์ง ์์ต๋๋ค๋ง, ์ฌ์ฉํ๋ค๋ฉด direct๋ก ์ค์ ํด ์ค๋๋ค.
ํฐ๋ฏธ๋์์ ๋น๋ํ๋ ค๋ฉด, ์ญ์ ๋ง์ฐฌ๊ฐ์ง๋ก ํ๊ฒฝ๋ณ์์ GOPATH๋ฅผ ๋ํดํธ๋ก ์ฌ์ฉํด์ผ ํฉ๋๋ค.
|
|
๋ค์ผ๋ก Makefile์ ๋ํ snippet๋ ์ ์ด๋ก๋๋ค.
@"
.DEFAULT_GOAL := build
fmt:
go fmt ./...
.PHONY:fmt
lint: fmt
golint ./...
.PHONY:lint
vet: fmt
go vet ./...
.PHONY:vet
build: vet
go build main.go
.PHONY:build
"@ > Makefile