ProgrammingLang 122

[go] 개발에 도움되는 오픈소스

1. cli 개발에 도움주는 패키지 각종 옵션 및 서브 명령어를 쉽게 사용 할 수 있도록 도와 줍니다. https://cli.urfave.org/ Welcome - urfave/cli Welcome to urfave/cli urfave/cli is a simple, fast, and fun package for building command line apps in Go. The goal is to enable developers to write fast and distributable command line applications in an expressive way. These are the guides for each major s cli.urfave.org

ProgrammingLang/Go 2023.01.18

[C++개발자되기] 32. STL Container 실무

개요 container의관련된 모든것을 실무에 필요한 순서대로 알아보겠습니다. Container의 종류 아래 site에 잘 정리되어 있습니다. https://cplusplus.com/reference/stl/ https://cplusplus.com/reference/stl/ cplusplus.com Container별 성능 https://users.cs.northwestern.edu/~riesbeck/programming/c++/stl-summary.html EECS 311: STL Containers This is a brief summary of the containers in the Standard Template Library. It deliberately sacrifices completenes..

ProgrammingLang/c++ 2022.12.28

[C++개발자되기]29. promise 와 future 그리고 async

>>[C++ 관련 모든 글 보기] 개요 thread로 부터 수행 결과 값을 받는 방법을 알아 보겠습니다. 기본 원리 future와 thread간 promise를 매개변수로 사용하여 비동기 처리에대한 값을 얻어 옵니다. 1. future 미래에 어떤 값을 받고 자 할 따 사용. 2. promise future에 값을 넘겨주기 위해서 사용 Code #include #include #include void worker(std::promise *p) { p->set_value("some data"); } int main() { std::promise p; std::future data = p.get_future(); std::thread t(worker, &p); // 없어도 아래 get에서 대기 합니다. da..

ProgrammingLang/c++ 2022.08.11

[C++]Template

1. 사용이유 - Code Reuse 2. STL은 generic 하게 되어있다. 3. alias template - using을 사용한다. 4. variable template 5. lambda template(C++20) 6. Template fundermetal - class type = class, struct , union - template가 될수 이쓴 곳 7. Translation Unint - Code 생성 시점 : 컴파일 단계에서생성된다. Object Code 생성전. 8. Declarations and definitions 10. forward Declarations 11. One-Definitino Rule (ODR) 12. inline은 사용하는 모든 곳에서 정의가 있어야 하낟. 1..

ProgrammingLang/c++ 2022.06.21

[npm] 에러 해결 모음

1.ERROR: npm is known not to run on Node.js v10.19.0 https://nodejs.org/en/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 가서 최신 nodejs 받은 다음에 기존 설치된 nodejs를 최신으로 교체하면 끝!! 1. 상세 - ubunu20.04의 경우 /usr/bin/nodejs 에 nodejs 파일이 존재 - node-v16.15.0-linux-x64/bin 에 존재하는 node 파일을 /usr/bin/nodejs 로 복사한다.

[javascript] module 시스템

목표 - javascript의 모듈 시스템에 대해서 알아 봅니다. 모듈이란? - 하나의 큰 기능을 문해 해결을 쉽게하기 위하여 여러 작은 기능으로 분리하는데 이 작은 기능을 모듈이라고 합니다. - 아래 예제는 SSH 통신이란 큰 기능을 "연결" "요청" "결과확인" 이라는 모듈을 합쳐서 만든 것입니다. module 사용이유 1. 유지보수 용이 - 기능드이 모듈화가 잘되어있을 경우, 의존성을 줄일 수 있고 기능을 개선이나 수정이 용이 합니다. 2. namespace화 - module로 code들을 분리하면 개별 namespace를 갖습니다. module system란? 1. 정의 - module로 분리된 javacript파일들을 불러오는 방식을 정의 한 것이 module system 입니다. module ..

[C++] The Best Parts of C++

C++ 표준 - 표준은 ISO 결정 - 현재 C++20까지 나옴 컴파일러에서 지원하는 표준이 따로 있다. Q. 컴파일러와 표준의 관계 ? = GCC 버전 마다 지원하는 표쥰이 다르다. Const (C++98) - const는 컴파일 단계서 보증한다. - 값 초기화를 강제 한다. destructor의 통해서 객체의 라이프 타임을 관리 할 수 있다. - 해제는 destructor 에서 한다. Q. std::string s{"ㅁㄴㅇㄻㄴㅇㄹ"} =compiler가 list initialzation 으로 바꿔서 constructor에 매칭한다. Template의 필요성. (C++ 98) - Type만 바꾸면서 사용하기 위해서 사용한다. - 컴파일 타임에 코드가 생성된다. - 코드 재사용성에 좋다. enum안에서 ..

ProgrammingLang/c++ 2022.03.08

[Go Lang] package xx is not in GOROOT (/snap/go/9028/src/xx) 해결 방법

개요 package xx is not in GOROOT 에러를 해결 합니다. 발생이유 사용자가 만든 패키지를 go complier가 $GOROOT에서 찾고있어서 발생함. 아마 대부분 다음 단계를 거쳐서 디레토리 구조를 이렇게 만들고 개인이 만든 패키지를 추가하려고했을 것입니다. 1. go 사용자 package 생성 및 main.go 생성 ├── go.mod ├── lib │ └── common.go └── main.go lib/common.go (사용자 패키지) package common import "fmt" func PrintModuleName() { fmt.Println("Common") } main.go package main import ( "lib" ) func main() { common.P..

ProgrammingLang/Go 2022.03.03