Spring

· Spring
Spring AOP AOP(Aspect Oriented Programming) AOP는 관점 지향 프로그래밍이라고 불린다. 관점 지향은 객체 지향, 절차 지향 과는 또 다른 패러다임으로 특정 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누고 그 관점을 기준으로 모듈화(어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것) 를 하겠다는 것이다. AOP에서 각 관점을 기준으로 로직을 모듈화한다는 것은 코드들을 부분적으로 나누어서 모듈화하겠다는 의미다. 이때 소스 코드상에서 다른 부분에 계속 반복해서 쓰는 코드들을 흩어진 관심사(Crosscutting Concerns)라 부른다. 위 그림에서 A,B,C의 클래스가 있다. 클래스 A에서는 주황, 파랑, 빨간색 블록으로 구성되어 있고 클래스 B에서는 빨강, ..
· Spring
[리팩터링 계기] 맡은 프로젝트에서 요청 데이터들은 암호화해서 들어오고, Header에 특정 값을 통해 복호화를 해서 비즈니스 로직을 실행한 다음 다시 암호화를 해서 응답한다. 따라서 암호화된 데이터이기 때문에 컨트롤러에서 @RequestBody를 사용하지 않고 HttpServeltRequest를 파라미터로 전달받아서 진행하는데, 파라미터에 대한 가독성이 떨어지고, 암/복호화에 쓰이는 코드들이 보일러 플레이트화 되어가고 있었다. 따라서 아래의 목표를 달성하기 위한 리팩토링을 진행하였다. 운영 중인 서비스이기 때문에 기존의 코드를 최대한 고치지 않는다. 컨트롤러 메서드에서 HttpServletRequest를 받고 Javadoc으로 파라미터를 작성하는 방법이 아닌 @RequestBody로 받는다. Heade..
· Spring
[Spring] Spring이란? 개발자들의 봄이 왔다! Spring이란 ? - Spring은 Java 기반의 어플리케이션 프레임워크로, Java EE의 스펙을 구현한 EJB가 복잡하고 성능이 느린것을 탈피하고자 만들어진 오픈 소스 프레임워크이다. - EJ dev-density.tistory.com Spring IoC IoC(Inversion of Control) IoC란 Inversion of Control의 약자로 "제어의 역전"이라는 의미다. 역전이라는 단어는 이해하기 쉬워도 제어라는 단어는 이해하기 어렵다. 따라서 코드와 함께 이해해보자. public class Person{ Calculator calculator = new Calculator(); calculator.add(3,4); calcu..
· Spring
개발자들의 봄이 왔다! Spring이란 ? - Spring은 Java 기반의 어플리케이션 프레임워크로, Java EE의 스펙을 구현한 EJB가 복잡하고 성능이 느린것을 탈피하고자 만들어진 오픈 소스 프레임워크이다. - EJB 시절을 겨울에 빗대어 겨울 후의 봄으로 새롭게 시작한다는 것을 의미하는 스프링(봄)이 되었다. - 한국 전자정부표준프레임워크의 기반 기술이며, 한국정보화진흥원에서는 공공기관의 웹 서비스 제공 시 스프링을 권장하고 있다. 프레임워크(Frame Work)란? - 목적에 필요한 것을 고민할 필요 없이 이용할 수 있도록 일괄로 가져다 쓰도록 만들어 놓은 '구조화된 틀'이다. - 더 간단히 말하자면 자주 쓰일 만한 기능들을 한데 모아 놓은 유틸(클래스)들의 모음이라고 정의할 수 있다. - 설..
개발의 밀도
'Spring' 카테고리의 글 목록