레이블이 hello world인 게시물을 표시합니다. 모든 게시물 표시
레이블이 hello world인 게시물을 표시합니다. 모든 게시물 표시

20241219

Golang 언어 - Hello world 출력하기

Go 언어에서, hello world 출력하는 방법

취미로 golang 언어를 공부하지만, 열심히 하지 않기에, 메모지급으로 기록하며, 틈틈히 공부하기 위하여, 블로그를 이용하는 개인적인 노트의 시작이 hello world 입니다.

import 는 ""를 사용함.

package main //현재 파일의 코드가 main 패키지에 속한다고 알림
//패키지의 이름은 소문자만 사용합니다.

import "fmt" // Println 함수를 사용하기 위하여, fmt 패키지를 가져오라는 뜻
// 여러 패키지를 가져올 경우 () 소괄호를 사용합니다.
// 표준 입출력 라이브러리.

/*
주석 입니다. 여러줄 주석. 주석은 컴파일할때 무시됩니다.
여러 줄에 걸쳐 표현하는 주석을, 블록주석(block comment)라고 합니다.
*/

// 한줄 주석 처리 방법

// main()함수는 어느 위치에 있던, 가장 먼저 실행되는 함수입니다. 꼭 하나는 있어야 함.
// 실행 가능한 Go 프로그램은 항상 main 패키지에 있어야 합니다.
func main() {
fmt.Println("hello world. 헬로 헬로") //fmt는 format의 약자로, fmt 패키지의 Println 함수를
//사용하는 방법을 알려주고 있습니다.
//함수는 첫문자가 대문자가 아니면, 로컬에서만 사용됨.
//세미콜론을 사용하지 않아도 됩니다.
//영어단어 외우기 싫으면, 직접 함수를 만들어 사용하세요.
// \n 줄바꿈, \t 탭, \" 따옴표, \\ 역슬래쉬, \b 백스페이스, \a 경고음
// %d 10진수 정수, %f 부동소숫점 숫자, %s 문자열, %t 불리언값, %T 데이터타입
// %v 모든 데이터 타입 기본형식, %q 따옴표 감싼 문자열
}

'안녕하세요' 작은따옴표로 둘러싸인 문자열은,Raw String LIteral 이라 하고,

- 문자열 안에 \n 을 그대로 문자로만 출력하고, 줄바꿈이 없고, 여러 라인으로 표현됩니다.

"안녕하세요" 큰따옴표로 둘러 싸인 문자열은, Interpreted String Literal 이라 하고,

- 문자열 안에 \n 을 줄바꿈으로 인식, 복수라인 안됨, + 사용 결합합니다.


출력시 에러발생하면: 

첫번째(파일이름),두번째(에러발생 라인),세번째(그 라인에서 발생지점),네번째(에러 내용)

go언어가 정적타입  언어라, 프로그램 실행 전에 에러 발생시 - 경고 출력함.


공부할때는 main.go 파일로 저장 보단, 해당 목적 암시용 파일 이름(helloworld.go)가 

같은 폴더에서 여러 파일을 만들고 실행할수 있어서, 편한듯 싶음.


실행 명령1: go mod init

                  - go 모듈을 초기화하고 관리하는 명령임.

                  - 현재 패키지의 종속성 정보를 담고 있는 go.mod 파일이 생성됨.

                  - go.mod 파일은 모듈의 이름, Go 버전, 종속성 정보를 포함함.

                  - go.mod 파일은 모듈이 호환되는 Go 언어의 버전을 명시함.


실행 명령2: go mod tidy

                  - 사용하지 않는 종속성을 제거하고 go.mod 파일을 정리함.

                  - 컴파일 전에 한번씩 기본적으로 실행해줌.


실행 명령3> go run main.go

                   - 소스 코드를 컴파일하고, 생성된 바이너리 파일을 즉시 실행함.

                   - 임시로 컴파일된 파일은 실행 후 자동으로 삭제됨.

                   - 스크립트 처럼, 빠르게 테스트할때 사용함.

                   go run helloworld.go


실행 명령4> go build .

                   - 해당 프로젝트(폴더 이름)으로 파일이 생성됨.


                   go build main.go

                   go build helloworld.go

                   - 소스 코드를 컴파일하여 실행 가능한 바이너리 파일을 생성함.

                   - 독립적으로 실행할 수 있어, Go 런타임이나 소스 코드 없이도 프로그램을 실행함.


출력> hello world. 헬로 헬로