일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- algorithmtraining
- 서평
- algorithmTest
- Java
- 재테크
- 독서
- 다독
- 백준알고리즘
- 지혜를가진흑곰
- 자바
- 알고리즘트레이닝
- 알고리즘 공부
- C
- 프로그래밍언어
- 성분
- 투자
- 주식
- 채권
- algorithmStudy
- 독후감
- C++
- 책을알려주는남자
- 자바스크립트
- 책알남
- 돈
- 화장품
- 프로그래머스 알고리즘 공부
- JavaScript
- 경제
- 알고리즘공부
Archives
- Today
- Total
탁월함은 어떻게 나오는가?
Service interface와 serviceImpl을 만드는 이유 본문
반응형
1.OOP의 인터페이스와 Loose coupling
interfafce는 객체의 사용 방법을 정의한 타입이다. 객체의 교환성을 높여주기 때문에 다형성을 구현하는데에 매우 중요한 역할을 한다.
개발 코드를 수정하지 않고도 사용하는 객체를 변경할 수 있다는 것!
인터페이스 타입에 어떤 구현 객체를 대입하는지에 따라 실행결과가 달리지도록 만드는 기술이므로 기존 구현객체와 비즈니스 로직이 다른 기능을 추가할 경우 다른 구현 객체를 만들어 사용할 수 있게 된다. 따라서 객체지향의 장점인 유지보수 측면에서 매우 효율이 좋아진다.
그리고 OOP에서는 클래스를 작게 나누어 다른 클래스와 의존관계를 낮추는것이 중요하다. 즉, 결합도를 느슨하게 만드는 것인데, 이 또한 유지 보수 측면에서 쉽다는 장점이 존재한다.
2. AOP(Aspect Oriented Programming)
AOP는 관점 지향 프로그래밍이라고 불린다. 관점 지향은 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하는 것이다. 여기서 모듈화란 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것을 뜻한다.
AOP에서 각 관점을 기준으로 로직을 모듈화 한다는 것은 코드들을 부분적으로 나누어서 모듈화함을 의미한다. 소스 코드상에서 다른 부분에 계속 반복해서 쓰는 코드들을 발견할 수 있는 데 이것을 Crosscutting Concerns(흩어진 관심사)라고 한다.
반응형
'[Snow-ball]server > 스프링(Spring)' 카테고리의 다른 글
[Spring] MVC1 이랑 MVC2의 차이점 (0) | 2021.07.07 |
---|---|
MVC 패턴 (모델-뷰-컨트롤러/Model-View-controller) (0) | 2021.07.07 |
이클립스로 스프링뷰트를 하면서 메이븐 다운로드 받는방법 (0) | 2021.03.10 |
리눅스(linux)에서 Vue(뷰) 환경설정 구축하는방법 (0) | 2021.02.19 |
[Spring] SpringFramwork(스프링프레임워크)에 대해서 (0) | 2021.02.08 |
Comments