LostCatBox

LostCatBox

내 생각을 자유롭게 만들 때까지

(책읽기)도매인 주도 설계 시작하기
왜? DDD 개발 예시를 알기위해서 DDD의 정확한 예시를 알기위해 도메인 기본 지식 도메인 = 문제의 영역 도메인 모델 -> 엔티티와 값객체로 나눔 엔티티 - 식별값이 존재 값 객체 - 식별값이 없음 보통은 루트 엔티티 + 값 객체로 구성되어 하나의 애그리거트가 된다. 애그리거트 애그리거트는 하나의 Repository, 하나의 Transaction 단위를 가지는 집합이다. 다음과 같이 하위 도메인 모델들의 기능들의 상태변화 및 비즈니스 로직을 구현하고있다. 따라서 루트 애그리거트를 통하여 하위 도메인 모델의 ...
(항해) 2주차 주문 서비스 설계
주의사항 휴강 일정 : 5/3일 ~ 5/9일 모임 재개: 5/10 -> 7주차 정규모임 수료 일자 6/7 토요일 2주차 발제 내용 및 주의사항 https://www.notion.so/teamsparta/Chapter-2-1-1c52dc3ef51480bbb279dec0f57989c9?pvs=4 1주차에서는 통합테스트시 , 충전 동시 성공, 사용 동시 성공, 이외에도, 충전 사용 동시 모두 성공도 추가하면좋았음 단위테스트에서 또 아쉬웠던점. 서비스 포인트 충전 고유 기능에 대해 아래 부분에서 verify()를 했으면 ...
(책읽기) 오브젝트 (조영호 지음)
왜?객체 지향에 대해 더 잘 알고싶었다. 1장 : 객체, 설계 절차지향 프로세스와 데이터를 가진 객체가 분리된다. 즉, 프로세스를 처리하는 객체에서 다른 객체의 데이터를 불러와서 처리한다. 이는 데이터 제공하는 객체와 프로세스 객체간의 매우 큰 의존성이 존재한다. 객체 지향 객체의 책임을 분리하고, 프로세스는 데이터를 가진 객체에서 처리한다. 각 객체는 메시지를 통해서만 필요한 정보를 주고받는다.(대화) 이는 각 객체마다 책임, 역할, 협력을 강요하며, 객체 간의 의존성을 낮춰서 변경에 용이하도록 한다. 2장 : 객체...
(항해) 1주차 TDD 자료 정리 및 동시성 자료 정리
[1주차] TDD 학습 정리Test 가 중요한 이유 기능개발 필요 시 -> 어떤 테스트의 통과여부가 기능에 대한 검증 역할을 할수 있을지 생각 필요 초기 시 기능 먼저 개발 -> 내가 어떤 테스트를 먼저 짜야할지 항상 생각 -> 나중에 추가적으로 채울수있음 TDD 실력이 채워진 후 테스트 작성 -> 기능 개발 테스트 종류 End-to-end 대상 : 전체 애플리케이션의 흐름 목적 : 애플리케이션이 제공하는 기능을 사용자 시나리오 기반으로 문제 없는지 점검 내가 정의한 흐름의 처음부터 끝까지를 테스트...
(항해) 1주차 wil
문제 팀원들과 소통이 적었다. TDD에 대해서 단위테스트와 통합테스트를 어디까지 개발해야할까? 라는 고민은 계속했었다. 시도 코어 타임에 최대한 관심있던 기술 분야 이야기를 꺼냄 우선 완성 1주차 과제를 완성하고, 최대한 기능상의 문제가 없도록 단위테스트와 통합테스트를 작성하였다. 해결 private ,Public 등등 어떻게 해야할지 같이 고민을 나눳다. 알게된 것1. 지난 목표 회고 테스트에 대한 명확한 기준을 잡을 수 있었다. 다음 목표 설정 요구사항을 명확하게 정리하는 능력 사용 태그...
TDD by Example
참고 테스트 주도 개발 캔트 백 왜? 테스트 주도 개발을 통해 불안전한 코드 작성을 회피하고, 좀더 짜임세 있는 구조, 테스트를 잘하기 위한 구조로 설계 및 개발하기 위해 TDD 방법론TDD-> 원하는 테스트 작성후 실패(레드) -> 성공시키기(그린) -> 중복제거 및 구조변경(리팩토링) 테스트를 작성한다(마음속에 있는 원하는 오퍼레이션이 코드로 어떤식으로 나타나길 원하는지 생각하고, 이야기를 쓴다. 원하는 인터페이스를 개발하라,올바른 답을 얻기위한 필요한 이야기의 모든 요소를 포함시켜라) 실행 가능하게 ...
kotlin 부모-자식 속성 override시 생성주기 주의하기
참조 https://stackoverflow.com/questions/71054994/kotlin-class-inheritance-overriding-properties 본문큰일이없으면 property에다가 override 는 쓰지않는것이좋다. open-override 의 경우 init{} 단계에서 부모 클래스가 초기화 호출후, 자식 클래스가 init{}호출될텐데, 그럼 override된 필드는 부모 클래스의 초기화단계에서는 Null이다. 이것은 코틀린에서 상속과 프로퍼티 오버라이딩과 관련된 중요한 차이점입니다. 오버라이드를...
spring-batch 해보기
참조배달의민족 라빈의 스프링 배치 왜?사이드 프로젝트에서 spring-batch가 필요했다. 대법원 사이트에 들어가서 크롤링할 것들이 많았고, 이를 사프-DB에 저장해야하기 때문이다. batch 특성상 대용량 데이터 처리에 적합하기 때문에 적합하다고 판단하였다. 배치 구성 및 요약 LobLauncher job을 실행시켜주는 역할 JobRepository job, step excution 기록 역할 job, step에 대한 성공, 실패, readcount, write count 등의 값을 DB에 기록해주고 있으며, 개발자가...
bullet-journal
블렛저널 쓰는법 Chapter 2. 다이어리가 아니다, 나를 아는 연습이다 “불렛저널은 다이어리가 아니라, 역량이에요. 연습하면 할수록 불렛저널을 잘 쓰게 됩니다.” 캐롤은 불렛저널이 ‘상품’이 아니라 ‘능력’이라고 거듭 강조했어요. 심지어 꼭 불렛저널 다이어리를 사지 않아도 된다고 했죠. 아무 노트 한 권과 펜 한 자루만 있으면 된다고요. 내지도 상관없어요. 무지이든, 줄 노트든, 모눈종이든. 빈 노트를 펼치고 이 순서로 채워 넣으면 돼요. ① 색인**index** 쉽게 말해 노트의 목차예요. 몇 월의 기록이 몇 페이지에 있...
event-storming-review
왜? DDD 를 실행하기위한 전략 이벤트 스토밍 학습 https://www.youtube.com/watch?v=gihxS6eE1DM&t=1s (실 예시)https://blog.doctor-cha.com/event-storming-how-and-why https://devlos.tistory.com/54 https://it-roheerumi.tistory.com/152 용어정리기존 용어 도메인: 세상의 어떤 것 큰 문제점들 서브도메인: 도메인에서 각 문제의 특성에 따라 작게 나눈 것 작은 문제점들 병원전자의무기록...
avatar
lostcatbox
내 생각을 자유롭게 만들 때까지
FRIENDS
friendA friendB