선수로 산다, 때론 좋은 코치로

[golang] 도서-Go 인 액션 본문

개발 관련/go

[golang] 도서-Go 인 액션

godsman 2018. 2. 1. 15:21

도서-Go 인 액션


높은 생산성과 쉬운 프로그래밍을 위한 Go인 액션, Go in Action, 제이펍

구글이 만든 차세대 언어


특징

개발속도, 컴파일속도, 정적타입

고루틴, 멀티쓰레드

채널, 고루틴 데이터 교환

Go의 타입 시스템, 계층구조가 없는 유연한 타입

• 자바같은 객체지향 언어에 익숙한 독자라면 익숙해지는 데 시간이 좀 걸릴 것이다

메모리 관리, 가비지컬렉션, 

Go  놀이터, http://play.golang.org

• Share 가능


A Tour of Go, 더 살펴볼 곳들 - http://go-tour-kr.appspot.com/#72


생각해 볼 점

내장타입, 사용자정의 타입, 타입의 메소드

패키지, 임포트, 

선언하고 사용하지 않으면 error 발생

-> for i, value := range pow { //에서 i나 value를 사용하지 않으면 error 발생

-> _ 가 필요한 상황


함수도 값입니다. -> 함수 클로저 필요,  A Tour of Go 42

Case 문 알아서 break -> fallthrough 필요

Switch 문의 조건 생략, case 문의 조건 추가 

클래스없음, 구조체에 메소드 연결할 수 있음

인터페이스, 메소드들의 집합 


도서-Go 인 액션 소개

회사에 Go 인 액션(Go in Action)이라는 책이 있어서 잠깐 살펴봤습니다.

높은 생산성과 쉬운 프로그래밍을 위한 책이라는 점, 구글이 만든 차세대 언어라는 점을 홍보합니다.


Go 언어의 특징

• 정적 타입, 강 타입 - C/C++, Java 와 같이 Compile Time 에 Type 결정

• 컴파일 언어 - C/C++, Java, C# 등과 같은 컴파일 언어. Java 나 C# 과 달리 실행파일 생성.

• 가비지 컬렉션 - 실행파일 내에 Garbage Collector 가 탑재 됨.

• 병행성(Concurrency) - Go Routine 을 이용하여 멀티쓰레드 프로그래밍 가능

• 멀티코어 환경 지원 - Go Routine 간에 쉬운 데이터 공유 - “채널”

• 모듈화 및 패키지 시스템 - import 키워드 이용

• 빠른 컴파일 속도 - 컴파일 속도도 빠르고 생산성이 좋음.


코딩 스타일 관련 항목 - 생각해볼만한 특징

• 세미콜론 사용은 옵션 -> gofmt라는 포매터를 실행시키면 세미콜론 삭제

• 중괄호는 반드시 인라인으로 시작 -> 새로운 줄에서 시작하면 오류

• 소괄호 옵션 -> gofmt 실행시키면 삭제됨, if문, for문에 사용하지 않고 함수에만 사용함

• 변수선언 -> 

• 루프는 for문만 제공 -> while 문 없음, for 문을 while 처럼 사용가능함

• 사용하지 않는 import, 변수는 컴파일 오류 발생 -> 임의사용을 위한 방법은 제공함, '_'



The Go Plaground, https://play.golang.org/

• golang.org 서버에서 동작하는 웹 서비스입니다.

• Go program 을 작성해서 동작시킬 수 있습니다.


A Tour of Go, https://tour.golang.org/welcome/1

• Go programming language를 소개에 따라 배울 수 있습니다.

• Go 언어를 코드와 함께 설명하고, 한글로도 제공합니다. 코드를 수정하여 실행할 수도 있습니다.



Comments