일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코드리뷰
- 서블릿
- Paging
- 스프링부트
- mock
- 우아한테크코스
- 세션
- CircuitBreaker
- REDIS
- 트랜잭션
- 자바
- yml
- MSA
- 우아한세미나
- 프리코스
- 레벨2
- 프로그래머스
- HTTP
- AOP
- JUnit5
- 미션
- Level2
- Docker
- 우테코
- AWS
- 의존성
- JPA
- 백준
- Spring Batch
- 스프링 부트
- Today
- Total
목록코드리뷰 (3)
늘
1. 의존성 주입 방법 setter를 통한 주입 생성자를 통합 주입 필드를 통한 주입 스프링 공식 문서에서도 생성자를 통한 주입을 추천한다고 한다. 생성자를 통한 장점으로는 아래와 같다. setter를 통한 주입과 달리 필드에 final을 선언해줄 수 있고 불변으로 만들 수 있다는 장점이 있다. 결합도를 낮춰 테스트 코드 작성에 용이해지는 장점이 있고 null을 주입하지 않는 한 NPE가 발생하지 않도록 보장해준다. 순환 참조가 발생하면 애플리케이션 실행 시 미리 알려주기 때문에 예방할 수 있다. 왜냐하면 생성자 주입 방식은 객체가 생성되고 필요한 빈을 빈팩토리에서 생성해서 생성자를 찾아 주입하기 때문이다. 반면에 다른 2가지 방법들은 빈이 먼저 생성된 이후에 객체가 생성되고 주입이 되기 때문에 빈을 생..
1. 자료구조를 사용하자 여러 값들을 담을 때 생각없이 매번 List를 쓰는 버릇을 고쳐야겠다. 적절한 자료구조를 사용하면 코드가 많이 줄여지고 깔끔해진다. 2. 정적 팩토리 매서드 네이밍 정적 팩토리 메서드 명명 규칙 from : 매개변수 하나를 받아서 해당 타입의 인스턴스를 반환하는 형변환 메서드 ex) Date date = Date.from(instant); of : 매개변수 여러개를 받아서 적합한 타입의 인스턴스를 반환하는 집계 메서드 ex) Set cards = EnumSet.of(JACK, QUEEN, KING); valueOf : from과 of의 더 자세한 버전 ex) BigInteger prime = BigInteger.valueOf(Integer.MAX_VALUE); instance o..
리뷰를 폭탄으로 맞았다 🤣🤣 오히려 좋다.. 배울게 너무 많아서 😬😬 이번 2주 차 미션을 진행하면서 새롭게 배운 것들이 많다. 1. 멀티 스레드 환경에서 상태 공유 바로 찾아보았다. 학교 운영체재 시간에 배운 동시성 이슈라고 생각했다. final로 완전한 불변이 안 만들어져서 아예 내부 상태를 갖지 않도록 하는 게 좋은 것 같다! 당연한 거지만 자주 까먹는 것 같다.🤣 이번에는 기억해 두자!! 2. 방어적 복사 핵심은 객체 내부의 값을 외부로부터 보호하는 것이라는 것을 유념하자. 생성자의 인자로 객체를 받았을 때 외부에서 넘겨줬던 객체를 변경해도 내부의 객체는 변하지 않아야 한다. 따라서 방어적 복사가 적절하다. getter를 통해 객체를 리턴할 때 이 상황에선 방어적 복사를 통해 복사본을 반환해도 좋..