[Go tutorial] Go 정리하기 - 1
Go-tour 참조
익스포트
- Go 에서는 첫 문자가 대문자로 시작하면 특정 패키지를 사용하는 곳에서 접근할 수 있는 exported name이 됨
함수
Go 는 코드를 왼쪽부터 자연스럽게 읽기 위해 매개변수 타입은 변수명 뒤에 명시.
두 개 이상의 매개변수가 같은 타입일 때, 같은 타입을 취하는 마지막 매개변수에만 타입을 지정할 수 있음.
하나의 함수는 여러 개의 결과를 반환할 수 있음.
변수
var 을 통해 변수를 선언.
변수 선언과 함꼐 초기화 가능, 초기화를 하는 경우 타입 생략 가능. 이 경우, 초기화하고자 하는 값에 따라 타입이 결정됨.
함수 내에서 := 을 사용하면 var와 명시적인 타입을 생략할 수 있음.
상수
const 키워드와 함께 변수처럼 선언.
상수는 문자, 문자열, boolean, 숫자 타입 중의 하나가 될 수 있음
숫자형 상수는 정밀한 값을 표현할 수 있음. Go-tour 사이트에서 제공하는 예제를 이해하기 위해서는 Go의 << 와 >> 연산자의 이해가 필요하다.
<<, >> 연산자에 대해
- << 와 >> 연산자는 비트 이동 연산자로 Left shift, Right shift 라고 함.
- Left shift 는 현재 값의 비트를 주어진 값만큼 왼쪽으로 Right shift는 현재 값의 비트를 주어진 값만큼 오른쪽으로 옮깁니다.
반복문 for
Go 에는 반복문으로 for 하나만 존재.
조건문만 표현해서 루프를 표현 가능.
위와 같이 표현하면 while을 사용하듯 for을 사용할 수 있다.
조건문을 생략하는것으로 무한 루프를 만들 수 있다.
조건문 if
반복문과 마찬가지로 실행문을 위한 { } 만 필요.
for 처럼 조건문 앞에 문장을 실행할 수 있음.
위의 예를 보면, v < lim 을 통한 조건문 앞에 v := math.Pow(x,n) 을 실행했다.
이렇게 선언된 변수(위에서는 v)는 if 안쪽 범위에서만(else 블럭 안에서도 가능) 사용할 수 있다.
- 연습 : 루프와 함수 >>> solution