
Go 개발을 시작하려는데 무엇부터 해야 할지 막막하신가요?
새로운 프로그래밍 언어를 배우기로 마음먹고 설레는 마음으로 터미널을 켰는데, “command not found: go”라는 차가운 메시지만 마주했을 때의 당혹감을 잘 알고 있어요. 분명히 설치를 마친 것 같은데 왜 명령어가 먹히지 않는지, 도대체 어디서부터 꼬인 것인지 파악하기란 쉽지 않죠.
단순히 설치 파일을 실행하는 것만으로는 충분하지 않아요. 내가 작성한 코드가 의도한 대로 컴파일되는지, 외부 라이브러리를 불러올 때 충돌은 없는지, 그리고 무엇보다 내 개발 환경이 안정적인지 확인하는 과정이 반드시 필요해요. 바로 이 지점에서 Go 개발환경 테스트가 빛을 발하게 된답니다.
준비되지 않은 환경에서 코딩을 시작하면, 나중에 원인을 알 수 없는 에러 때문에 소중한 개발 시간을 낭비하게 될 가능성이 매우 높아요. 그래서 우리는 본격적인 로직 구현에 들어가기 전, 기초 공사를 탄탄히 다지는 시간을 가져야 해요.
이 글을 끝까지 읽고 나면 여러분은 다음과 같은 능력을 갖추게 될 거예요.
- 자신의 운영체제에 최적화된 방식으로 Go를 설치하는 방법
- 환경 변수 설정을 통해 어떤 터미널에서도 Go 명령어를 자유자재로 사용하는 법
- Go 모듈 시스템을 이해하고 프로젝트를 체계적으로 관리하는 기술
- 작성한 코드가 제대로 작동하는지 검증하는 첫 번째 단위 테스트 작성법
이제 막연한 두려움은 내려놓으셔도 좋아요. 저와 함께 차근차근 단계를 밟아나가면, 어느새 매끄럽게 돌아가는 여러분만의 개발 환경을 만나게 될 거예요.
원활한 개발을 위해 미리 확인해야 할 준비 사항
무작정 설치 버튼을 누르기 전에, 현재 여러분이 사용 중인 컴퓨터의 상태와 어떤 도구를 사용할지 결정하는 과정이 필요해요. 마치 집을 짓기 전에 땅을 고르고 연장을 고르는 과정과 같다고 생각하면 이해하기 쉬워요.
가장 먼저 확인해야 할 것은 운영체제(OS)의 종류와 아키텍처예요. Windows를 쓰는지, macOS를 쓰는지, 아니면 Linux 환경인지에 따라 설치 파일의 종류가 완전히 달라지거든요. 또한 최근 출시되는 많은 노트북은 ARM 기반 프로세서(Apple Silicon 등)를 사용하므로, 이에 맞는 바이너리를 선택해야 성능을 제대로 누릴 수 있어요.
Go는 정적 컴파일 언어이기 때문에, 설치 시 시스템의 경로(PATH)에 Go 실행 파일이 제대로 등록되는지가 환경 구축의 핵심이에요.
다음으로 중요한 것은 코드를 작성할 IDE(통합 개발 환경)를 선택하는 일이에요. 단순히 메모장에 코드를 적을 수는 없으니까요. 입문자라면 선택지가 크게 두 가지로 나뉘는데, 각각의 장단점이 뚜렷하답니다.
| 비교 항목 | Visual Studio Code (VS Code) | GoLand (JetBrains) |
|---|---|---|
| 주요 특징 | 가볍고 확장이 용이한 오픈소스 에디터 | Go에 특화된 강력한 유료 IDE |
| 설정 난이도 | 확장 프로그램을 직접 설치해야 함 | 설치 즉시 모든 기능이 준비됨 |
| 리소스 사용량 | 상대적으로 낮음 (가벼움) | 높음 (무겁지만 강력함) |
| 추천 대상 | 가벼운 환경을 선호하는 입문자 | 전문적인 도구 지원이 필요한 개발자 |
표에서 보시는 것처럼, 처음 시작할 때는 VS Code로 가볍게 시작하는 것을 추천드려요. Go 확장 프로그램을 설치하면 웬만한 기능은 다 사용할 수 있고, 무엇보다 시스템 자원을 적게 먹어서 학습에만 집중하기 좋거든요.
마지막으로 체크리스트를 확인해 보세요. 컴퓨터에 인터넷 연결이 안정적인지, 터미널(CMD, PowerShell, Terminal 등)을 실행할 준비가 되었는지, 그리고 프로젝트를 담을 폴더를 미리 만들어 두었는지 말이에요. 이 준비만 끝났다면 이제 진짜 설치 단계로 넘어갈 준비가 된 거예요.
Go 개발환경 구축부터 첫 번째 테스트까지의 실전 단계
이제 본격적인 실행 단계에 들어갈 시간이에요. 단순히 설치하는 것을 넘어, 제대로 설치되었는지 검증하는 과정까지 포함되어 있으니 집중해서 따라와 주세요.
STEP 1. 운영체제에 맞는 Go 설치하기
가장 먼저 Go 공식 웹사이트에 접속해야 해요. 여기서 주의할 점은 본인의 컴퓨터 사양에 딱 맞는 파일을 골라야 한다는 거예요. Windows 사용자라면 .msi 파일을, macOS 사용자라면 .pkg 파일을 내려받는 것이 가장 간편한 방법이에요.
Windows의 경우, 다운로드한 설치 파일을 실행하고 대부분 ‘Next’ 버튼을 누르면 되지만, 설치 경로가 C:\Go로 설정되어 있는지 확인하는 것이 좋아요. 기본 경로를 그대로 사용하는 것이 나중에 환경 변수 문제를 피하는 가장 안전한 방법이거든요.
macOS 사용자라면 설치 도중 시스템 암호를 요구할 수 있으니 미리 준비해 두세요. 만약 터미널 환경에 익숙하다면 Homebrew를 사용하는 것도 아주 좋은 선택이에요. `brew install go` 명령 한 줄이면 모든 과정이 끝나니까요. 하지만 입문자라면 공식 홈페이지에서 제공하는 설치 파일을 통해 과정을 직접 눈으로 확인하는 것을 더 권장해요.
STEP 2. 환경 변수와 버전 확인하기
설치가 끝났다면 이제 컴퓨터가 Go를 인식하고 있는지 확인해야 해요. 터미널(Windows는 PowerShell이나 CMD, macOS/Linux는 Terminal)을 열고 다음 명령어를 입력해 보세요.
go version
명령어를 입력했을 때 go version go1.2x.x windows/amd64와 같이 버전 정보가 출력된다면 성공이에요! 만약 “명령어를 찾을 수 없습니다”라는 메시지가 나온다면, Go의 설치 경로가 시스템의 PATH 환경 변수에 등록되지 않은 상태예요. 이럴 때는 시스템 설정에서 Go의 bin 폴더 경로를 직접 추가해 주어야 해요.
설치 직후에는 터미널을 완전히 종료했다가 다시 실행해야 변경된 환경 변수가 적용된다는 점을 꼭 기억하세요.
STEP 3. Go 모듈 시스템 초기화하기
이제 코드를 담을 프로젝트 폴더를 만들 차례예요. 과거에는 특정 위치에 코드를 몰아넣어야 했지만, 요즘 Go는 Go Modules라는 아주 편리한 시스템을 사용해요. 이 시스템 덕분에 프로젝트를 어디에 두어도 자유롭게 관리할 수 있죠.
먼저 원하는 곳에 새 폴더를 만들고 해당 폴더로 이동한 뒤, 터미널에 다음 명령어를 입력하세요.
go mod init my-first-project
이 명령을 실행하면 폴더 안에 go.mod라는 파일이 생겨날 거예요. 이 파일은 여러분의 프로젝트 이름과 사용 중인 Go 버전, 그리고 앞으로 추가될 외부 라이브러리 목록을 기록하는 아주 중요한 명세서 역할을 한답니다. 이 파일이 없다면 Go는 여러분의 프로젝트를 제대로 인식하지 못할 수 있어요.
STEP 4. 첫 번째 소스 코드 작성과 실행
이제 진짜 코드를 써볼까요? VS Code를 열고 프로젝트 폴더를 불러온 뒤, main.go라는 이름의 파일을 새로 만드세요. 그리고 아래의 코드를 그대로 입력해 보세요.
package main
import "fmt"
func main() {
fmt.Println("Hello, Go World!")
}
코드를 다 작성했다면 터미널에서 다음 명령어를 입력해 보세요.
go run main.go
터미널에 Hello, Go World!라는 문구가 찍혔다면, 여러분은 방금 첫 번째 Go 프로그램을 성공적으로 실행시킨 거예요! 정말 축하드려요.
STEP 5. 단위 테스트 작성과 환경 검증
마지막으로 가장 중요한 단계인 Go 개발환경 테스트 단계예요. 코드가 잘 돌아가는지 확인하는 것만큼, 테스트 환경이 구축되었는지 확인하는 것도 중요해요. 테스트를 위해 새로운 파일 main_test.go를 만들고 아래 내용을 입력해 보세요.
package main
import "testing"
func TestHello(t *testing.T) {
expected := "Hello, Go World!"
// 실제로는 로직을 호출해야 하지만, 여기서는 환경 확인을 위해 직접 비교해요
result := "Hello, Go World!"
if result != expected {
t.Errorf("예상치 못한 결과예요! 기대값: %s, 실제값: %s", expected, result)
}
}
이제 터미널에 다음 명령어를 입력하세요.
go test -v
결과 화면에 PASS라는 초록색 글자가 보인다면, 여러분의 Go 개발 환경은 모든 검증을 통과한 완벽한 상태예요. 이제 어떤 복잡한 프로젝트를 시작하더라도 두려워할 필요가 없답니다!
테스트 파일은 반드시 파일명 끝에
_test.go를 붙여야 Go 도구가 이를 인식하고 실행할 수 있어요.자주 하는 실수와 해결법
환경을 설정하다 보면 예상치 못한 벽에 부딪힐 때가 많아요. 가장 자주 발생하는 사례들을 정리했으니, 혹시 문제가 생기면 이 부분을 먼저 확인해 보세요.
❌ “go” 명령어를 찾을 수 없다는 에러
왜 발생할까요? Go 설치 후 시스템의 PATH 환경 변수에 실행 파일 경로가 추가되지 않았기 때문이에요.
✅ 해결법: 운영체제 설정에서 Go의 bin 폴더(예: C:\Go\bin 또는 /usr/local/go/bin)를 시스템 환경 변수의 PATH 항목에 추가하고, 터미널을 재시작하세요.
❌ go.mod 파일을 찾을 수 없다는 에러
왜 발생할까요? 프로젝트 폴더 안에서 `go mod init` 명령어를 실행하지 않았거나, 현재 터미널의 위치가 프로젝트 폴더가 아니기 때문이에요.
✅ 해결법: `ls`나 `dir` 명령어로 현재 위치에 `go.mod` 파일이 있는지 확인하고, 없다면 `go mod init [프로젝트명]`을 실행하세요.
❌ 패키지를 가져올 수 없다는 에러 (Import Error)
왜 발생할까요? 외부 라이브러리를 내려받지 않았거나, 모듈 경로가 꼬였을 때 발생해요.
✅ 해결법: 터미널에서 `go mod tidy` 명령어를 입력하세요. 이 명령어는 사용하지 않는 모듈은 삭제하고 필요한 모듈은 자동으로 내려받아 정리해 줍니다.
❌ 권한 거부(Permission Denied) 에러
왜 발생할까요? 시스템 폴더에 파일을 쓰려고 하거나, Go 설치 경로에 대한 접근 권한이 없을 때 발생해요.
✅ 해결법: macOS/Linux라면 명령어 앞에 `sudo`를 붙여 실행하거나, 프로젝트 폴더의 권한을 확인하세요. Windows라면 터미널을 관리자 권한으로 실행해 보세요.
❌ 테스트가 하나도 실행되지 않음
왜 발생할까요? 테스트 파일 이름이 `_test.go`로 끝나지 않았거나, 테스트 함수 이름이 `Test`로 시작하지 않았을 가능성이 높아요.
✅ 해결법: 파일명이 `something_test.go`인지, 함수명이 `func TestSomething(t *testing.T)` 형식인지 다시 확인하세요.
자주 묻는 질문
Q. Go를 설치하면 무조건 메모장으로 코딩해야 하나요?
아니요, 전혀 그렇지 않아요! VS Code나 GoLand 같은 전문적인 도구를 사용하면 코드 자동 완성, 에러 체크, 디버깅 기능을 활용할 수 있어 훨씬 편리해요. 입문자라면 VS Code를 강력하게 추천해요.
Q. GOPATH와 GOROOT의 차이가 무엇인가요?
이 부분이 참 헷갈릴 수 있어요. GOROOT는 Go 언어 자체가 설치된 경로(엔진의 위치)를 의미하고, GOPATH는 여러분이 작업하는 코드와 다운로드한 외부 라이브러리들이 저장되는 작업 공간을 의미해요. 하지만 최근 Go 모듈 시스템을 사용하면 GOPATH에 대한 고민은 크게 덜 수 있답니다.
Q. Go 버전은 무조건 최신 버전을 써야 하나요?
일반적으로 최신 버전을 사용하는 것이 보안과 성능 면에서 유리해요. 하지만 회사나 특정 프로젝트에서 구버전 사용을 강제하는 경우도 있으니, 협업 중이라면 팀의 규칙을 따르는 것이 가장 좋아요.
Q. Windows에서 개발하기 불편하지는 않나요?
예전에는 그렇지 않았지만, 지금은 아주 훌륭해요! WSL2(Windows Subsystem for Linux)를 사용하면 Windows 안에서도 리눅스 환경을 그대로 쓸 수 있어, 실제 서버 환경과 거의 동일하게 개발할 수 있답니다.
Q. 단위 테스트는 왜 꼭 해야 하나요?
코드가 복잡해질수록 내가 고친 코드가 다른 곳을 망가뜨리지 않았는지 확인하기 어려워져요. 테스트 코드를 짜두면, 나중에 코드를 수정하더라도 명령어 한 줄로 모든 기능이 여전히 정상인지 즉시 확인할 수 있어 매우 안전해요.
완벽한 Go 개발 환경을 위한 마지막 점검
지금까지 Go 설치부터 환경 설정, 그리고 첫 번째 테스트 검증까지 모두 마쳤어요. 처음에는 명령어가 낯설고 환경 변수라는 개념이 어렵게 느껴질 수 있지만, 이 과정은 모든 개발자가 거쳐 가는 필수적인 관문이에요. 기초가 튼튼해야 그 위에 멋진 서비스를 쌓아 올릴 수 있다는 점을 잊지 마세요.
- 운영체제와 아키텍처(x64/ARM)에 맞는 설치 파일 선택하기
- 설치 후 터미널에서
go version으로 인식 확인하기 - 프로젝트 폴더 생성 후
go mod init으로 모듈 시작하기 - VS Code 등 에디터에 Go 확장 프로그램 설치하기
go test명령어로 환경이 정상인지 최종 검증하기
자, 이제 준비는 끝났어요. 다음 단계로 나아갈 차례예요.
📅 오늘 할 일: 방금 만든 테스트 코드를 다시 한번 실행해 보며 명령어에 익숙해지기
🗓️ 이번 주 할 일: Go의 기본 문법(변수, 함수, 조건문)을 하나씩 익히며 작은 함수 만들어보기
🚀 실행 직전 할 일: GitHub 계정을 만들고, 내가 작성한 첫 코드를 첫 번째 저장소(Repository)에 올려보기
더 깊이 있는 Go의 세계가 궁금하다면, 지금 바로 예제 코드를 클론해 직접 실행해 보세요. 직접 손으로 타이핑하며 에러를 마주하는 과정이 여러분을 진짜 개발자로 만들어 줄 거예요.
관련하여 더 자세한 설치 과정이 궁금하시다면 Go 설치 및 설정 완전 가이드 글을 함께 읽어보시는 것도 큰 도움이 됩니다.