| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- Spring
- 쿠버네티스
- AWS
- JPA
- 서블릿 컨테이너
- CORS
- docker compose
- kafka
- Spring Data JPA
- JdbcTemplate
- DI
- 페이징
- Web
- docker
- @ComponentScan
- JPQL
- JWT
- 컨테이너
- redis
- Dead Letter Queue
- DLQ
- 스프링 부트
- securitycontextholderfilter
- MSA
- dockerhub
- mybatis
- Spring Container
- Routing Key
- 지연 로딩
- @Transactional
- Today
- Total
목록ioc (2)
look-forest
제어의 역전 IoC(Inversion of Control) 프로그래머가 직접 객체 생성, 연결하지 않고 프레임워크가 해준다. 즉, 프레임워크의 라이프 사이클 상에서 이루어진다. 이처럼 프로그램의 제어 흐름을 직접 제어하는 것이 아니라 외부에서 관리하는 것을 제어의 역전(IoC)이라 한다 스프링의 경우 빈에 대한 제어권을 프로그래머가 아닌 프레임워크가 가져감으로써, OCP, DIP 원칙을 가능케 해준다. [예제]에서, 기존 코드는 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성하고, 연결하고, 실행했다 그러나 AppConfig가 등장한 이후에 구현 객체는 자신의 로직을 실행하는 역할만 담당한다 → 프로그램의 제어 흐름은 이제 AppConfig가 가져간다 의존관계 주입 DI(Dependency ..
스프링은 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크라고 하였다. 그 강력한 특징이 뭔지부터 알아보자. 객체 지향의 특징 - 객체지향 프로그래밍은 프로그램을 유연하고 변경에 용이하게 만드므로 대규모 소프트웨어 개발에 많이 사용된다. - 세상을 '객체'들의 상호작용으로 파악하고자 하는 것. 각각의 객체는 메시지를 주고받고, 데이터를 처리한다. '유연하고 변경에 용이' 하다의 의미 레고 블록 조립하듯이, 부품 갈아 끼우듯이 컴포넌트를 쉽고 유연하게 변경하면서 개발할 수 있는 방법 → 다형성(Polymorphism): 여러 가지 형태를 가질 수 있는 능력 다형성을 만들어내기 위해: 역할과 구현으로 세상을 구분하자 자동차가 바뀌어도 운전자에게 영향을 미치지는 않는다! 자동차의 인터페이스는 동일하니까..