[go] 템플릿 파일 분리 및 관리

템플릿 파일을 별도로 분리하여 관리하면 코드의 유지보수성과 가독성을 향상시킬 수 있습니다. 이를 위해서 Go 언어에서는 html/template 패키지를 사용하여 템플릿을 파일로 분리하고 관리하는 방법을 알아보겠습니다.

템플릿 파일 분리

먼저, 템플릿 파일을 분리할 디렉토리를 생성합니다. 그리고 해당 디렉토리 내에 HTML 템플릿 파일을 만듭니다.

예를 들어, 다음과 같은 디렉토리 구조를 가진다고 가정해봅시다:

templates/
    |- index.html
    |- header.html
    |- footer.html

템플릿 파일을 별도로 관리하기 위해 위와 같이 디렉토리를 생성하고 각각의 HTML 파일을 추가합니다.

템플릿 파일 로드

이제 Go 언어에서 해당 템플릿 파일들을 로드하여 사용할 수 있습니다. 아래의 예제 코드는 html/template 패키지를 사용하여 템플릿 파일을 로드하고 실행하는 방법을 보여줍니다.

package main

import (
	"html/template"
	"net/http"
)

func main() {
	templates := template.Must(template.ParseGlob("templates/*.html"))

	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
		templates.ExecuteTemplate(w, "index.html", nil)
	})

	http.ListenAndServe(":8080", nil)
}

위 코드에서 ParseGlob 함수는 지정된 패턴과 일치하는 파일들을 모두 로드합니다. 그리고 ExecuteTemplate 함수를 사용하여 원하는 템플릿을 실행합니다.

이렇게 함으로써, 템플릿 파일을 별도로 분리하여 유지보수 및 가독성을 향상시킬 수 있습니다.

템플릿을 정의하는데 유용한 사전 지식은 Go 공식 문서에서 얻을 수 있습니다.

이제 코드를 분리하여 템플릿 파일을 따로 관리하고 이를 로드하는 방법에 대해 알아보았습니다. Go 언어로 웹 애플리케이션을 개발할 때 템플릿을 효율적으로 활용하여 가독성과 유지보수성을 높일 수 있습니다.

관련 문서: