개발 13

시간값 발행 주체는 누가 되어야 하는가?

🍎 개발에 있어 시간 값을 정확하게 다루는 것은 아무리 강조해도 지나치지 않습니다.- 한 예로 시간 값을 정확하게 관리하지 않으면 데이터의 일관성을 유지하기 어려워질 수 있고 이는 예상치 못한 상황을 발생시키거나 시스템의 신뢰성을 저하시킬 수 있습니다.🍎 상황- 포춘 쿠키 이벤트 요구 사항을 해결하는 중 "하루 한 번의 포춘 쿠키 메시지만 얻을 수 있다"는 세부 요구사항을 해결하기 위해 Application Layer에서 Instant.now()를 사용해 시간값을 발행해 사용 💭 생각하게 된 이유- 위와 같이 Application Layer에서 시간값을 발행한 이유는 아래 두 이유 존재시간값을 외부에서 주입해 사용함으로 시간값이 포함된 로직 테스트 가능하다고 판단23:59:59에 발생한 API가 D..

Dev 2024.09.03

General한 Cache 적용 위치

🍎 일반적인 상황에서 Cache를 위치시킬 때 참고할만한 사항을 글로 정리합니다. 일반적인 상황이며 경우에 따라서 Cache 적용 위치가 달라질 수 있습니다.❓ Cache는 무엇이며 어떨 때 사용해야 할까?- Cache는 데이터를 저장하여 빠르게 접근할 수 있도록 하는 메모리 구조 또는 저장소입니다. 자주 사용되는 데이터나 계산 결과를 미리 저장해 두어, 동일한 데이터에 대한 요청이 있을 때 데이터를 다시 계산하거나 원본 데이터 소스에 접근하는 대신, 저장된 데이터를 빠르게 제공함으로써 성능을 개선할 때 사용합니다.🍏 어느 위치에 Cache를 적용했을 때 성능을 높일 수 있을까요?병목지점 파악 : 병목지점은 여러 요인에 의해 파악할 수 있습니다. 데이터가 얼마나 자주 변경되는지, 얼마나 자주 조회되는..

Dev 2024.09.01

[TIP] 필요조건, 충분조건, 필요충분 조건

🍎 해당 글을 정리하게 된 이유?- 개발 시, 모델 A가 모델 B에게 영향을 주는 것을 더 선명하게 알기 위해 정리합니다.- 위 개념을 확실히 이해하면, 논리적 사고와 문제 해결에 필수적인 도구로 작용하며 깊은 사고를 할 수 있게 도와줍니다.🍏 필요조건이란?- 어떤 일이 일어나기 위해 반드시 있어야 하지만 그것만으로는 충분하지 않은 조건e.g) 비가 오기 위해서는 구름이 있어야 한다.- 비가 오려면 구름이 꼭 필요하지만 구름이 있다고 해서 반드시 비가 오는 것은 아닙니다. 따라서 구름은 비가 내리기 위한 필요조건입니다.🍏 충분조건이란?- 어떤 일이 일어나게 하는데 충분하지만 그것이 필요하지 않은 조건e.g) 비가 온다면 땅이 젖는다.- 비가 오면 땅은 반드시 젖습니다. 그러나, 땅이 젖을 수 있는..

잡다한 글 2024.09.01