본문 바로가기

분류 전체보기

(698)
go mod go mod init "{~~~}" => go.mod 파일 생성 됨 go mod tidy => 외부 패키지 다운로드 add missing and remove unused modules go mod edit => edit go.mod from tools or scripts => -replace
GO111MODULE go get 은 1.17 이후로 바이너리 설치에 사용되지 않을 것이고, 1.18 에서는 사용이 불가능할 것이다. 1.16 이상을 사용하는 경우는 go install @latest 를 사용해야 한다. GOPATH 초기 go 는 package manager 없었고, go get 이 모든 소스들을 fetch 하고 $GOPATH/src 에 저장하였다. 여기서 버전은 따로 없었고, master branch 만이 package 의 안정버전을 의미했다. Go Modules Go Modules 는 go 1.11 에 처음 소개되었다. 모든 package 의 git checkout 저장을 위해 GOPATH 를 사용하는 것 대신에 Go Modules 는 tag된 버전을 go.mod 를 통해 추적했다. (go.mod 파일에 ..
go 패키지 설치, 관리 [1. 개요] go 에서 외부 패키지 관리를 위한 get, install 에 대해서 정리한다. go version 이 1.17.3 이하에서는 확인 안됨. 1.16 버전 이후로~~~ GO111MODULE=off go env -w GO111MODULE=off => 원하는 의도되로 잘 됨 => 단, 버전을 명시할 수 없다. go env -w GO111MODULE=on go env -w GO111MODULE= go env -w GO111MODULE=auto github.com/segmentio/kafka-go github.com/segmentio/kafka-go@v0.4.33 go get has been deprecated for installing binaries since Go 1.17 and will be..
Rust 변수 [1. 개요] 1. Rust 언어에서 변수와 가변성등에 대해 정리한다. 2. 데이터 유형을 정리한다. [2. Rust 변수 개념] Rust 에서 기본 변수(let) 는 불변성(immutable)을 갖는다. => 특별한 취급(mut) 이 없는 한 변수의 값 변경은 불가능 하다. => const 변수 mut 를 통해 가변성 변수를 선언 할 수 있다. => non-const 변수 Rust 의 상수는 기본 변수와 약간 다르다. => mut 를 사용하는 것이 허용되지 않는다. => let 대신 const 를 사용한다. => 값의 유형을 선언해야 한다. => 보통 대문자로 명명한다(일종의 관습). Shadowing 이전에 선언한 변수와 같은 이름의 새 변수 선언 시 이전에 선언한 변수는 가리워 진다. => mut ..
Rust project 생성 [1. 개요] Rust 프로젝트 생성을 위한 cargo 에 대해서 정리한다. [2. cargo] Cargo 는 러스트의 빌드 시스템 및 패키지 매니저이다. Cargo 를 통해 코드를 빌드하고, 코드가 의존하고 있는 라이브러리를 다운로드하고, 그 라이브러리들을 빌드한다. [3. cargo new] cargo new 명령어를 통해 cargo package 를 만들 수 있다. ex) cargo new "your project name" --bin --bin : 프로젝트가 바이너리(실행파일)를 출력한다. --lib : 프로젝트가 라이브러리를 출력한다. 프로젝트 생성 시 다음과 같은 구조를 갖는다. myproject => .git/ => src/ => main.rs => target/ => Cargo.lock =..
windows docker 설치 [1. 개요] [2. 설치] https://www.docker.com/get-started/ Downloads for Window 도커 설치 후 윈도우 재부팅 진행 wsl 커널 버전2 를 사용하는 것을 권장(필수) => https://docs.microsoft.com/ko-kr/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package => https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi $ wsl -l -v => wsl 커널 버전 확인 $ wsl --set-default-version 2 $ wsl --set-version "" 2 [3. vm..
Aggregations - bucket [1. 개요] [2. bucket] composite date histogram date range filter filters nested parent range reverse nested terms
Aggregation - metric [1. 개요] 이 구성에서 aggregations 들은 한가지 방식 또는 aggregate 되어지는 document 에서 추출된 값들에 근거하여 metric 을 계산한다. single-value numeric metrics aggregation multi-value numeric metrics aggregation [2. metric] avg - 특정 numeric 또는 documents 내 histogram fileds 로 부터 추출된 값들의 평균을 계산한다. "aggs": { "avg_grade": { "avg": { "field": "grade" } } } cardinality - distinct value 들의 대략적인(?) 개수를 계산한다. - precision_threshold 로 정확도를 더..
Rust 개발환경 구축 [1. 개요] Windows 와 Linux 에서 Rust 개발환경 구축 방법을 기술한다. [2. Windows] 아래 웹사이트에 접속해서 운영체제에 맞는 버전으로 설치파일을 다운 받는다. https://www.rust-lang.org/en-US/install.html 다운받은 파일을 실행한다. rustup-init.exe Rustup metadata and toolchains will be installed into the Rustup home directory, located at: " ~~~ " This can be modified with the RUSTUP_HOME environment variable. The Cargo home directory is located at: " ~~~ " This..
입출력 리다이렉션 [1. 개요] 리눅스 환경에서 표준 출력, 표준 에러의 리다이렉션을 정리 한다. [2. 예제 코드] 컴파일 $ g++ -o main redirection.cpp [3. 리다이렉션 예제 및 출력] 명령어 출력 ./main empty This is stdout empty This is stderr ./main > mylog 2>&1 && cat mylog empty This is stdout empty This is stderr ./main > mylog 2>&1 && ./main >> mylog 2>&1 && cat mylog empty This is stdout empty This is stderr empty This is stdout empty This is stderr ./main > /dev/nul..