![Go 마스코트 Go Gopher [사진출처=Go 홈페이지]](/news/data/2022/07/25/p179564967163056_476.jpg)
Go는 2007년 말 구글에서 만든 프로그래밍 언어로 2009년 11월에 오픈 소스로 출시됐다. 그 이후로 수천 명의 개인과 여러 회사가 기여한 공개 프로젝트로 운영됐다. Go는 오늘날 클라우드 인프라 구축에 널리 사용되는 언어로 모든 주요 클라우드 제공업체 인프라의 기반이 됐다. GO는 어떻게 많은 개발자들이 사용하는 언어로 성장할 수 있었을까? 인도의 빅테이터 인공지능 전문매체 애널리틱스인사인트(Analyticsinsight)가 GO의 특징과 장점 등을 분석했다.
확장성이 큰 프로그래밍 언어 Go
초기 사용자들은 다양한 이유로 Go에 끌렸다. 시스템 구축을 위한 가비지 수집, 정적으로 컴파일된 언어는 당시 이례적이었다. 동시성과 병렬 처리에 대한 Go의 기본 지원은 당시 주류가 되고 있던 멀티코어 시스템을 활용하는 데 도움을 줬다. 자체 포함된 바이너리와 간편한 크로스 컴파일로 배포가 간소화돼 있었다.
Go 개발자는 언어의 고유한 패러다임, 관용구, 구문을 최대한 활용하는 방법에 대한 이해를 가진 사람이다. 그의 주요 초점은 항상 확장 가능하고 유지 관리 가능한 Go 패키지와 프로그램 개발에 있다. 프로그램이 잘 문서화 돼 있고 인프라의 다른 계층에서 작업하는 팀과 협력할 수 있는 합리적인 테스트 범위가 있는지 확인하는 것이 중요하다. 협력적 문제 해결, 정교한 디자인과 고품질 제품에 대한 약속은 필수적 요소다.
Go 프로그래밍 언어를 배우면 경력이 향상되고, 많은 소프트웨어 개발자의 꿈인 구글에 취직하는 데 도움이 된다. 미국의 평균 Go 개발자 연봉은 13만 5,143달러(한화 1억7,712만 원)다. 초급 직위는 연봉 12만 달러(한화 1억5,727만 원)부터 시작하는 반면 대부분의 숙련된 근로자는 최대 17만 달러(한화 2억2,280만 원)을 받고 있다.
Go 사용은 계속 증가하고 있으며 이에 따라 Go 프로그래머에 대한 수요도 늘 것이다. 일부 전문가에 따르면, 곧 Go가 기업용 언어로 자바(Java)를 대체할 것이라고 전망하고 있다. Go의 가장 큰 장점은 정적 바이너리 스토리다. 이것은 시스템 관리자에게 매우 매력적인 부분이다.
고루틴(Goroutine)은 프로그램의 다른 고루틴과 독립적으로 동시에 실행되는 기능이다. 따라서 한 작업이 중단되거나 입력을 기다리는 경우 다른 작업은 애플리케이션의 다른 곳에서 오류나 지연으로 인해 차단되지 않는다.
Go 채널은 고루틴이 통신하고 데이터를 공유하는 매체다. 이 메커니즘을 통해 두 고루틴을 통과하는 데이터 교환을 동기화할 수 있다. 동시 스레드 데이터를 공유해야 하는 다른 많은 프로그래밍 언어에서는 해당 데이터가 잠겨있다. 이것은 메모리 관리와 관련된 모든 종류의 문제를 발생시킨다.
모든 언어에는 코드 정보를 문서화 하고 전달하는 기능이 있다. Go도 예외는 아니다. 하지만 Go의 주석은 기본 정보를 제공하는 것 이상의 의미를 갖는다. 이러한 기능 중 가장 마법 같은 기능은 Go의 내장 문서 도구 Godoc이다. Godoc은 주석에 대한 모든 Go 소스 코드를 스캔한 다음 이를 함께 컴파일 해 해당 패키지의 문서를 HTML 또는 일반 텍스트로 자동 구성한다.
GO는 이렇게 명확한 의사소통을 위한 강력한 지원 기술을 갖추고 있다. 개발자에게 가장 중요한 조직 기술은 프로세스 및 작업 추적이다. Go는 백로그 관리와 버전 제어와 같은 기술로 코드 변경 관리 등에서 개발자들이 더 쉽게 프로그래밍 할 수 있게 지원한다.
[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]