원래 Ruby를 이번에 숙련하려고 했는데 하는 일이 주로 시스템/네트워크 관련 일이고 Ruby로 할 수 있는 일은 대부분 C#으로 다 할 수 있어서 아직 사용할 기회가 없음.

 

그래서 시스템, 네트워크 프로그래밍에 강하고 C 언어를 대체하려는 목적으로 나온 go를 공부하게 되었음.

 

공부하기 전에는 C/C++정도의 로우레벨도 아니고 그렇다고 Python, Ruby 정도의 하이레벨 언어도 아닌 어중간한 언어라는 인상이 짙어서 탐탐치 않게 생각했음.

 

막상 공부해보니 C/C++, 네트워크 프로그래밍 경험자에게는 익숙한 부분이 많아서 좋았음.

 

go 언어 개발자 중에 C 언어 개발자가 있어서 그런지 C 언어 느낌이 많이 나고, C++ 프로그래머보다는 C 언어 프로그래머 훨씬 더 배우기 쉬울 것 같음.

 

go 언어의 특징 중 하나가 간단함인데 이게 잘 지켜진 언어 같음. 근래 공부한 Scala Ruby에 비해 더 간결한 것 같음. 다만 간단함을 얻은 대신 실제 뭔가를 만들다 보면 부족함도 있을 것 같은 느낌도 있음(일단 C++에 비해 자료구조 지원이 더 작음).

 

예전에 잠깐 go 언어를 볼 때는 Windows 지원이 미비했는데 근래 나온 1.4 버전을 보니 설치가 아주 쉬워서 좋았음.

 

C++, Java, C# 등에 비해 강력한 IDE가 없는 것이 많이 아쉬움.

찾은 IDE 중에서는 ‘liteide’가 제일 괜찮은 것 같음. https://github.com/visualfc/liteide

구글이 안드로이드처럼 인텔리J를 기반으로 한 go IDE도 같이 배포했음 좋겠음(아님 젯브레인에서 만들어서 판매해 주던가)

 

처음 공부할 때는 ‘A Tour of Go’라는 것을 이용하면 좋음. 한글 지원한다.

http://go-tour-kr.appspot.com/#1

 

몇 년 전에 go 관련 글을 번역한 프로젝트가 있음. https://code.google.com/p/golang-korea/

 

C++의 장래 계획 중 하나가 라이브러리에 팩키지 시스템을 도입하는 것인데 내 생각으로는 go의 것을 많이 참고하지 않을까 생각한다.

 

C 언어만 아는 프로그래머가 새로운 언어를 배운다면 go가 가장 빠르게 배울 수 있다고 생각한다. C++만 알고 있다면 Java, C# 다음으로 배우기 쉬울 것 같다.

 

저작자 표시
신고
by 흥배 2014.12.14 22:22

티스토리 툴바