개발자

구글 ‘고’ 언어, 제네릭 도입한 1.18 베타 버전 공개

Paul Krill | InfoWorld 2021.12.17
구글 고(Go) 언어 개발팀이 제네릭(Generics) 기능을 추가한 고 1.18 베타 버전을 14일 공개했다. 지난 2012년 고 1.0 버전 출시 이후 가장 중요한 변화다.
 
ⓒ Getty Images Bank

고 1.18 베타 버전은 고 언어의 첫 번째 테스트 버전으로, 타입 매개변수를 사용하는 제네릭 코드를 지원한다. 제네릭 프로그래밍은 함수 및 데이터 구조를 제네릭 형태로 표현할 수 있는 향상된 기능이다. 코드를 공유하고 프로그램을 더 쉽게 만들 수 있는 빌딩 블록을 제공한다.

고 개발팀은 중요한 기능이 추가됐을 때 새로운 버그가 발견되는 것은 흔한 일이라고 경고했다. 제네릭 기능도 예외는 아니다. 따라서 개발자는 고 베타 버전에서 제네릭 기능을 사용할 때 적절한 주의를 기울여야 한다. 특정 종류의 재귀적 제네릭 타입은 추후 지원할 예정이다. 

개발팀은 일부 사용자들이 베타 버전에 매우 만족했다고 밝혔다. 지난 2019년 7월 개발팀의 블로그 포스팅에 따르면, 고는 제네릭 프로그래밍의 한 형태인 인터페이스 타입을 사용하고 있었지만 당시에는 고 개발자들이 원하는 기능을 완전히 제공하지 못했다. 제네릭 기능을 선호하는 개발자들은 예컨대 슬라이스 요소의 유형을 신경 쓰지 않고 리버스 같은 기능을 사용하고자 했다.

고 1.18 베타 버전은 홈페이지에서 다운로드할 수 있으며, 아직은 ‘불안정’ 단계다. 고 1.18 정식 버전은 오는 2022년 2월 출시될 예정이다. 제네릭 사용 지침서도 공개됐다. 릴리즈 노트에 따르면, 고 1.18에는 다음과 같은 기능도 추가된다. 
 
  • 무작위로 데이터를 입력해 프로그램 충돌이나 에러를 검사하는 퍼즈 테스팅(Fuzz Testing) 기능
  • 개발자가 여러 가지 고 모듈을 동시에 사용할 수 있는 고 워크스페이스 모드. 대규모 프로젝트 개발 시 중요한 기능
  • 컴파일러 플래그 같은 빌드 세부사항 기록하도록 go version -m 명령 기능 확장
  • GOAMD64 환경 변수에서 4가지 AMD64 아키텍처 버전 가운데 하나를 선택할 수 있는 기능
  • 윈도우/ARM 및 윈도우/ARM64 포트 4가지에 비동기식 선취 지원 기능 추가. 장시간 차단되는 윈32 함수 호출 시 발생하는 버그 해결될 것으로 예상
  • GC(Garbage Collector) 실행 빈도 결정 시 논힙(non-heap) 작업 소스를 포함하여 보다 정확한 GC 오버헤드 예측 가능

한편 고 언어는 강력한 동시성을 지원하는 단순하고 배우기 쉬운 프로그래밍 언어로 설계됐으며, 도커 컨테이너 시스템 개발에 사용된 것으로 잘 알려져 있다. 고 1.17 버전은 지난 8월 출시됐다. editor@itworld.co.kr

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.