GO Lang
- Go lang은 google에서 개발 중인 언어로 로버트 그리즈머, 롭 파이크, 케네스 톰슨 이 3명의 사람이 디자인한 언어로, 각각의 사람들에 대한 경력등을 찾아 보면 대단한 사람들이 라는 것을 알 수 있다.
- C++의 복잡함이 싫어서 디자인 햇다고 한다.
- 실재로 코드를 보면, 상당히 C++스러운 부분이 있다고 생각되지만, 어떻게 보면 자바 스크립트나, c#, java, python 각각의 여러 요소들이 굉장이 많은 부분 포함된 듯한 모양을 볼 수 있다.
- C++에 비해서 굉장히 직관적인 코드를 보여 준다. 예약어 자체도 아주 많지 않지만, 하나의 예약어를 여러 형태로 사용가능 디자인 되어 있다.
- 예를 들어 반복문을 보자
- 아래 코드에서 볼 수 있는 것과 같이, 보통의 while문 처럼, 보통의 for문처럼 모두 사용이 가능하다.
for i := 1; i <= 100; i++ {
sum += i
}
for n < 100 {
n *= 2
//if n > 90 {
// break
//}
}
for {
}
- 위에 코드에서 보면 문법 자체는 약간 C++스럽지만, for문에는 괄호가 없이 그냥 쓰는 형태인데 마치 python을 보는 형태 같다.
- 그렇데 Scope는 python과 다르게 {}로 표기 한다.
- I :=1 과 같은 할당 즉시 선언문으로, 뭔가 Javascript, Python, c#등이 섞인듯한 느낌이 든다.
속도
- 기본적으로 실행 속도는 C++에 필적하게 만든다는 목표를 가지고 있다.
- 아래 Benchmarks사이트에서 가져온, 결과를 봐도 거의 비슷하다는 것을 알 수 있다.
다음 글부터는 기본적인 세팅과 문법에 대해서 알아 보기로 하자
'GO lang' 카테고리의 다른 글
Switch (0) | 2020.12.23 |
---|---|
조건문 if (0) | 2020.12.18 |
반복문 (0) | 2020.12.14 |
Go lang #2 변수들 (0) | 2020.12.09 |
GO lang 설치와 실행 (0) | 2020.12.02 |