[Spring boot] 1강 스프링의 핵심

연이·2022년 10월 24일
1

💻 스프링의 핵심이란 무엇인가요?

1. Framework

  • 틀 + 동작하다
    틀 안에서 동작하다
    만든이유 : 틀에서 벗어나지않게 개발해라

2. Spring은 오픈 소스다.

오픈소스 : 소스코드가 공개 되어 있다.
-> 내부를 뜯어 고칠 수 있다.

3. 스프링은 IOC컨테이너를 가진다.

IOC (Inversion of Controll)

제어를 역전한다. 주도권이 스프링한테 있다 !

4. Class Object Instance

  • class -> 설계도
  • object -> 실체화가 가능한 것

ex) 누누는 실체화가 가능
캐릭터는 추상적인것이기 때문에 실체화가 불가능하다

instance -> 실체화가 된 것
누누가 게임속에서 눈덩이를 굴리고있다 -> 실체화

ex)
가구는 실체화가 불가능하다
의자나 침대는 실체화가 가능하기때문에 object다
이게 현실로 튀어나오면 instance가 된다 !

IOC

: 개발자가 의자를 new해서 메모리 heap에 올리게 되면

public void make(){
	chair s = new chair();
}

s는 그 메서드가 실행되는 순간에만 있음
다른 메서드에서 사용하려면 아래처럼 해야한다.

public void use(){
	chair s = new chair();
}

하지만 이렇게 하면 새로운 s가 또 추가됨
두 s는 서로 같지 않음

이 주소를 관리하는것은 각각의 메서드이고
공유 로직을 짜기 힘들다.

그래서 Spring이 IOC를 해줌
Object를 읽어서 직접 메모리에 올려준다.

5. DI (Dependency Injection) 의존성 주입

원래는 new를 해서 그 객체의 주소를 내가 관리했다
이제는 Spring이 스캔해서 오브젝트를 메모리에 띄움 (IOC)

Spring이 관리하는 이 객체를 내가 원하는 모든곳에서 가져와서 사용할 수 있다 (DI)

의자를 사용하고 싶으면 그대로 가져가서 사용할 수 있다 !

이 글은 인프런에서 최주호 강사님의 스프링부트 개념정리(이론)을 보고 정리한 글입니다.

0개의 댓글