본문 바로가기

Spring Framework/study7

IoC Container ? IoC (Inversion of Control) 한글로 번역하면 제어의 역전 이라는 말이다. 제어의 역전이라는 의미는 말 그대로 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라 외부에서 결정되는 것을 의미한다. 스프링 애플리케이션에서는 오브젝트의 생성과 관계설정, 사용 , 제거 등의 작업을 애플리케이션 코드 대신 독립된 컨테이너가 담당한다. 즉 컨테이너가 코드 대신 오브젝트에 대한 제어권을 갖고 있다고 해서 IoC라고 부른다. Spring container == IoC Container -----> 빈 팩토리 or 애플리케이션 컨텍스트 POJO(Plain Old Java Object ) 클래스 ? 직역하자면 명백한 오래된 자바 객체.....뭔가 이상하다. POJO => java beans 를 의.. 2019. 12. 23.
테스트 말 그대로 내 코드의 테스트를 말한다. 내가 작성한 코드가 잘 돌아가는지 문제가 없는지를 확인하는 것이다. 매번 내가 개발을 하고 데이터가 잘 들어갔는지 데이터를 잘 가지고 오는지 확인했던 부분이 모두 테스트에 들어가는 것이였다... 하지만 토비의 스프링에서는 이런 부분을 자동화하고 더욱 효율적인 테스트에 대해서 이야기를 하고있다. 테스트를 위한 코드 작성을 하는게 좋다는 이야기를 자주 들었었던거 같다.... 프로젝트를 하면서 본인 코드에 에러를 잘 잡지 못하는 경우가 생겨 다른 팀원이 말해주는 경우도 있고 엄청 나중에 갑자기 발견하는 경우도 있었다. 그런 경우를 생각해보면 이런 부분도 꼭 훈련을해서 가는게 좋을꺼 같다는 생각이 든다~ 테스트의 가치? 스프링으로 개발을 하면서 테스트를 만들지 않는다면 이.. 2019. 12. 20.
AOP(Aspect Oriented Programming) ? AOP 란? 어플리케이션의 핵심적인 기능에서 부가적인 기능을 분리해서 애스펙트라는 모듈로 만들어서 설계하고 개발하는 방법을 AOP(Aspect Oriented Programming)이라고 한다 Aspect란? 어플리케이션의 핵심 기능은 아니지만, 어플리케이션을 구성하는 중요한 요소이고, 부가적인 기능을 담당하는 요소이다. 객체지향 모듈을 오프젝트라 부르는것과 비슷하게 부가기능 모듈을 애스펙트라고 부르며, 핵심기능에 부가되어 의미를 갖는 특별한 모듈이라 생각하시면 됩니다. 애스펙트는 부가될 기능을 정의한 어드바이스와 어드바이스를 어디에 적용할지를 결정하는 포인트컷을 함께 갖고 있습니다. Aspect = Advice + Pointcut 어드바이저는 단순한 형태의 애스펙트라고 볼 수 있다. AOP 구현 방법 .. 2019. 12. 18.