Go 프로그래밍 언어 소개

1. Go 개발자들

GO 프로그래밍 언어는 2007년 구글에서 개발을 시작하여 2012년 GO 버젼 1.0을 완성하였다. GO는 이후 계속 향상된 버젼을 내 놓았으며 2015년 말에는 1.5.2 버젼에 이르렀다.

흔히 golang 이라고도 불리우는 Go 프로그래밍 언어는 구글의 V8 Javascript 엔진 개발에 참여했던 Robert Griesemer, Bell Labs에서 유닉스 개발에 참여했던 Rob Pike, 그리고 역시 Bell Labs에서 유닉스 개발했으며 C 언어의 전신인 B 언어를 개발했던 Ken Thompson이 함께 개발하였다.

  • Robert Griesemer
    Robert Griesemer 스위스 쮜리히에서 컴퓨터 박사 학위를 받고 구글에서 V8 자바스크립트 엔진 개발에 참여하였다. Go 프로그래밍 언어의 초기 디자인에 참여한 구글 엔지니어.
  • Rob Pike
    Rob Pike 벨 연구소에서 유닉스 개발팀에 근무하였으며 특히 분산 OS인 Plan 9 개발로 유명하다. 또한 켄 톰슨과 함께 UTF-8 을 만든 개발자이다. 현재는 구글에서 Go 개발자로 근무.
  • Ken Thompson
    Ken Thompson 미국 컴퓨터공학의 개척자로 알려진 Ken은 대부분의 시간을 벨 연구소에서 보냈다. 초창기 Unix OS를 설계하고 구현하였으며, C 언어의 전신인 B 언어를 개발하였다. 현재는 구글에서 Go 프로그래밍 언어 개발에 참여하고 있다.

2. Go 프로그래밍 언어의 특성

Go는 전통적인 컴파일, 링크 모델을 따르는 범용 프로그래밍 언어이다. Go는 일차적으로 시스템 프로그래밍을 위해 개발되었으며, C++, Java, Python의 장점들을 뽑아 만들어졌다. C++와 같이 Go는 컴파일러를 통해 컴파일되며, 정적 타입 (Statically Typed)의 언어이다. 또한 Java와 같이 Go는 Garbage Collection 기능을 제공한다. Go는 단순하고 간결한 프로그래밍 언어를 지향하였는데, Java의 절반에 해당하는 25개의 키워드만으로 프로그래밍이 가능하게 하였다. 마지막으로 Go의 큰 특징으로 Go는 Communicating Sequential Processes (CSP) 스타일의 Concurrent 프로그래밍을 지원한다.