
개요삼월의 첫 저녁, 앤드루 포터의 책을 읽다가 니나 시몬을 만나고 다시 니코스 카잔차키스의 묘비명까지 이어진 이야기를 적어둔다. 세상이 참 좋다. 구글링과 유튜브를 통해서 생각과 지식이 자유로이 뻗어간다.생각의 흐름앤드루 포터앤드루 포터와 그의 단편집인 “빛과 물질에 관한 이론”은 어디선가 자주 들어서 익숙했지만 이번에 처음으로 단편집 “사라진 것들”을 읽게 되었다. 이제 세 편을 읽었지만 기발하거나 자극적인 부분이 없이 차분하고 자연스럽다는 호감을 가지고 읽고 있다. 40, 50대 남자가 공감할 듯한 내용이다.첫 단편 “오스틴”에서 다음 문장에 공명했다. 옳은 편 그른 편을 넘어서 모두 가여운 삶이다. 소설 토지에 나오는 악당들인 귀녀, 삼수, 지삼만, 김두수와 같은 인물들도 모두 슬픈 인간들인것이다..

개요RequestID, Logger 미들웨어를 고도화하여 요청, 응답에 대한 로깅을 구조적으로 남겨서 추적, 모니터링에 유용하게 만들어보자.링크GitHub 브랜치: https://github.com/nicewook/gocore/tree/6_logging블로그 링크Go 백엔드 1: 클린 아키텍처 기본Go 백엔드 2: 설정Go 백엔드 3: 데이터베이스 연결Go 백엔드 4: 유닛 테스트Go 백엔드 5: 의존성 주입Go 백엔드 6: 미들웨어Go 백엔드 7: 로깅RequestID 미들웨어// AS-ISe.Use(middleware.RequestID())// TO-BEe.Use(middleware.RequestIDWithConfig(middleware.RequestIDConfig{ RequestIDHandler: ..

개요백엔드 서버에는 다양한 미들웨어가 기본적으로 들어가고 또한 커스텀한 미들웨어를 만들어 추가하기도 한다.Echo 서버에 중요 미들웨어를 추가해보자.링크GitHub 브랜치: https://github.com/nicewook/gocore/tree/5_middleware블로그 링크Go 백엔드 1: 클린 아키텍처 기본Go 백엔드 2: 설정Go 백엔드 3: 데이터베이스 연결Go 백엔드 4: 유닛 테스트Go 백엔드 5: 의존성 주입Go 백엔드 6: 미들웨어미들웨어 의존성 추가middlewares 패키지의 RegisterMiddlewares 를 주입하였다.func main() { app := fx.New( fx.Provide( NewConfig, NewDB, ..

개요현시점 코드에서 User라는 도메인을 가지고 있을 때의 의존성 주입 부분을 보자. 환경 → 설정 → 데이터베이스 연결 → 리포지토리 → 유스케이스 → 핸들러 순으로 의존성을 주입하고 있다. 단순한 서버에서는 이처럼 명시적으로 의존성을 이해하고 주입할 수 있지만 프로젝트가 커질수록 아래와 같은 문제들이 발생한다:순환 참조(Circular Dependency): 의존성이 서로 얽히며 무한 루프에 빠질 수 있다.초기화 순서 문제: 의존성이 잘못된 순서로 초기화되면 실행 중 에러가 발생할 수 있다.환경별 구성 차이: 환경(dev, qa, stg, prod)마다 필요한 구성 요소가 다를 수 있다. env := flag.String("env", "dev", "Environment (dev, qa, stg, pr..

개요지금까지 handler, usecase, repository 계층을 둔 클린 아키텍처 구조의 백엔드를 구현하였고, 런타임에 설정을 가져와 데이터베이스에 연결하고, 이 연결을 repository에 주입하여 데이터베이스 작업을 하도록 하였다.기능 구현에 집중하여 테스트 코드가 없이 구현을 해왔는데 이제는 코드의 안전성을 높이기 위해 유닛테스트를 추가해보자. 유닛 테스트를 작성하면 작은 코드 단위에서 문제를 빠르게 발견하고 수정할 수 있고, 리팩터링 시에 기존 기능이 정상 동작하는지 쉽게 검증할 수 있다. 그리고, 자동화된 테스트로 반복적인 수작업 검증을 줄여 개발 효율성이 높아진다.링크GitHub 브랜치: https://github.com/nicewook/gocore/tree/3_unit-test블로그 ..

- Total
- Today
- Yesterday
- Echo
- solid
- 독서
- agile
- 클린 아키텍처
- 오블완
- intellij
- 클린 애자일
- 티스토리챌린지
- 영화
- OpenAI
- ChatGPT
- bun
- 독서후기
- 엉클 밥
- postgres
- go
- notion
- API
- middleware
- backend
- gocore
- golang
- websocket
- strange
- clean agile
- 인텔리제이
- Gin
- Bug
- 잡학툰
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |