이유 있는 선택 go 언어
TRANSCRIPT
![Page 1: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/1.jpg)
이유 있는 선택
<Go 언어>한빛미디어 IT2팀 최현우
![Page 2: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/2.jpg)
굉장히 생산성이 좋은 언어고요. 제 경우는 파이썬을 완전히 대체해버렸어요. 저는 예전에 파이썬으로 작성하던 작업들을 Go로 작성하게 되고 그게 또 여러모로 편하더라고요.
<팟캐스트 나는 프로그래머다> 중에서 염재현(구글)
“
![Page 3: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/3.jpg)
여러분, 아시다시피
생산성은
곧 경쟁력입니다.
![Page 4: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/4.jpg)
그럼 Go 언어의 생산성이 높은 이유를
구체적으로 알아볼까?
![Page 5: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/5.jpg)
1. 부분적이지만, 편리한 자료형 추론으로 굳이 반복해서 자료형 이름을 쓰지 않아도 된다.
2. 소스 코드 형식을 자동으로 맞춰주는 도구 및 여러 편리한 도구가 기본으로 제공된다.
3. Example 테스트를 이용하여 쉽게 테스트 코드를 작성하면서 코드 문서화까지 할 수 있다.
Go 언어 생산성이 높은 9가지 이유
![Page 6: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/6.jpg)
4. 함수 리터럴 및 클로저를 자유자재로 사용할 수 있다.
5. 명시적으로 인터페이스를 지정하지 않아도 인터페이스의 구현이 가능하여 기존에 있던 코드를 고치지 않고도 유연한 구현이 가능하다.
6. 채널을 이용하여 동시성 구현을 락 등을 이용하지 않고 간편하게 할 수 있으며, 언어 고유의 지원으로 교착 상태나 경쟁 상태 파악이 쉽다.
Go 언어 생산성이 높은 9가지 이유
![Page 7: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/7.jpg)
7. 컴파일 속도가 빨라서 컴파일 및 테스트를 반복적으로 수행하면서 코드를 작성하기 용이하다.
8. 가비지 컬렉션 지원으로 메모리 관리에 대한 부담을 덜 수 있다.
9. 자료형 리터럴을 쉽게 쓸 수 있다.
Go 언어 생산성이 높은 9가지 이유
![Page 8: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/8.jpg)
뭔가 많군요…
그렇지만 “생산성만 좋다”는 이유 하나로
언어를 선택할 수는 없겠죠.
![Page 9: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/9.jpg)
Go는 범용 프로그래밍 언어로,
깔끔하고 간결하게, 생산성 높은 프로그래밍이 가능합니다.
![Page 10: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/10.jpg)
Go는! 작성한 코드를 빠르게 컴파일 Go는! 가비지 컬렉션을 지원Go는! 정적 자료형 언어이지만, 동적 자료형 언어로 프로그램을 작성하는 것 같은 기분
매력을 소유하고 있습니다.
![Page 11: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/11.jpg)
또한 동시성을 지원하는 코드를
쉽게 작성할 수 있습니다.
![Page 12: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/12.jpg)
개발자라면
누구나 도커를 알 겁니다.
![Page 13: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/13.jpg)
도커는
Go 언어로 만들어졌습니다.
![Page 14: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/14.jpg)
그뿐만 아니라
인플럭스DB 프로젝트도라임 프로젝트도퀴베르네시스(Kubernetes, 구글 컨테이너 관리 시스템)도
이루어졌습니다.
![Page 15: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/15.jpg)
웹 서버, 웹 브라우저, 봇, 검색 엔진, 컴파일러, OS 개발까지 Go가 사용되지 않는 곳이 없을 정도입니다.
Golang 프로젝트 보기
![Page 16: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/16.jpg)
이미 세상에는 Go 언어로 된 프로젝트가 넘쳐납니다.
혹자는 Go 언어를 꿈의 언어라고 표현합니다.
![Page 17: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/17.jpg)
사실 Go 언어는
시작부터 꿈의 언어일
수밖에 없었습니다.
![Page 18: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/18.jpg)
켄 톰프슨은
유닉스를 만들었고 C 언어 모체인 B 언어를 개발했습니다.
![Page 19: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/19.jpg)
롭 파이크는
UTF-8을 켄 톰슨과 만들었습니다.
![Page 20: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/20.jpg)
그런 그들이 2007년,
로버트 그리즈머와 함께
새로운 언어를 기획했습니다.
![Page 21: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/21.jpg)
후에
이안 테일러와 러스 콕스가
합류했죠.
![Page 22: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/22.jpg)
그 새로운 언어가 바로
Go 언어입니다.
![Page 23: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/23.jpg)
지금 이 순간에도
수많은 프로그래머가 프로그래밍합니다.
![Page 24: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/24.jpg)
자신의 일과 열정과 꿈을
코드로 작성하는 거죠.
![Page 25: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/25.jpg)
그 중에 많은 프로젝트에서
Go 언어를 사용하고 있습니다.
![Page 26: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/26.jpg)
다시 한 번 말씀드리지만
Go 언어는 생산성이 좋습니다.
![Page 27: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/27.jpg)
그리고
수많은 라이브러리를 활용해서다양한 곳에 사용할 수 있습니다.
Go Resources 보기
Go Library 보기
![Page 28: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/28.jpg)
지금도 프로그래밍을 하는 여러분께 묻습니다.
![Page 29: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/29.jpg)
당신의 삶에 Go 언어를 추가하겠습니까?
![Page 30: 이유 있는 선택 Go 언어](https://reader034.vdocuments.site/reader034/viewer/2022050613/589cc2ba1a28ab8b018b5ebd/html5/thumbnails/30.jpg)
염재현의 『디스커버스 Go 언어』로
Go 언어를 익혀야 하는
12가지 이유 >> 바로가기