일단 go를 사용하려면 다운을 받아야 겠죠
The Go Programming Language
DevOps & Site Reliability With fast build times, lean syntax, an automatic formatter and doc generator, Go is built to support both DevOps and SRE.
golang.google.cn
IDE는 vscode를 사용 했습니다.
1.Hellow World 출력
package main
import (
"fmt"
)
func main() {
fmt.Println("Hellow World!")
}
여기서 터미널을 키고
go build 파일명.go
로 exe를 만들고
go run 파일명.go
로 실행시키면 됩니다.
go의 기본적인 코드는 이렇습니다.
go는 뒤에 세미콜론이 붙지 않는군요
fmt는 c의 stdin.h비슷한 페키지입니다.
go는 특이하게 Println이 대문자 인데
이유는 대문자로 생성한 함수들이 전역변수로 판정되기 때문입니다.
import한 페키지에서 export한 함수를 사용할때는 앞이 대문자인 함수만 이용 가능하다는 말이 되겠습니다.
2 상수와 변수
js와 비슷합니다.
상수를 만들때는
const name1 string = "logcat"
물론 상수이기 때문에 값을 변경할 수 없습니다.
변수를 만들때는
var name2 string = "logcat"
또는 축약형으로
name2 := "logcat"
이러면 타입은 파이썬처럼 자동 설정이 됩니다.
3 함수
package main
import (
"fmt"
)
func multiply(a int , b int )int{
return a * b
}
func main() {
fmt.Println(multiply(1, 2))
}
곱해주는 함수를 만들었다.
특이하게 함수명과 페러메터 뒷부분에 return값의 타입을 적어준다.
package main
import (
"fmt"
"strings"
)
func lenandvalue(word string)(int, string){
return len(word), strings.ToUpper(word)
}
func main() {
fmt.Println(lenandvalue("logcat"))
}
특이하게 go에는 return값으로 여러개의 값을 줄 수 있다.
lenandvalue함수에로 문자형 변수를 보내면
내장변수인 len()을 이용해 문자열의 길이를 출력하고
strings 페키지의 함수인 ToUppter()을 이용해 대문자로 값을 출력 한다.
'go 학습' 카테고리의 다른 글
Golang으로 웹 크롤러(web crawler) 만들기(feat chatGTP) (0) | 2023.02.14 |
---|---|
go 기초학습4(페키지 export, 생성자, 메소드 , error) (0) | 2023.01.09 |
go 기초 학습3 (pointer, array, slice, map, sturct) (0) | 2023.01.05 |
go 기초 학습2 (함수, for, if, switch) (0) | 2023.01.05 |