반응형

Solid 2

[JAVA] IoC, DI, DIP

친구와 얘기하던 중, Spring IoC, DIP 개념에 대한 얘기가 나왔다. 이 개념들은 구글링하면 워낙 잘 정리된 글들이 많아 별도로 작성하지 말까 고민도 했다. 하지만 해당 개념들은 객체지향에서 매우 중요하기 때문에 한번쯤은 포스팅하는 것이 좋을 듯하여 정리해보려 한다. IoC(제어의 역전) Inversion of Control, 즉 IoC는 제어의 역전이라고 번역된다. 쉽게 말하자면 어떤 객체에 대한 관리를 나 대신 다른 애한테 맡긴다는 것이다. 스프링을 쓴다면 스프링에게 특정 객체의 생성과 소멸을 빈으로 등록해 맡겨주는 것으로 생각하면 된다. 즉, 제어권을 내가 아닌 스프링 컨테이너에게 빈의 생성, 의존 관계 설정을 맡기는 것이므로 IoC가 이루어지는 것이다. 스프링을 사용하지 않는다고 하더라도..

[호호 스터디] 설계 원칙: SOLID_객체지향과 디자인 패턴 Chapter 5

호호 스터디에서 Chapter 5: 설계 원칙: SOLID를 듣기 전에, 미리 책을 읽고 공부한 내용을 기록한 포스팅이다. SOLID 원칙 어떻게 보면 귀에 딱지가 앉을 정도로 많이 들어서 너무 뻔하게 느껴질 수 있다. 하지만 막상 코드를 짤 때는 자신도 모르는 사이에 잘 지켜지지 않는 경우가 많다. 애초에, 객체의 값을 꺼내지 말고 메시지를 던지라는 것조차도 코드를 짜다보면 잘 안지켜지는 경우가 많은 것처럼 말이다. 이번 포스팅에서 SOLID 원칙을 살펴보긴 하겠지만, 제일 좋은 건 실전을 통한 많은 경험을 해보는 것인 듯하다 :) 단일 책임 원칙 (Single Responsibility Principle : SRP) 클래스는 단 한 개의 책임을 가져야 한다. 객체지향적인 코드를 짜기 위해 최대한 책임..

1
반응형