티스토리 뷰
golang 시리즈 1 ( 언어 특징 )
- 정적 타입, 강타입
- 컴파일 언어
- 가비지 컬렉션
- 병행성 *
- 멀티코어 환경 지원
- 모듈화 및 패키지 시스템
- 빠른 컴파일
나의 평가
아직 배우기전에 golang은 python 의 대항마라고 들었다. 하지만 막상 배우려고 여러가지 정보를 수집하고, 배우는 첫단계를 보자말자 얘는 파이썬의 대항마가 아니라 좀 다른 포지션인 것 같다는 생각이든다. 뭔가 작정하고 요즘 트렌드에 맞는 백엔드 언어가 아닌가 싶다.
추천하는 이유
한국은 자바왕국이다. 하지만 자바의 단점은 분명함에도 그 프로덕션으로서의 안전성과 오랜 기간 사용함에 따른 신뢰가 자바왕국을 더 단단하게 할것이다. 하지만 golang 을 처음본 순간 좀 희열을 느꼇다. 지금까지 자바의 대체 언어로는 많은 언어들이 존재했다. (루비, 코틀린 등등) 하지만 그들은 대체가 되지 못하고 여전히 자바는 튼튼하다.
그렇지만 golang은 확실히 대단한 녀석이다. 필자는 취미로 문법 책을 볼정도로 다른 언어를 배우는 것을 좋아한다. 고랭은 지금까지 봤던 언어중에 python 다음으로 아니면 python 만큼 금방 배울수 있었다. golang은 제공되는 기능이 별로 없다.
loop만 봐도 for, while, do while이 있는 다른언어와 달리 for 하나 뿐이다. 단점일수도 있지만 개발자가 어떤 방법으로 할까? 고민하는 시간이 줄었다고 한다. (내부 로직은 사실 for나 while 이나 비슷하다고 한다)
그리고 이미 안전성이 검증되었다. 여러 대기업이나 큰 트래픽이 오가는 서비스들이 golang으로 바꿨다. 물론 그 기업들이 바꾼이 이유가 안정성 뿐만 아니라 요즘 트렌드에 맞는 병행성 + 멀티코어 환경 지원도 하기때문이지만, 이는 분명한 메리트이다.
자바 왕국에서 자바를 못이기는 이유는 지금도 충분히 잘돌아가고, 안전하고, 익숙하기 때문이다.
배우기 쉽고, 안전하고, 병행성 + 멀티코어 환경 ( 물론 자바에도 있지만 복잡) + 빠른 개발이 이루어진다면 ??
이라는 기대가 있다.
golang을 본격적으로 배우려는 이 시점에서 벌써부터 즐겁다.