Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 인프런
- Til
- ChatGPT
- 조건문과 반복문
- 이노베이션 캠프
- 이것이 자바다
- 이것이 자바다 연습문제
- 이노베이션캠프
- 이노캠
- Java
- 백준
- JAVA 기초
- 스프링 입문강의
- 트리 지름 구하기
- ArrayList 개념
- Comparable과 Comparable
- 자료구조
- 이노베이션캠프 동북
- 챗GPT 명령어 작성팁
- 이것이 자바다 13장
- 객체지향
- 3장 확인문제
- dfs
- 자바 언어 기초
- 자바의 정석 6장
- 이것이 자바다 확인문제
- BFS
- 채팅GPT
- 웹개발 기본지식
- 자바
Archives
- Today
- Total
기록공간
[TIL] 05.16 본문
반응형
배운 것
인프런 HTTP 웹 기본지식 Part 1
스프링 핵심 기본편
알고가는 것
강의를 듣다가,
MemberService memberService = new MemberServiceImpl() 이런 형태의 객체 생성 이유가 궁금했었다.
이것은 MemberService 인터페이스를 구현한 MemberServiceImpl` 클래스의 인스턴스를 생성한다는 의미이다.
이렇게 변수를 선언한 이유는 아래와 같다고한다.
1. 다형성(Polymorphism) 활용: 인터페이스를 사용하면 다양한 구현체를 사용할 수 있다. 즉, `MemberService` 인터페이스를 구현한 다른 클래스가 여러 개 있다면, 이러한 인스턴스들을 선택적으로 사용할수있다. (유연성 증가)
2. 결합도(Loose Coupling) 감소: 인터페이스를 사용하면 구현체와의 결합도를 낮출 수 있다는 장점이있다.
(역할과 구현 분리)
3. 테스트 용이성 향상: 인터페이스를 사용하면 구현체를 쉽게 교체할 수 있기 때문에, 테스트 시 가짜 객체(Mock Object)를 사용하여 테스트를 진행할 수 있다.
반응형
'TIL(Today I Learned)' 카테고리의 다른 글
[TIL] 05.23 개발일지 (0) | 2023.05.23 |
---|---|
[TIL] 05.22 개발일지 (0) | 2023.05.22 |
[TIL] 05.12 개발일지 (0) | 2023.05.12 |
[TIL] 웹개발 종합반 4주차 (0) | 2023.05.11 |
[TIL] 웹개발 종합반 3주 (0) | 2023.05.10 |