TIL - IoC | DI | AOP | PSA

su·2023년 6월 16일
0

TIL

목록 보기
23/93
post-thumbnail

IoC - 제어의 역전

Inversion of Control의 줄임말
클래스 안에서 객체를 직접 생성하지 않고, 다른 곳에서 객체를 받아와서 사용하는 것

1) Fruits 클래스 내에서 Apple 객체를 직접 만듦

  • 이 경우, 제어의 흐름이 Fruits -> Apple
public class Fruits {
	Apple apple = new Apple();
}

2) Fruits 클래스 내에서 다른 곳에서 받아온 객체를 할당
- 제어의 흐름이 변경됨

public class Fruits {
	private Apple apple;
}

DI - 의존성 주입

Dependency Injection의 줄임말
객체를 직접 생성해서 사용하는 것이 아닌, 스프링 컨테이너를 통해서 객체를 받아와서 사용함
필요한 객체를 해당 객체에 전달 (주입받음)

AOP - 관점 지향 프로그래밍

Aspect Oriented Programming의 줄임말
핵심적인 부분과 부가적인 부분을 나누어서 모듈화 하는 것
부가 기능 측면에서 보았을 때, 공통된 요소를 추출하자는 의미
즉, 공통된 기능을 재사용하는 기법
→ 이렇게 하면 핵심적인 부분에만 집중할 수 있게 됨
출처: https://velog.io/@backtony/Spring-AOP-%EC%B4%9D%EC%A0%95%EB%A6%AC

PSA - 이식 가능한 서비스 추상화

Portable Service Abstraction의 줄임말
기술들을 추상화하여 개발자가 편리하게 사용 가능한 인터페이스
기본적으로 JDBC를 통해서 접근 가능하며, ORM을 이용하려고 한다면 JPA를 통해서 접근도 가능
출처: https://sabarada.tistory.com/127

profile
(❁´◡`❁)

0개의 댓글