Go Go - 1
12 Mar 2021 | GoGo 언어에 도전해볼 생각이다.
책은 첫번째로 The Go Programming Language 를 읽어볼 예정이다. 도서관에서 빌려서 10일만에 읽어야 한다.
변수 설정
var number int
number := 1
보통 이 두개를 많이 쓴다고 한다.
for 루프
Go에선, 반복문의 종류가 오직 한개다
for 하나 있다.
기본적인 형태는 다음과 같다
for i := 0 ; i <5; i++ {
fmt.Println("Hello")
}
for n, arg := range os.Args[1:] {
// n = 인덱스넘버
// arg = 내용
}
문자열
파이썬과 같은 식으로, 문자열 변수끼리의 덧셈이 가능하다.
단, strings 라이브러리 안의 join과 비교하면 엄청나게 큰 속도차이를 보였다.
100000개의 문자열을 덧셈하는 코드를 짜봤는데,
단순 덧셈 연산은 11.65초가 걸렸고
strings.join 함수를 사용할 땐 0.0042176 초가 걸렸다.
생각보다 엄청난 차이같다…
또한 정수형 변수 등 숫자를 문자열로 변환할 땐 strconv.Itoa(number) 를 이용한다.
나중에 깊게 파봐야겠다.
fmt에 관련해서 해당 링크 에 괜찮게 정리되어있는 것 같다.
커맨드라인 변수
os 라이브러리를 이용한다.
os.Args[] 로 문자열형태로 저장되며, 0번에는 자기 자신의 이름이 들어간다.
C와 같은 개념이다.
시간
아직 깊게 파보진 못했지만, time 패키지를 이용한다.
시간 구조체를 만드려면 time.Now() 등을 이용하면 된다.
또한 현재 시간과 이전 시간을 비교할땐 time.Since()
를 이용한다.