Intro
Go를 시작한 계기
- 회사에서 프로젝트를 들어갔는데, 폐쇄망 환경이다. 인터넷이 안된다.
- 인터넷이 안되는 환경에서 내부 업무 효율 향상을 위해 메신저 Mattermost를 도입했다.
- Mattermost에 추가기능을 구현하고자 했고, 특히 LLM API를 호출해 사용하는 기능을 구현하려 한다.
- Mattermost 의 Plugin 기능을 통해 추가기능을 개발할 수 있는데, Serverside 는 개발 언어가 Go이다.
Go 개발환경 구성하기
1. Go Lang 설치
The Go Programming Language
- Go 를 설치하는 가장 쉬운 방법은, go.dev 에서 설치파일을 다운로드 받아 설치하는 것이다.
(1) Windows 에서의 설치
- go.dev 에서 go 설치파일(~.msi) 를 다운로드 받아 설치한다.
(2) Mac 에서의 설치
- Mac 또한 go.dev 에서 go 설치파일(~.pkg) 를 다운로드 받아 설치할 수 있다.
- 추가로, MAC에서는 Homebrew를 통해서도 설치할 수 있다.
(3) Linux 에서의 설치
- Linux에서는 자동화 설치 파일은 없고, 설치 파일을 다운로드 받아 압축을 푼 뒤, 환경변수에 추가해주면 된다.
- 먼저 패키지를 다운로드 해준다.
1
| wget https://go.dev/dl/go1.26.1.linux-amd64.tar.gz
|
1
| sudo tar -C /usr/local -xzf go1.26.1.linux-amd64.tar.gz
|
- 환경변수에 추가해준 뒤, 변경사항을 적용한다.
1
2
| export PATH=$PATH:/usr/local/go/bin
source ~/.bashrc # 또는 source ~/.zshrc
|
(4) 설치 완료 확인
- 설치가 완료되면 터미널에서 아래 명령어를 통해 설치가 잘 되었는지 확인하면 된다.
1
| go version go1.26.1 darwin/arm64
|
2. IDE 설정
(1) 어떤 IDE가 좋을까?
- Go Lang 을 다룰 때 사용하기 좋은 IDE는 두 가지
- (1) VS Code : 무료. 확장성도 좋음
- (2) Go Land : 유료. Go 전용인 듯
(2) VS Code 에서 개발환경 구성하기
- VS Code 에서 GoLang을 통한 개발을 하기 위해서는 Extension 설치가 필요

- VS Code Extension 에서 go를 검색한 뒤, Go 확장기능을 설치해준다.
- Settings.json 에 아래 설정을 추가해두면 더욱 편한 개발이 가능하다.
1
2
3
4
5
6
7
8
9
10
| "go.formatTool": "gofumpt",
"go.lintTool": "staticcheck",
"[go]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
}
}
// 출처 : https://wikidocs.net/320888
// 자동 코드 포매팅, import 정리
|
Reference
02. Go 설치
03. IDE 설정
Comments