구조체(struct)는 Go 프로그래밍 언어에서 데이터의 각각의 속성을 묶어서 하나의 객체로 표현하는데 사용되는 데이터 타입입니다. 구조체는 여러 개의 변수를 하나로 묶어서 사용하므로 데이터 구조를 설계할 때 유용하게 활용될 수 있습니다. 이 글에서는 구조체를 활용하여 데이터 구조를 설계하는 방법에 대해 알아보겠습니다.
구조체 선언하기
구조체는 type
키워드를 사용하여 선언할 수 있습니다. 다음은 사용자의 정보를 담을 구조체 예시입니다.
type User struct {
Name string
Email string
Age int
}
위 예시에서 User
라는 이름의 구조체를 선언하였습니다. 해당 구조체는 세 개의 속성을 가지고 있으며, 각각은 Name
, Email
, Age
로 정의되어 있습니다.
구조체 객체 생성하기
구조체를 사용하기 위해선 해당 구조체의 객체를 생성해야 합니다. 다음은 User
구조체를 사용하여 객체를 생성하는 예시입니다.
user := User{
Name: "John Doe",
Email: "johndoe@gmail.com",
Age: 30,
}
위 예시에서 user
라는 이름의 User
구조체 객체를 생성하였습니다. 객체를 생성할 때 중괄호 안에 각 속성에 대한 값을 할당해야 합니다.
구조체에 접근하기
구조체는 점(.
) 연산자를 사용하여 객체의 속성에 접근할 수 있습니다. 다음은 구조체 객체의 속성에 접근하는 예시입니다.
fmt.Println(user.Name) // "John Doe" 출력
fmt.Println(user.Email) // "johndoe@gmail.com" 출력
fmt.Println(user.Age) // 30 출력
위 예시에서는 user
구조체의 각 속성에 접근하여 값을 출력하였습니다.
구조체 포함하기
구조체는 다른 구조체를 포함할 수도 있습니다. 이를 통해 복잡한 데이터 구조를 설계할 수 있습니다. 다음은 Address
구조체를 포함하는 User
구조체의 예시입니다.
type Address struct {
City string
Country string
}
type User struct {
Name string
Email string
Age int
Address Address
}
위 예시에서 User
구조체는 Address
구조체를 포함하고 있습니다. 이를 통해 사용자의 주소 정보를 추가로 포함할 수 있습니다.
이러한 방식으로 구조체를 활용하여 데이터 구조를 설계할 수 있습니다. 구조체를 적절히 활용하여 객체지향적인 방식으로 데이터를 조직화하고 관리할 수 있습니다.
참고문서: Go lang - Struct Types