GO 언어5 Go 언어 5주차 #UNIT52 압축 사용하기 다양한 압축 알고리즘을 패키지로 제공. 보통 압축 알고리즘은 파일, 네트워크 패킷을 압축하여 용량을 줄이고, 압축된 파일, 네트워크 패킷을 해제할 때 사용. compress/gzip 패키지에서 제공하는 압축 함수 io/ioutill 패키지에서 제공하는 데이터 읽기 함수 gzip 알고리즘을 사용하여 데이터를 압축한 뒤 파일로 저장해 보자 gzil.NewWriter 함수에 file 인스턴스를 넣으면 io.Writer 인터페이스를 따르는 압축 인스턴스를 리턴=>압축 인스턴스의 Write 메서드에 []byte 형식의 데이터를 넣음=>Flush 메서드 호출하면 자동으로 압축 이때 Close 메서드로 압축 인스턴스를 반드시 닫아 줘야 됨 hello.txt.gz의 압축을 해제해서 읽어보자.. 2020. 8. 17. Go 언어 4주차 UNIT 34:: 채널 사용하기 채널: 고루틴끼리 데이터를 주고받고 실행 흐름을 제어하는 기능 - 모든 타입을 채널로 사용 가능 - 채널 자체는 값이 아닌 레퍼런스 타입 채널 사용 형식 (1). make(chan 자료형) 채널을 사용하기 전에는 반드시 make 함수로 공간을 할당해야 함 => 동기 채널이 생성 (:=을 사용하지 않고 var 키워드로 채널을 선언하고 할당할 수도 있음) 채널을 매개변수로 받는 함수는 반드시 go 키워드를 사용하여 고루틴으로 실행해야 함 (2) 변수형 chan 자료형 함수에서 채널을 매개변수로 받을 때는 위와 같은 형식 사용 (3) 채널 메인함수->고루틴->메인함수로 실행 34.2 채널 버퍼링 채널의 버퍼가 가득 차면 값을 꺼내서 출력 make(chan 자료형, 버퍼_개수) .. 2020. 8. 9. Go 3주차 UNIT 24:: 함수 사용하기 ex) Hello, world! 를 출력하는 함수 - 함수 정의를 시작한 줄에서 { (여는 중괄호) 시작. 이를 지키지 않으면 컴파일 에러 발생 - 함수를 정의하는 위치 제약 X (함수의 선언이나 정의가 뒤에 있어도 실행 가능) 24.1 매개변수와 리턴값 사용하기 ex) 두 정수 더한 결과 리턴 함수 - 변수를 선언할 때와 마찬가지로 자료형은 매개변수명 뒤에 붙여 줌. 리턴 값의 자료형도 맨 마지막에 지정 - 함수 안에서 리턴값 변수 사용 가능 - 리턴 뒤에 리턴할 변수 지정 X 24.2 리턴값 여러 개 사용하기 문법적으로 값을 여러 개 리턴 가능. 코드가 더 짧고 간단 - 괄호 안에 리턴 값 자료형을 콤마로 구분하여 여러 개 지정 - 리턴 값도 return에 값을 콤마로.. 2020. 8. 1. go 2주차 2020. 7. 25. 이전 1 2 다음