Published 2020. 4. 24. 17:58

Go란?

공식 홈페이지에선 아래와 같이 소개하고 있다.

The Go programming language is an open source project to make programmers more productive.
Go is expressive, concise, clean, and efficient.

Go 언어의 장점

  1.  읽고 이해하기 쉽다.
  2. 이식성이 뛰어나다.
  3. 절차형, 동시성, 분산프로그래밍을 지원한다.
  4. 가비지컬렉션을 지원한다.

    -> 메모리 할당 및 해제를 직접 하지 않아도 된다.

  5. 전처리기를 사용하지 않으며, 컴파일 속도가 빠르다.

    -> Go를 스크립트 언어처럼 사용할 수 있음

  6. 다양한 패키지를 제공한다.
  7. 기본적으로 정적 링크를 사용한다.

    ->생성된 바이너리를 다른 머신으로 쉽게 전송 할 수 있다.

  8. GUI가 없어도 개발,테스트,디버깅 가능하다.
  9. 유니코드를 지원한다.
  10. 직교성이 뛰어나다.

    ->언어의 관점에서 보면 서로 중복된 부분이 많은 기능을 제공하는 것 보다 적은 수의 기능을 다양하게 조합해서 쓰는게 훨씬 좋다.

 

Go 언어의 단점

  1. OOP를 직접 지원하지 않는다.

    -> 합성(composition)으로 상속을 흉내낼 수는 있다..

  2. 그래도 어떤언어보다 C가 가장 빠르다.

 

 

Go 언어의 두 가지 규칙

  1. 사용하지 않을 Go 패키지는 임포트 하지 말 것

    사용하지 않을 패키지를 임포트해버리면 컴파일 에러가 난다.

    단, import 목록에서 패키지 이름 앞에 _를 붙이면 컴파일 에러 안난다.

  2. 중괄호 작성 스타일을 따를 것 

참고 사항

전처리기 : 개발자가 입력한 데이터를 처리해서 그 결과를 다른 프로그램의 입력으로 사용하는 프로그램.

godoc : msdn같은 거다. ( 실행 예 ) godoc fmt

 

복사했습니다!