spring boot 시작하기

‍박소연·2023년 8월 16일

spring 컨셉 이해하기


제어의 역전(IoC)

제어의 역전은 다른 객체를 직접 생성하거나 제어하는 것이 아니라 외부에서 관리하는 객체를 가져와 사용하는 것을 말한다. 객체들을 관리하기 위해 사용한다.

public class A {
	//코드에서 객체 생성하지 않고, 어디선가 받아온 객체를 b에 할당
	private B b;
}

의존성 주입(DI)

어떤 클래스가 다른 클래스에 의존한다는 뜻으로, 제어의 역전을 구현하기 위해 사용한다.

public class A {
	//A에서 B를 주입받음
	@Autowired
    B b; //B는 빈이다.
}

빈(Bean)

스프링 컨테이너가 생성하고 관리하는 객체이다.

@Component //클래스 MyBean 빈으로 등록
public class MyBean {
}

관점 지향 프로그래밍(AOP)

프로그래밍에 대한 관심을 핵심 관점, 부가 관점으로 나누어서 관심 기준으로 모듈화하는 것을 의미한다.

부가 관점 코드를 핵심 관점 코드에서 분리할 수 있게 해주어 프로그래머가 핵심 관점 코드에만 집중할 수 있도록 해주고, 프로그램의 변경과 확장에도 유연하게 대응이 가능하다.

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

어느 기술을 사용하던 일관된 형식으로 처리하도록 하는 것이다.


스프링 구조 이해하기

리포지토리

데이터베이스와 상호작용하기 위한 객체이다.

서비스

웹 사이트에서 벌어지는 모든 작업으로 데이터를 처리하기 위한 로직, 예외 처리, 프로세스를 구현하기 위한 로직이다.

1개의 댓글

comment-user-thumbnail
2023년 8월 16일

개발자로서 성장하는 데 큰 도움이 된 글이었습니다. 감사합니다.

답글 달기