< 구글의 고(GO)가 고(Go)할 수 있는 이유 > ‘서버 하나를 빌드하는데, 이렇게 시간이 오래 걸리다니…’ 이런 생각에서 시작하여, 또 하나의 프로그래밍 언어가 탄생하게 됩니다. 바로 구글이 개발한 고(Go), 다른 말로 고랭(Golang)의 역사가 시작된 것인데요. 이제는 구글을 넘어 전 세계적으로 폭넓게 쓰이고 있는 컴퓨터 프로그래밍 언어가 되었습니다. 고(Go)의 역사를 되돌아보면 2007년 구글의 특별 엔지니어인 롭 파이크와 로버트 그리즈머, 켄 톰슨을 중심으로 구글의 프로그램 개발자들이 C++ 프로그래밍 언어의 복잡함을 줄이고 좀 더 간결하고 사용자가 배우기 쉬운 프로그래밍 언어를 만들어보자는 목표로 모이게 됩니다. 그 결과 빠른 속도의 컴파일 언어를 위해 오픈 프로그래밍으로 작업한 결과 짧은 시간 안에 프로그래밍할 수 있는 고(Go)를 개발했습니다. 이렇게 탄생한 Go 언어는 2009년 11월에 리눅스와 맥 OS 플랫폼을 대상으로 세상에 나왔고, 2012년 3월 정식 버전을 시작으로 2021년 현재 1.17 버전으로 업데이트되었습니다. > 고(Go)가 고(go)한다 지금 여러분이 쓰고 있는 프로그래밍 언어가 C, C++ 혹은 자바인가요? 만약 이 물음에 YES라면, 다른 언어들보다 고(Go)를 빨리 익힐 수 있다는 말이 있습니다. 그 이유는 우리가 알고 있는 고(GO) 언어가 공식적으로 C 프로그래밍 계열에 속하는 C 언어에 속하기 때문입니다. 그리고 한 가지 더! C 언어를 개발한 켄 톰슨이 고(Go)의 핵심 개발자라는 점인데, C 언어를 가장 잘 아는 사람이 C 언어 계열에 속하는 고(Go)를 개발했으니 더욱이 그렇습니다. 그리고 대부분의 프로그램 관련자들이 C 언어를 사용하고, 대부분의 시스템 프로그래밍에서 C 언어와 C++ 언어가 많이 사용되었기 때문에 개발자들이 새로운 언어를 익히고, 프로그램을 개발하기에 편리하다고 합니다. 이 밖에도 고(Go)는 여러 가지 프로그램과 운영체제를 지원합니다. 그중에서도 리눅스, 맥 OS, 윈도우 바이너리, 도커 컨테이너 등으로 지원되는데, 사용료는 무료입니다. 특히 고(Go)는 리눅스 배포판에 기본 사항으로 포함되어 있습니다. 그래서 리눅스 기반의 플랫폼에서는 고(Go)를 쉽게 배포할 수 있습니다. > 고는 빠른 컴파일 속도를 자랑한다 고(Go)는 C 언어와 비슷한 구문입니다. 하지만 C언어의 복잡함을 해결하고 컴파일 속도를 빠르게 했는데요. 이때 고(Go)는 전체적인 헤더 파일을 관리하는 것이 아니라 소스 코드 자체만 관리합니다. 즉 소스 코드 자체를 패키지 할 때 변경된 부분만 컴파일하기 때문에 속도는 자연스럽게 빨라질 수밖에 없습니다. > 고(Go)는 명쾌하고 간결하다 고(Go)는 명쾌하고 간결합니다. 그 이유는 고(Go)가 C 언어와 비슷하지만, 다른 프로그래밍 언어인 C 언어의 키워드는 37개, C++ 언어는 84개인 것과 비교할 때 고(Go)의 키워드가 25개에 불과하기 때문입니다. > 고(GO)는 빠르다. 고(GO)의 바이너리(0과 1로 이루어진 이분법으로 실행, 바이트로 저장되는 파일) 파일의 실행 속도는 빠릅니다. > 고는 자유롭다. 고(Go)의 프로그래밍 언어는 자유롭습니다. 다른 프로그래밍의 외부 C 라이브러리와 통신하거나 네이티브 시스템 호출을 수행하는 데 제약이 없기 때문입니다. 또 리눅스 함수, 컨트롤 그룹(cgroup), 네임스페이스 등과 컨테이너 기능을 구현하는데 편리합니다. > 고(Go)는 작게 설계된 언어이다 고(Go)는 프로그램을 실행하는 데 있어 시간을 절약하기 위해 만들어진 언어로, 작게 설계된 언어라고 할 수 있습니다. 그런데 이 점이 고(Go)가 안고 있는 몇몇 문제점의 요인이기도 합니다. 그 이유는 작게 설계하기 위해서 일부 기능을 생략할 수밖에 없었기 때문입니다. 그래서 다른 언어에서는 일반적으로 쓰이는 기능들이 고(Go)에는 없기 때문에 번거로울 때가 종종 있습니다. 예를 들면 고(Go)에는 개발자들이 자주 사용하는 제네릭(Generics, 함수가 많은 유형의 변수를 받아주는 기능) 기능이 없기 때문에 제네릭 기능을 쓰려면 우회하는 방법을 사용해야 합니다. 또 고(Go)는 커널 또는 장치 드라이버, 임베디드 시스템 등을 만들 때 런타임과 가비지 수집기(GC) 모두 기반 OS에 의존해야 한다는 점이 있습니다. 많은 개발자들이 이러한 개선 사항에 대해서 말하고 있는데요. 고(Go)의 개발자들 역시 이러한 점을 고려해 여러 가지 기능들이 추가될 가능성이 높다고 합니다.

구글의 고(GO)가 고(Go)할 수 있는 이유 | 요즘IT

요즘IT

구글의 고(GO)가 고(Go)할 수 있는 이유 | 요즘IT

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2021년 9월 23일 오전 7:07

댓글 0

    함께 읽은 게시물

    내가 진심으로 창업가이자 사업가로 리스펙트하고 사업피봇팅시 직접 엔젤투자를 한 홀릭스 박태영 대표가 동국대학교 캠퍼스타운이 IT동아와 함께 ‘2025년 스케일업 프로그램’에서 우리 회사가 사업 분석 컨설팅을 맡았던 포플러플래닛의 전문가 컨설팅을 맡아 진행했다. 포플러플래닛 대표님께 많은 도움이 되었을거라 믿는다.

    ... 더 보기

    [스케일업] 포플러플래닛 [1] 홀릭스 “큰 시장만 좇지 말고 브랜드 강점 내세워 돌파해야”

    동아일보

    [스케일업] 포플러플래닛 [1] 홀릭스 “큰 시장만 좇지 말고 브랜드 강점 내세워 돌파해야”

    📺'뤼튼'의 이상한 광고, 만든 사람에게 직접 의도를 들어봤습니다

    ... 더 보기

    “이래도 되나?” – 뤼튼의 이상한 광고 만들기 – 제일 매거진

    magazine.cheil.com

    “이래도 되나?” – 뤼튼의 이상한 광고 만들기 – 제일 매거진

    미 육군 리더십센터는 리더십, 조직심리학, 인지과학 분야에서 세계 유수 연구기관과 어깨를 나란히 하는 곳이다. 특히 불확실한 상황하에서의 의사결정, 위기 관리 분야를 선도하고 있다. 미 육군 리더십센터의 연구성과 중에서 주목할 만한 것은 ‘독성 리더십(Toxic Leadership)’에 관한 것이다.

    ... 더 보기

    `독성 리더십`은 어떤 것? 미군 내부조사 결과 보니 - 매일경제

    매일경제

    `독성 리더십`은 어떤 것? 미군 내부조사 결과 보니 - 매일경제

    < 가장 위대한 창작은 ‘경계’에서 탄생한다 >

    1. 세상에 없던 새로운 건 모두 한 사람의 상상에서 시작된다. 그 결과인 창작물은 크게 두 가지로 나뉜다.

    ... 더 보기

    “왜 나는 욱하고 말았을까?” “왜 나는 그렇게 화를 분출했을까?” 회의 중, 메신저에서, 피드백을 주고받을 때 리더의 감정 폭발은 일순간에 리더십 전체를 흔들어놓는다. 그리고 회의가 끝나고 긴장이 풀리면 리더는 ‘지적의 정당성’과는 별개로 자신의 감정적 태도를 후회하고 자책한다.

    ... 더 보기

    “왜 나는 오늘도 또 욱하고 화냈을까” [김성회의 리더십 코칭]

    n.news.naver.com

    “왜 나는 오늘도 또 욱하고 화냈을까” [김성회의 리더십 코칭]

    ⟪토스가 만든 리서치툴, TNS⟫

    ... 더 보기

    토스가 특허 낸 리서치툴, TNS (Toss Navigation Score) 제작기

    toss.tech

    토스가 특허 낸 리서치툴, TNS (Toss Navigation Score) 제작기

     • 

    저장 3 • 조회 617