golang 을 시작하자 !

김호준·2021년 10월 23일
0

1. golang의 특징

  • golang은 정적 컴파일 언어이다.

    • golang은 미리 기계어로 변환해두었다가 사용하는 방식의 언어인 정적 컴파일 언어이다.
    • 실행 시 변환과정이 필요없어 빠르고 타입 에러를 컴파일 시점에 발견가능해 타입 안전성이 뛰어나다
  • golang은 강타입의 언어이다.

    • golang은 다른 강 타입 언어에서 지원하는 자동 타입 변환까지도 지원하지 않는 최강타입 언어이다.
    • 그렇기에 사용하기 까다롭지만 타입이 달라 발생할 수 있는 문제점이 전혀 발생하지 않는다.
  • golang은 가비지컬렉터가 지원된다.

    • 가비지 컬렉터가 메모리를 자동으로 해제 해주기 때문에 메모리 관련 문제가 줄어든다는 장점이 있지만 메모리 청소에 CPU 성능을 사용한다는 문제가 있다.
    • 하지만 golang은 매우 발전된 형태의 가비지 컬렉터를 사용해 성능 손실이 크지 않다.

2. golang 코드 실행하기

  • 코드 실행 5단계
    • 폴더 생성
      • 같은 폴더에 위치한 .go 파일은 모두 같은 패키지에 포함되고 패키지명으로 폴더명을 사용한다.
    • .go 파일 생성 및 작성
      • 확장자는 반드시 .go 로 끝나야 한다.
    • Go 모듈 생성
      • go mod init 모듈이름 을 입력해 모듈을 생성한다.
      • ex) go mod init goproject/hello
    • 빌드
      • go build를 이용해 실행파일( .exe )파일을 생성한다.
    • 실행

3. 변수

  • 변수명은 문자, , 숫자를 사용해 지을 수 있지만 반드시 첫 글자는 나 문자로 시작해야한다.
  • _를 제외한 다른 특수문자를 포함할 수 없다.
  • golang에서 변수는 " var 변수명 타입 = 값 " 으로 선언한다.
    • ex) var a int = 10
숫자와 관련된 변수설명
unit숫자타입으로 부호가 없는 정수
int숫자타입으로 부호가 있는 정수
float숫자 타입중 실수
runeUTF-8로 문자 하나를 나타낼 때 사용
complex복소수
  • 변수 선언의 다른 형태
    • 기본 형태 : var a int = 3
    • var b int
      • 초깃값을 생략하고, 초깃값은 타입별 기본값으로 대체
    • var c = 4
      • 타입이 생략되어 변수 타입은 우변 값의 타입이 된다.
    • d := 5
      • 선언 대입문 := 를 사용해서 var 키워드와 타입 생략
profile
Go-getter Developer

0개의 댓글