Go 1.27 정식 출시

원제: Go 1.27

왜 중요한가

제네릭 메서드 지원과 메모리 할당 최적화는 Go 언어의 표현력 및 성능을 동시에 끌어올려 대규모 백엔드 시스템 개발 생산성에 직접적인 영향을 미친다.

Go 팀은 2026년 8월 19일, Go 언어 최신 버전인 Go 1.27을 공식 출시했다. 제네릭 메서드 지원, 소형 객체(80바이트 미만) 메모리 할당 비용 최대 30% 절감, goroutine 누수 프로파일 정식 제공, encoding/json/v2 표준 라이브러리 추가 등 언어·툴체인·런타임 전반의 대규모 개선이 이루어졌다.

Go 팀의 Nicholas Husin이 발표한 Go 1.27은 언어 사양, 툴체인, 런타임, 표준 라이브러리 전반에 걸쳐 주요 개선을 담고 있다.

**언어 변경 사항**

가장 큰 변화는 제네릭 메서드(generic methods) 지원이다. 기존에는 타입별로 별도 메서드를 정의해야 했으나, 이제 `func (r *Rand) N[Int intType](n Int) Int` 형태로 단일 제네릭 메서드를 작성할 수 있다. 또한 구조체 리터럴에서 중첩·임베디드 구조체의 필드를 키로 직접 지정하는 것이 허용되며, 함수 타입 추론이 복합 리터럴·타입 변환·채널 전송 등 모든 대입 컨텍스트로 확장되어 명시적 타입 인수 없이 제네릭 함수를 사용할 수 있게 됐다.

**툴 개선**

`go fix`에 `atomictypes`, `embedlit`, `slicesbackward`, `unsafefuncs` 등 새로운 현대화 도구가 추가됐다. `go doc`은 `go doc example.com/pkg@v1.2.3`과 같은 버전 지정 쿼리를 지원하며, `go mod tidy`는 go.mod 내 복수의 require 블록을 직접 의존성과 간접 의존성 2블록 구조로 자동 통합한다.

**성능·런타임**

크기별 특화 메모리 할당(size-specialized memory allocation)으로 80바이트 미만 소형 객체의 할당 비용이 최대 30% 감소하며, 할당이 빈번한 프로그램의 전체 성능이 약 1% 향상된다. `runtime/pprof`의 goroutineleak 프로파일이 정식 기능(GA)으로 전환되어 영구적으로 블로킹된 고루틴을 자동 감지할 수 있다. 표준 라이브러리에는 `encoding/json/v2`가 추가됐다.

출처

go.dev — 원문 읽기 →