IMCAT.DEV
로그인 가입
Go 입문 문법

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("로그인 성공")
    }

    6. 정리

  • Go 언어의 기본 문법은 변수, 데이터 타입, 제어문, 함수로 구성됨.
  • 변수를 통해 데이터를 저장하고, 데이터 타입을 통해 어떤 종류의 데이터를 저장할지 정함.
  • 제어문으로 코드의 흐름을 제어하고, 함수로 코드의 재사용성을 높임.
  • 다음 학습할 주제로는 Go의 데이터 타입 및 함수의 심화 사용법을 추천합니다.