학습
Go 기본 문법 (Syntax)
Go 기본 문법 (Syntax) — 초급
Go 기본 문법 (Syntax)
1. 도입 (왜 배워야 하는가)
Go 언어는 간결하고 효율적인 문법 덕분에 서버 사이드 프로그래밍, 웹 애플리케이션 개발 및 클라우드 서비스에서 널리 사용되고 있습니다. 기본 문법을 이해하는 것은 Go 언어의 모든 기능을 활용하기 위한 필수 조건입니다. 문법을 모르면 코드를 작성할 수 없고, 다른 사람의 코드를 이해하는 것도 어려워집니다. 결국, 이는 팀 프로젝트에서 협업을 방해하고, 버그를 유발하며, 개발 속도를 늦출 수 있습니다.
2. 핵심 개념 설명
Go의 기본 문법에는 변수 선언, 데이터 타입, 제어문, 함수 등이 포함됩니다. 이를 쉽게 이해하기 위해 일상적인 비유를 들어보겠습니다.
- 변수 선언: 변수는 마치 상자와 같습니다. 상자에 물건을 담듯이, 변수를 사용해 데이터를 저장합니다.
- 데이터 타입: 데이터 타입은 상자의 크기와 모양과 같습니다. 정수형, 문자열 등 각각의 데이터 타입은 다르게 생겼고, 담을 수 있는 데이터의 종류가 다릅니다.
- 제어문: 제어문은 길을 선택하는 분기점과 같습니다. 조건에 따라 다른 길로 가듯이, 코드의 흐름을 다르게 만들어줍니다.
- 함수: 함수는 요리 레시피와 같습니다. 특정한 작업을 수행하는 방법을 정의해 놓은 것으로, 나중에 해당 레시피를 불러와서 반복적으로 사용할 수 있습니다.
주요 용어 정리
| 용어 | 설명 |
|---|---|
| 변수 | 데이터를 저장하는 공간 |
| 데이터 타입 | 변수에 저장할 수 있는 데이터의 종류 |
| 제어문 | 코드의 흐름을 결정하는 문장 |
| 함수 | 특정 작업을 수행하는 코드 블록 |
3. 기본 코드 예제
아래는 Go 언어에서 "Hello, World!"를 출력하는 가장 기본적인 코드입니다.
package main // 패키지 선언
import "fmt" // fmt 패키지 임포트
func main() { // 메인 함수 시작
fmt.Println("Hello, World!") // 문자열 출력
}
실행 결과:
Hello, World!
package main: 프로그램이 시작되는 패키지를 정의합니다. 모든 Go 프로그램은 main 패키지가 필요합니다.import "fmt": fmt 패키지를 임포트하여 문자열을 출력할 수 있게 합니다.func main() { ... }: 메인 함수의 시작과 끝을 정의합니다. Go 프로그램은 항상 이 함수에서 시작됩니다.fmt.Println("Hello, World!"): "Hello, World!"라는 문자열을 출력하는 명령입니다.4. 실전 활용 예제
1. 변수 선언 및 사용
쇼핑몰에서 상품 가격을 관리할 때 변수를 사용합니다.
package main
import "fmt"
func main() {
var price float64 = 199.99 // 상품 가격
fmt.Println("상품 가격은", price, "원입니다.")
}
2. 조건문 사용
사용자가 로그인할 때 비밀번호를 확인하는 예제입니다.
package main
import "fmt"
func main() {
password := "1234" // 정해진 비밀번호
userInput := "1234" // 사용자 입력
if userInput == password {
fmt.Println("로그인 성공")
} else {
fmt.Println("비밀번호가 틀렸습니다")
}
}
5. 흔한 실수와 주의사항
1. 변수 선언 생략
잘못된 코드:
func main() {
var price // 타입을 명시하지 않음
fmt.Println(price)
}
올바른 코드:
func main() {
var price float64 // 올바르게 타입을 명시함
fmt.Println(price)
}
2. 잘못된 조건문
잘못된 코드:
if userInput = password { // 단순 대입
fmt.Println("로그인 성공")
}
올바른 코드:
if userInput == password { // 비교 연산자 사용
fmt.Println("로그인 성공")
}