부록: Go 자료형과 템플릿

헬름 템플릿 언어는 강한 타이핑(strongly typed)인 Go 프로그래밍 언어로 구현된다. 이러한 이유로, 템플릿에서의 변수는 _타이핑(typed)_된다. 대부분의 경우, 변수는 다음 자료형 중 하나로 노출된다.

  • string: 텍스트 문자열
  • bool: true 또는 false
  • int: 정수 값 (8, 16, 32, 64 비트의 부호가 있거나(signed) 없는(unsinged) 다양한 자료형이 있다)
  • float64: 64비트 부동 소수점 값 (8, 16, 32 비트의 다양한 자료형이 있다)
  • byte slice([]byte), 흔히 (잠재적으로) 바이너리 데이터를 담기 위해 사용된다.
  • struct(구조체): 프로퍼티와 메소드를 가지는 객체
  • 위의 자료형 중 하나에 대한 슬라이스(인덱스 있는 리스트)
  • 위의 자료형 중 하나에 대한 문자열-키 맵(map[string]interface{})

Go에는 다른 여러가지 자료형이 있는데, 템플릿에서는 때에 따라 자료형을 변환해야 할 수도 있다. 객체 자료형을 디버그하는 가장 쉬운 방법은 템플릿 내에서 자료형을 출력하는 printf "%t"에 전달하는 것이다. 또한 typeOfkindOf 함수도 살펴보자.