아키텍처갑자기 아키텍처?스트는 품질을 위한 도구이면서, 설계를 위한 도구임.Testability를 높여야 설계를 위한 도구로 사용 가능.테스트와 설계는 상호보완적.스트가 어렵다면 아키텍처가 정답을 알려줌. 개발하기 어렵다면, 테스트하기 쉽도록 개발하면 편하다. 아키텍트의 정의아키텍처란 어떤 비즈니스 문제를 해결하기 위해 준수해야하는 제약을 넣는 과정!아키텍처를 지키려고 하다보면 오히려 더 불편해짐.이로 인해 꼭 필요한 것이 아니라면 차라리 없는 것이 나을 수 있음.그럼에도 아키텍처를 사용하는 이유?아키텍처를 사용하기 전 문제 상황을 정확하기 인지하는 것이 중요함.꼭 써야하는 이유를 파악하고, 구성원들이 모두 동의해야함.아키텍처는 종착지가 아닌 여정에 가깝고, 고정된 산출물이 아니라 계속된 탐구 과정에 더..
각Service를 추상화 ServiceImpl로 구현체 이름을 변경Controller 패키지에Service 인터페이스 생성public interface UserService { User getByEmail(String email); User getById(long id); User create(UserCreate userCreate); User update(long id, UserUpdate userUpdate); void login(long id); void verifyEmail(long id, String certificationCode);}public interface CertificationService { void send(String email, long ..
service에 테스트코드 넣기 FakeRepository 구현public class FakeUserRepository implements UserRepository { private final AtomicLong autoGeneratedId = new AtomicLong(0); private final List data = new ArrayList(); @Override public Optional findById(long id) { return data.stream().filter(item -> item.getId().equals(id)).findAny(); } @Override public Optional findByIdAndStatus(long i..
mock, h2, SpringBoot 없이 테스트 작성하기. 대망의UUID가 등장!@Testpublic void User는_UserCreate_객체로_생성할_수_있다(){ // given UserCreate userCreate = UserCreate.builder() .email("kok202@naver.com") .nickname("kok202") .address("Pangyo").build(); // when User user = User.from(userCreate); // then assertThat(user.getId()).isEqualTo(0L); assertThat(user.getEmail())...
목표1. 도메인과 영속성 객체 구분2. 우리 시스템이 외부 시스템과 독립적이게 구성 현재Entity 객체들을 손볼 필요가 있음.UserEntity에 대응되는User 클래스 생성. Entity와 같은 필드를 가진 도메인 클래스 생성.public class Post { private Long id; private String content; private Long createdAt; private Long modifiedAt; private UserEntity writer; @Builder public Post(Long id, String content, Long createdAt, Long modifiedAt, UserEntity writer) { this.id = id; this.content = c..
- Total
- Today
- Yesterday
- server
- 알고리즘
- 연합 동아리
- 회고
- 런칭데이
- 인프런
- 해커톤
- 6팀
- 백엔드
- 로그 모니터링
- python
- 디프만
- 해커톤 후기
- 유저 정보 가져오기
- 15기
- spring boot
- 육지행
- 중간발표
- it 동아리
- AWS
- 글로컬
- 파이썬
- 서버
- 리빙랩
- tdd
- aws 해커톤
- test
- 육.지.행
- 프로그래머스
- 스터디
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |