블록체인에 입문하기 위해 공부하면 좋을 프로그래밍언어가 뭐가 있을까 찾아보던 중, 매우 생소한 언어 'Go'를 알게되었다.
무려 구글이 만든 언어라고 하는데... 클라우딩, 블록체인 등 분산형 프로그램에 유용한 언어라고 한다.
C언어를 다룬지 1년이 지나면서 점점 가물가물해지고 있었는데, 이 Go언어가 C언어 계열이라고 한다! C언어를 닮았지만 훨씬 더 간편화된 언어인 느낌이 난다. Go를 배우면서 C언어도 살짝 복습할 수 있겠다 싶음.
아무튼 Go를 정식으로 공부하기 전에 대체 이게 무슨 언어인데? 를 알기 위해 약 13분짜리 찍먹 소개영상을 봤다
https://www.youtube.com/watch?v=QUbdGXe9aMc
(영상이 매우 웃기니 들어가서 직접 보시길 추천)
Go 언어지만 용이한 서치를 위해 GoLang이라고도 부른다.
구글 연구실의 로버트 그리즈머, 롭 파이크, 켄 톰슨 셋이 C++의 복잡함을 욕하면서 "우리가 편한 언어를 만들자"해서 탄생된 아이라고 한다.
"1.안정성 2. 빠른 속도 3. 가독성 4. 멀티프로세싱"
를 목표로 만들어진 언어!
무려 2012년에 1.0버전이 출시된 신생(?)언어이다.
빠른 속도
컴파일 언어라서 (C계열이니까) 속도가 빠름!
빠른 언어 학습 시간
소스코드만 봐도 대충 어떤 코드인지 알 수 있도록 만들었다고 한다.
코드만 봐도 문장 읽는 느낌이 나도록 했다는데 정말 대단하다... 접근장벽이 확 낮아질 수 밖에
복잡한 것들을 제외했다는데 반복문 삼형제 중 for만 남기고 while, do while을 날려버렸다고 한다!
나도 세 종류 각각 배우면서 굳이 이게 다 필요한가..?생각했었는데ㅋㅋㅋ for만 남긴거 정말 인상적이다 나 무젂권 단순히 만들거야!!!!!!하는 냄새가 진하게 난다
심지어 개인적으로 C언어 배우면서 가장 어려운 아이라고 생각했던 포인터 연산을 삭제했다고 한다. 너무좋다
스레드 생성이 단순해서 멀티프로세싱에 매우 강력하다
고루틴이라는 친구를 사용하면 한줄로 스레드를 뚝딱 만든다고 한다
다양한 프레임 워크
가비지컬렉션을 지원해준다고한다!
가비지 컬렉션은 자동으로 쓰레기를 처리해주는 친구이다
(자바는 이게 없다)
초기엔 제네릭 지원을 안했다고 한다
근데 항의가 들어와서 2021부터는 제네릭 지원한다고 한다 ㅋ ㅋ
큰 바이너리의 크기
헬로월드가 2MB라고....?
분산 네트워크 환경에 가장 강력하다! 즉 concurrency에 강력하다!
사용된 서비스에는 넷플릭스, 트위치, 사운드클라우드 등이 있다고 한다. 확 신뢰감이 올라가는 사례들..
아무튼 찍먹해보니 더더욱 흥미가 생기는 언어이다.
얼른 우선적으로 계획했던 공부들 끝내고 GoLang도 입문해봐야지!