Go lang

1. 개요

구글이 개발한 프로그래밍 언어.

가비지 컬렉션 기능이 있고, 병행성을 잘 지원하는 컴파일 언어.

2. 목적

  • 안전성 : 타입 안전성과 메모리 안전성
  • 병행성과 통신을 위한 훌륭한 지원
  • 효과적인 가비지 컬렉션
  • 빠른 컴파일

3. 특징

  • 정적 타입, 강 타입

    C/C++, Java와 같이 Compile Time에 Type 결정이 이루어 지며 코드내에서 암시적 형변환 X

  • 컴파일 언어

    실행 파일을 만들어내며, 별도의 Runtime 환경이 필요없음

  • 가비지 컬렉션

    실행파일 내에 Garbage Collector가 탑재 됨.

  • 병행성

    멀티 쓰레드, 멀티 코어에 Go Routine 이라는 단위의 함수 실행을 한 쓰레드나 코어별로 동시에 실행 시킬 수 있다.

  • 멀티코어 환경 지원

    Go Routine 간에 “채널”을 통해 통신하여 데이터를 공유하고 실행 순서 제어 가능

  • 모듈화 및 패키지 시스템

    패키지 관리를 언어차원에서 지원. import 키워드만 있으면 된다.

  • 빠른 컴파일 속도

    Go는 헤더파일이 없고 소스코드를 패키지화 하므로 변결시 패키지만 재 컴파일한다. 문법도 최대한 단순화 하여 컴파일 속도도 빠르다.


Improve this page