728x90
반응형
SMALL

spring 4

전략 패턴 + AOP로 정책 로직을 분리한 설계

솔루션 관련 게시글들을 찾아보다가 흥미로운 방식으로 문제를 해결한 내용을 찾아서 블로그 게시글로 정리해서 올려봅니다!1. 문제업무 시스템에서는 많은 파일들이 생성되고 엑셀, PDF, 정산 리포트, 통계 자료 등 다양한 산출물들이 매일같이 만들어지고 내려지는데요. 이런 파일들의 대부분은 보안 대상으로 취급됩니다.그렇기에 많은 시스템이 특정 보안 솔루션을 통해 파일을 암호화하거나 보호하게 됩니다. 하지만 보안 정책이 변경되는 순간부터 기존 방식의 수정해야될 부분들이 많아지는데요기존에는 설치형(에이전트 기반) 보안 솔루션을 사용하고 있지만 신규 클라우드 기반 보안 솔루션이 도입되었지만,모든 사용자들에게 동일한 보안 방식을 적용시킬 수 없었고 결국 하이브리드 상황을 맞이하게 됩니다. 특정 권한 - 신규 보안 방..

[SPRING] DI(Dependency Injection) 의존관계 주입, DI 컨테이너

DI 의존관계 주입객체 간의 의존성을 외부에서 주입하여 결합도를 낮추고 유연한 코드를 작성하는 방법입니다! DI(Dependency Injection) 는 객체 간의 의존 관계를 외부에서 결정하여 객체가 필요한 의존성을 주입받는 개념입니다.DI 를 통해 객체 간의 결합도를 낮출 수 있고, 코드의 재사용성과 테스트 용이성을 높일 수 있습니다. DI 는 주로 생성자, 메서드 매개변수, 속성에 의해 의존성을 주입하며,의존성을 관리하는 컨테이너를 활용하여 객체의 생성과 관리를 담당합니다.이를 통해 유연하고 확장 가능한 애플리케이션을 개발할 수 있습니다! 스프링 DI를 코드 예시를 통해 확인을 해보자!public interface MessageService { void sendMessage(String me..

[Spring] Spring의 삼각관계 IOC와 DI, 그리고 AOP...

GPT-4가 말하길 스프링의 3대 핵심 개념은 DI, IOC, AOP 이다! 그러므로 우리는 서로 얽히고 설킨 IOC와 DI, 그리고 AOP에 대해 알아보자 (그리고 추가로 어떤 순서로 공부하는게 좋은지도 물어봄) 여기 게시글에서는 IOC와 DI, AOP의 각각 연관성에 대해 설명하고하나하나 별도의 게시글로 상세 내용을 다루겠습니다! IOC(Inversion of Control) 는 객체의 생성과 생명주기 관리를 개발자가 아닌 Spring 컨테이너가 담당하는 프로그래밍 기법입니다.IOC는 개발자가 직접 객체를 생성하고 참조하는 것이 아닌 Spring 컨테이너가 알아서 처리하도록 합니다.DI(Dependency Injection) 는 객체 간의 의존성을 외부에서 주입받는 방식을 의미합니다.IOC Co..

[Spring] AOP(관점 지향 프로그래밍)이란?!

AOP란!Aspect Oriented Programming - 관점 지향 프로그래밍이다.Aspect : 관점Oriented Programming : 지향 프로그래밍말 그대로 특정한 관점에 따라 프로그래밍을 한다는 뜻입니다! 여러 객체에 공통적으로 적용할 수 있는 기능을 따로 정의해서다른 객체에 삽입하여 코드의 재사용성을 높여주는 프로그래밍 기법!즉, 어떤 로직을 기준으로 핵심적인 관점(Core concern), 부가적인 관점(Cross-cutting Concern)으로 나누어서 보고그 관점을 기준으로 각각 모듈화 하겠다는 의미입니다. ● 핵심적인 관점(Core concern) : 개발자가 적용하고자 하는 핵심 비즈니스 로직.● 부가적인 관점(Cross-cutting Concern) : 핵심 로직을 수행하..

728x90
반응형
LIST