일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- 프로그래머스
- Kubernetes
- Di
- IntelliJ
- k8s
- Oracle
- dabase
- CI/CD
- docker
- map
- Spring
- vuejs
- java
- hibernate
- CI
- 코딩테스트연습
- superBuilder
- Vue
- JPA
- SpringMVC
- 알고리즘
- cd
- builder-pattern
- DevOps
- 뷰
- 자바
- CKA
- programmers
- 해시맵
- ORM
- Today
- Total
목록2024/03 (3)
문홍의 공부장
서비스 로직 간의 강결합이 주는 문제점 애플리케이션을 개발하면서, 한 번의 요청에 의해 2가지 이상의 기능을 수행하는 경우가 빈번하게 발생한다. 혹은, 간단하게 시작된 도메인 로직이 서비스가 확장됨에 따라 여러가지 추가 로직이 늘어나는 경우 역시 발생한다. 이러한 상황에서, 다수의 기능을 하나의 메서드에서 코드로 구현하면 기능 간 강결합이 생기게 된다. 강한 결합이 생기면 생길수록 로직을 분리해서 관리하기 어렵고, 특정 기능에 문제가 발생하였을 때 이를 처리하는 로직 역시 섞이게 된다. 클라이언트에서 회원 가입 요청이 발생하였을 때, 아래와 같이 프로세스가 진행된다고 가정해보자. (로직에서 사용한 메서드는 별도 구현이 되어있음을 전제한다.) 회원 등록 가입 축하 메일 발송 @Service @Require..
CompletableFuture 는 기존의 Future 인터페이스의 한계를 보완하기 위해 등장한 클래스이다. Future 인터페이스는 비동기 작업에 대한 결과값을 리턴받기 위해 사용되었으나, 아래와 같은 한계점이 존재한다. 외부에서 완료시킬 수 없고, get(long timeout, TimeUnit unit) 의 timeout 설정으로만 완료 가능 블로킹 코드(get()) 을 통해서만 이후 결과를 처리할 수 있음 여러 Future 를 조합하거나, 예외 처리 할 수 없음 CompletableFuture 는 이름 그대로 외부에서 '완료 가능한' Future 이다. 또한, CompletionStage 인터페이스를 구현하여 작업의 중첩, 완료 후 콜백(Future 간 조합)을 가능하게 하였다. public cl..
### 1. 새 회사 적응기 이직하고 적응하기 어려운 것이 여러가지가 있지만, 가장 큰 건 회사 규모가 커지면서 나의 역할은 작아졌다는 점이다. 아무래도 스타트업은 한 사람이 여러 업무를 하기 마련인지라, 개발자가 기획자이기도 개발자이기도 데브옵스 엔지니어이기도 QA 이기도 DBA 이기도 했는데, 지금은 모든 역할이 쪼개져 있다. 물론 이건 장점이자 단점이다. 전 직장에서 많이 했던 말 (댁아리를 쥐어싸매며) 제발 기획자 좀 뽑아줘,,,, (셀프 머지와 동시에) 배포하겠습니다 (대충 TF 팀방에) 잠깐 DB 작업 좀 하겠습니다 (6시 이후) 김개발자 퇴근합니다 김QA 출근했습니다 이런식이었고 역할이 나눠지지 않고 한 사람이 알아서 다 해야 한다는게 스트레스 였는데, 지금은 다 분업되어 있으니 모든 게 협..