인프런 김영한 선생님의 자바 스프링 기본편을 듣고 정리한 내용입니다.
스프링이라는 이름은 EJB라고 스프링 이전에 쓰던 프레임워크가 지옥같아서
이 지옥같은 겨울이 지나고 봄이 왔다! 라는 뜻에서 지어졌다고 한다.
재밌따..
스프링은 왜 만들어졌을까?
- 스프링은 자바 언어 기반의 프레임워크
- 자바 언어의 가장 큰 특징은 객체 지향 언어임!
- 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크다.
객체 지향 프로그래밍은 뭔가?
- 명령어 목록이 아니고, 객체 들의 모임으로 파악하고자 하는 것
- 유연하고 변경이 용이함.
다형성
- 역할과 구현으로 세상을 구분한다.
- (역할)운전자는 (구현)자동차를 바꿔도 운전할 수 있다. ( ! )
- 클라이언트는 역할 = 인터페이스만 알면 된다.
인터페이스
- 인터페이스를 안정적으로 잘 설계해야함.
- 이걸 잘해야 잘하는 개발자.
좋은 객체 지향 SOLID의 원칙
우왕 이거 정처기할 때 배운건데...!
- SRP 단일 책임의 원칙 : 변경이 있을 때 파급이 적어야 한다.
- OCP 개방-폐쇄 원칙 : 확장에는 열려 있고 변경에는 닫혀 있어야 한다. (다형성을 생각해보자.. 근데 코드를 보지 않으면 이해하기 힘들다. 예제 때 다시 만나요!)
- LSP 리스코프 치환 원칙 : 객체는 프로그램의 정확성을 깨트리지 않으면서 하위 인스턴스로 바꿀 수 있어야 한다.
- ISP 인터페이스 분리 원칙 : 인터페이스를 최대한 분리해서 역할 쪼개기
- DIP 의존관계 역전 원칙 : 구현 클래스가 아닌, 인터페이스에 의존하라는 뜻.
인터페이스
- 인터페이스를 안정적으로 잘 설계해야함.
- 이걸 잘해야 잘하는 개발자.

'커리어 > 백엔드' 카테고리의 다른 글
| [JPA] 영속성 컨텍스트 (0) | 2025.10.11 |
|---|---|
| [Spring] 빈 생명주기 콜백, 빈 스코프 (4) | 2025.10.09 |
| [Spring] 컴포넌트 스캔, 의존관계 주입 (0) | 2025.10.08 |
| [Spring] 싱글톤을 스프링에서 보장하는 방법 (2) | 2025.10.07 |
| [Spring] IoC, DI, 컨테이너 (0) | 2025.10.06 |