
1. 메모리에서의 안전요소 https://medium.com/a-journey-with-go/go-memory-safety-with-bounds-check-1397bef748b5 Go: Memory Safety with Bounds Check ℹ️ This article is based on Go 1.13. medium.com https://insanitybit.github.io/2016/12/28/golang-and-rustlang-memory-safety Golang and Rustlang Memory Safety - InsanityBit I recently read an excellent blog post by Scott Piper about a tool he has released called S..

C++ 에서 최적화를 언급 할 때 "객체복사가 최대한 일어나지 않게 한다" 가 주요 화두를 차지 한다. ("알고리즘"을 개선하라도 중요하긴 하지만) 이에 따라서 RVO 같은 개념도 생겨나고, 아예 RVO를 믿지 못하고 매개변수에 리턴 받을 포인터를 전달하는 형태를 취하기도 한다. 마찬가지로 Go에서도 아래 처럼 *peer,Proposal 같은 포인터를 넘겨 주면서 객체복사에 대한 낭비를 줄이는데 // GetProposal returns a Proposal message from its bytes func GetProposal(propBytes []byte) (*peer.Proposal, error) { prop := &peer.Proposal{} err := proto.Unmarshal(propBytes..
Create Versatile Microservices in Golang — Part 1Create Versatile Microservices in Golang — Part 2 (Docker and go-micro)Create Versatile Microservices in Golang — Part 3 (docker-compose and Datastores)Create Versatile Microservices in Golang — Part 4 (Authentication With JWT)Create Versatile Microservices in Golang — Part 5 (Event Brokering With go-micro)Create Versatile Microservices in Golang ..
Go언어는 예외처리가 없으며, 에러에 대해서 가장 가까운 위치에서 명시적으로 체크하고 넘어가는 것을 권장하는 언어 이다. 이 행위를 강제하진 않기 때문에 좀 더 단순하나 문제가 발생 할 소지를 없애기 위해 에러 체킹을 강제화 하는 언어(OCaml,Scala등)에 비해 안정성은 좀 떨어진다고 말 할 수도 있겠다. 하지만 이런 것은 팀의 코딩컨벤션으로 항상 체크하고 넘어가면 되는 문제로 생각 할 수도 있을 것이다. 참고로 예외처리는 굉장히 어려운 주제이며 예외 처리에 대한 6가지 화두 이 글을 통해서 말한바 있다.Panic 예제func test () int { arr := [] int {} element := arr[5] return element } func main() { test() fmt.Printl..
go언어에서 가장 재밌으며, 강력한 키워드인 select/채널의 다양한 패턴을 살펴봄으로써 우리의 코딩력을 향상시켜 보겠습니다. 이러한 go특유의 핑퐁스타일의 코딩에 빠져들면 헤어나오기 힘들겁니다 :-) switch 먼저 형제 관계에 있는 switch를 통해 몸풀기를 좀 하구요. 1. switch (1) // 일반 switch func main(){ i := "korea" switch i { case "korea": fmt.Println("korea") case "usa": fmt.Println("usa") case "japan": fmt.Println("japan") } } switch문은 보통 우리가 생각하는 듯 그러합니다. 2. switch (2) func main(){ t := time.Now()..
[이더리움으로 배우는 GO언어] 자료구조 & 컬렉션 이번 글에서는 사실 이더리움하고 크게 상관없이 go 자료구조 기본에 대해서 알아 봅니다.Array var a [5]int // [0 0 0 0 0] a[4] = 100 // [0 0 0 0 100]5개의 비어있는 배열 생성과 값 삽입 b := [5]int{1, 2, 3, 4, 5} // [1 2 3 4 5] 5개 요소가 들어있는 배열 생성 a2 := [...]string{"USA", "China", "India", "Germany", "France"} b2 := a2 // a copy of a is assigned to b b2[0] = "Singapore" fmt.Println("a is ", a2) // [USA China India Germany ..
컴포지트(composite) 디자인 패턴과 이름이 헷갈린 컴포지션은 UML 측면에서는 연관(Aggregation) 하고도 헷갈리기도 하는데 이 글에서는 컴포지션과 연관을 구분하지 않겠다. 컴포지션이란 간단히 말해 내가(객체)가 가지고 있어야 하는 특성을 외부에서 가져오는 것을 말하는데, 가져오는 방식이 상속을 통하는 방법과 다르게 외부에서 주입되는 방식이다. 상속의 경우는 폴리모피즘이 반드시 필요하면 제한적으로 사용하되, 컴포지션을 통해서 객체를 구축하는 방식을 추천한다. 이 글에서는 Golang에서 컴포지션을 어떻게 지원하는지 살펴 볼 것이다. 자바/C++ 보다는 훨씬 깊숙히 임베디드 되는 모습을 보게 될 것이란 것을 미리 귀뜸해 둔다.먼저 자바의 컴포지션을 살펴보자. abstract class For..
- Total
- Today
- Yesterday
- 스칼라 강좌
- 파이썬 강좌
- akka 강좌
- play 강좌
- 그라파나
- 이더리움
- Golang
- 스위프트
- 파이썬 동시성
- Hyperledger fabric gossip protocol
- 파이썬 머신러닝
- 블록체인
- Akka
- 플레이프레임워크
- play2 강좌
- 파이썬
- 안드로이드 웹뷰
- 엔터프라이즈 블록체인
- Actor
- 스칼라 동시성
- hyperledger fabric
- CORDA
- 하이브리드앱
- Play2 로 웹 개발
- 스칼라
- Play2
- 주키퍼
- 하이퍼레저 패브릭
- Adapter 패턴
- 파이썬 데이터분석
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |