일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- go
- 코딩
- C++ gui 라이브러리
- c++ heap
- 알고리즘
- 연결리스트
- C++ gui
- 운영체제
- gui
- 자료구조
- 공룡책
- Docker
- C++
- OS
- 리듬게임
- 백준
- tour of go
- LOB
- BOJ
- a tour of go
- JUCE library
- JUCE
- go channel
- C언어
- C++ library
- Nebula
- JUCE 튜토리얼
- 프로그래밍
- JUCE라이브러리
- vim-go
- Today
- Total
CafeM0ca
패키지 네이밍은 어떻게 해야하나 Go로 첫 프로젝트를 진행하면서 여러 고민이 있다. 코딩컨벤션 디렉터리 구조 패키지 네이밍 동시성과 성능 마이크로서비스에서 서비스를 나누는 기준과 repository의 분리 등등.. 당장 생각나는 것만 적어도 5가지나 있다. 다행이 Go는 컨벤션 같은 가이드라인이 문서로 잘 되어 있어서 궁금증을 쉽게 해결할 수 있다. 패키지 이름은 단순하게 협업을 한다면 패키지를 봤을 때 최대한 직관적이고 단순하게 작명하는 것이 좋다. 이를 위해 Go에서는 Snake case와 Camel case 네이밍을 사용을 하지 않는다. example priority_queue computeServiceClient 다른 언어에선 바람직하지만 Go에선 그렇지 않다. 이름이 길면 신중하게 줄여라 str..

자세한건 이 블로그를 참조하자. 이런 분이 교사 하시면 모두가 점수가 높을 것이다. 이 글의 내용 전문은 다 아래 블로그에서 학습한 내용을 상기하기 위함이다. http://cloudrain21.com/streaming-data-pipeline-with-go-channel 위 블로그의 go 파트는 웬만하면 다 읽어보자. 파이프라인은 물이 흐르는 통로를 말하는데 컴퓨터에서는 물 대신 데이터가 흐르는 통로로 이해하면 된다. 물을 공급해주는 역할과 공급받은 물을 사용하는 역할이 있을 것이다. 이를 공급쪽은 Producer 혹은 Source라고 하며 사용하는 쪽은 Consumer 혹은 Sink라고 한다. (생산자 소비자 모델을 생각해보자) Fan-out, Fan-in Fan-out 여러 스트림이 있는 경우 다수의..
net/http로 라우팅 요청된 경로나 요청 방식에 따라 다른 핸들러로 요청을 라우팅하는 기능이 필요. go에서 ServeMux 인스턴스인 Default ServeMux 메서드에 의해 처리된다. ListenAdnServe 함수의 handler 매개 변수로 nil에 전달되면 DefaultServeMux 메서드가 사용됨. http.HandleFunc("/helloworld", helloWorldHandler) 패키지 함수를 호출하면 실제로는 간접적으로 http.DefaultServerMux.HanldeFunc(...)를 호출함. Go HTTP 서버에는 지정된 라우터가 없음 http.Handler 인터페이스를 구현한 객체가 Listen() 함수의 최상위 함수로 전달됨. 요청이 서버로 들어옴 핸들러의 Serve..