1.1.2 꼭 알아야 할 스프링의 주요 특징
스프링을 사용하는 이유는 순수한 비즈니스 로직을 구현하는 것 외에도 기술적으로 고려해야 할 사항이 많은 대규모 애플리케이션 개발의 복잡성을 간소화하기 위해서입니다. 스프링의 특징 중에서 꼭 알고 넘어가야 할 개념을 살펴보겠습니다.
일반적인 자바 객체를 위한 POJO 지원
스프링은 별도의 API(Application Programming Interface)를 이용하여 애플리케이션 코드를 따로 작성하지 않는 정책을 쓰고 있습니다. 또한 스프링에서는 자바 서블릿 코드를 작성할 때처럼 인터페이스를 반드시 구현해야 한다거나 HttpServlet 클래스를 상속하지 않아도 됩니다. 다시 말해 스프링은 일반적인 자바 언어와 꼭 필요한 API 외에는 특정 구현 기술에 종속되지 않으며, 특정 데이터베이스나 서버에 의존하지 않는 자바 클래스만으로 구성해도 프로그래밍이 가능합니다. 이런 개념을 POJO(Plain Old Java Object)라고 합니다.
스프링은 POJO를 지원하면서 특정 환경이나 구현 기술에 종속적인 코드를 비즈니스 로직에서 분리하므로 코드가 훨씬 단순합니다. 개발 후 특정 데이터베이스나 서버 없이도 테스트할 수 있어 개발 속도도 빨라졌습니다. 또한 POJO는 어떤 규약이나 규제가 없으므로 객체 지향적 설계가 자유롭습니다.
Note ≣ | 비즈니스 로직이란?
비즈니스 로직(business logic)이란 업무에 필요한 데이터를 처리하는 애플리케이션의 일부를 의미합니다. 이것은 데이터 입력, 수정, 조회, 보고서 처리 등을 수행하는 루틴, 즉 보이지 않는 곳에서 일어나는 각종 처리를 의미합니다. 대개 클라이언트 프로그램은 사용자 인터페이스와 비즈니스 로직으로 구성되며, 서버 프로그램은 대부분 비즈니스 로직만으로 구성됩니다.