[go] Go 언어에서 메소드 체인
Go 언어는 간결하면서도 강력한 기능을 제공하여 개발자들이 효율적으로 코드를 작성할 수 있도록 도와줍니다. 이 중에서도 메소드 체인은 코드의 가독성을 높이고 유지 보수성을 개선하는데 큰 도움을 줍니다.
메소드 체인이란?
메소드 체인은 하나의 객체에서 여러 메소드를 연달아 호출하는 방식을 의미합니다. 이를 통해 코드를 간결하게 작성할 수 있으며, 불필요한 중복을 피할 수 있습니다. 또한, 메소드 체인을 사용하면 코드의 의도를 명확하게 표현할 수 있어 가독성을 높일 수 있습니다.
예시 코드
아래는 Go 언어에서 메소드 체인을 사용하는 간단한 예시 코드입니다.
package main
import "fmt"
type Calculator struct {
result int
}
func (c *Calculator) Add(num int) *Calculator {
c.result += num
return c
}
func (c *Calculator) Subtract(num int) *Calculator {
c.result -= num
return c
}
func main() {
result := new(Calculator).
Add(10).
Subtract(5).
Add(3).
Subtract(2).
result
fmt.Println(result) // Output: 6
}
위의 코드에서는 Calculator
라는 구조체에 Add
와 Subtract
라는 메소드가 있습니다. 이 메소드들은 계산기 객체에 값을 더하거나 뺄 수 있도록 구현되어 있습니다.
메인 함수에서는 new
키워드를 사용하여 Calculator
객체를 생성한 후, 메소드 체인을 사용하여 순차적으로 메소드를 호출합니다. 체인의 마지막에 있는 result
필드는 최종 계산 결과를 저장하고 있습니다.
위 코드를 실행하면 6
이라는 결과가 출력되는 것을 확인할 수 있습니다.
결론
Go 언어에서 메소드 체인은 코드의 가독성과 유지 보수성을 향상시키는 강력한 기능입니다. 객체 지향 프로그래밍의 원칙을 잘 따르면서도 간결한 구문을 제공하기 때문에, 개발자들은 이를 적극적으로 활용하여 효율적인 코드를 작성할 수 있습니다.
참고 자료: