3학년 졸업 전시 작품을 기획하고 설계하는 단계에서 Spring
, Node.js
말고 다른 백엔드 언어를 접해보고 싶다는 생각이 들었습니다.
그리하여 친구와 함께 아예 새로 배우는 언어인 Go
로 프로젝트를 개발해보기로 하게 되어 이렇게 기록을 남깁니다
https://go.dev/doc/install
위의 사이트로 들어간 뒤
다운로드 클릭 후
자신의 운영체제에 맞는 것으로 골라 msi
파일을 클릭하면 다운로드가 시작됩니다.
저는 windows
환경이기 때문에 Misrosoft Windows
의 go
를 다운로드 하였습니다.
다운로드가 끝나면 파일을 열어 next
를 계속 눌러주면 finish
버튼이 나오며 Go
언어 설치가 완료됩니다.
cmd창에서도 제대로 나오는 것을 확인할 수 있네요.
https://www.jetbrains.com/ko-kr/go/
위의 사이트로 들어가면 GoLand
를 다운로드할 수 있는 페이지가 나타납니다.
주의할 점은 GoLand
는 유료이기에 무료로 Go
개발을 하고 싶다면 VSCode
를 추천합니다.
다만 성능 면에서 GoLand
가 월등히 높기 때문에 저는 GoLand
로 다운로드를 해주겠습니다.
GoLand
를 다운로드 하는 과정에서 Setup
부분이 나오는데 설정 관련해서는 아래를 참조해주세요. 저는 모든 설정에 체크를 해주었습니다.
Create Desktop Shortcut
: 바탕화면에 바로가기 생성합니다.Update Context Menu
: 마우스 우클릭을 하면 'Open Folder as Project' 메뉴가 생기고 이를 통해 Go
프로젝트 폴더를 GoLand
에서 열 수 있습니다.Create Associations
: 확장자가 .go
인 파일과 연결해줍니다.Update PATH Variable
: bin 폴더를 환경변수에 등록합니다.GoLand
은 유료이지만 학생이라면 학생 라이센스로 무료로 사용할 수 있습니다.
저는 이미 JetBrain
에서 인증절차를 걸쳤기 때문에 GoLand
에서는 계정을 등록하기만 하면 됩니다.
GoLand
에 들어가 왼쪽 하단의 설정을 누르고 Manage Licenses..
를 클릭하면 이 화면이 나오면 아래의 설정에 따르면 됩니다.
Active GoLand
체크JetBrain Account
체크그렇게 하면 JetBrain
계정으로 로그인할 수 있는 버튼이 나오게 되고 로그인을 마치면
이와 같이 라이센스가 추가됩니다.
윈도우에서 "시스템 환경 변수 편집"이라고 검색하면 아래와 같은 화면이 뜨는데
환경 변수를 클릭하면 GOPATH
가 자동으로 만들어져 있는 것을 볼 수 있습니다.
우리는 이 GOPATH
를 실제 go
프로젝트를 만들 경로로 바꿔줘야 합니다.
저는 Personal
폴더 밑에서 go
프로젝트를 만들도록 하겠습니다.
아까 전 설정한 GOPATH
폴더 아래에 나의 프로젝트 폴더를 하나 더 만들어줍니다.
저는 Go-Mean
이라는 이름의 프로젝트를 하나 만들겠습니다. 여기서 개발을 하게 될 것입니다.
GoLand
에서 GOPATH
를 추가해줍니다.
환경변수 편집에서 GOPATH
를 추가해주지 않으면 GoLand
에서 GOPATH
가 나타나지 않습니다.
GoLand 의 어떤 터미널에서 go package 를 install 해도 동일하게 모든 프로젝트에서 사용할 수 있는 환경이 준비된 것입니다.
기본적으로 있어야 할 폴더입니다.
이제는 간단한 파일을 실행해보도록 하겠습니다.
소스 코드를 저장하는 곳인 src
폴더에서 마우스 우클릭을 하여 new > go file
로 파일을 생성합니다. 저는 test.go
파일을 생성하였습니다.
package main
import "fmt"
func main() {
fmt.Println("Hello World!")
}
이제 위의 코드를 test.go
에 복사 붙여넣기를 해야하는데 여기서 드는 의문점이 있습니다.
왜 package
가 src
가 아니라 main
이지?
package가 main이어야 파일 실행이 가능해지기 때문입니다.
package src
일 때는 실행 버튼이 없었다가 package main
으로 바뀌니 실행 버튼이 나타나는 것을 볼 수 있습니다.
이제 저 실행 버튼을 누르면 go
파일이 잘 작동하는 것을 확인할 수 있습니다.
reference: https://chung-develop.tistory.com/40 [춍춍 블로그:티스토리]