Hands-On Full-Stack Development with Go 책을 참고하여 Go의 CRUD web api를 만들어보았다. Pagenation 및 Swagger를 추가한 코드는 git에서 확인가능하다. https://github.com/deagwon
Don’t just check errors, handle them gracefullyErrors, 체크만 하지말고 우아하게 처리하세요.너무 좋은 포스트 원문과 번역을 읽게되었다. 내가 이해한 내용을 바탕으로 요약해보고자 한다.모든 설명과 소스코드는 원문과 번역을 참고하
자주 마추지는 상황이다.데이터를 추가하면서PK가 중복되는 경우는추가하지 않으면서업데이트 or 무시할 때mysql에서 가장 효율적이로 이런 기능을 수행하는 방법이다.gorm에서는 OnConflict 객체를 db.Clauses에 추가하는 방식으로 기능을 구현하였다.clau
클래스나 메소드에서 사용할 내부 타입을 컴파일 순간에 지정하는 방법으로, 타입을 일반화하는 것을 의미한다.위와 같이 동일한 동작을 하지만, 타입이 다른 여러개의 함수를 생성할 때, Number 라는 타입을 지정하여 제네릭 함수를 만들 수 있다.이 Number라는 타입
gRPC란? > gRPC란 구글에서 개발한 RPC(remote procedure call) 시스템이다. gRPC는 데이터 전송을 위해서 HTTP/2를 사용하고, IDL(interface description language)로 Protocal Buffer를 사용한다
요즘 TDD를 실천하면서 test코드를 열심히 작성하고 있다.그런데 test코드 사이에서 코드의 중복이 발생하는 경우가 종종 발생하였다.이를 태면,사용자가 컨텐츠를 만드는 서비스를 생각해보자.사용자를 생성하는 api는 더미 사용자 데이터 생성사용자 생성 api 호출반
Dependency Injection 의존성 주입, 의존관계 주입 이란 무엇일까? A의 변화가 B에 영향을 준다면 B는 A에 의존한다. A가 변할 경우 B는 영향을 받는다. 즉, B는 A에 의존한다. 이런 경우 B를 생성하고 실행하기 위해서는 A가 있어야한다.A, B
나는 다음과 같이 2 stage로 도커파일을 구성하여, 개발 - 배포 컨테이너를 분리하였다.개발환경에서는 아무런 문제가 없었는데 배포하고 난 후 timezone과 관련된 에러가 발생했다.찾아보니 builder 이미지에는 들어있는 timezone 정보가 scratch 이