더북(TheBook)

1.1.1 스프링이란?

스프링은 표준 및 엔터프라이즈 자바 응용 프로그램을 신속하게 개발하는 데 널리 사용되는 오픈 소스 프레임워크입니다. 보통 ‘스프링’이라고 하지만, 정확한 표현은 ‘스프링 프레임워크’입니다. 전 세계 수백만 명의 개발자가 스프링 프레임워크를 사용하여 성능이 뛰어나고 테스트가 쉬우며 재사용이 가능한 코드를 작성합니다.

물론 대규모 자바 애플리케이션을 개발할 때 스프링 외에 기업 환경에 맞는 다른 프레임워크를 선택하여 개발할 수도 있습니다. 그럼에도 스프링을 채택하는 이유는 무엇일까요? 바로 Java EE 플랫폼에서 웹 애플리케이션을 신속하게 개발할 수 있고 모든 인프라 요구 사항을 제공하는 경량급 오픈 소스 프레임워크이기 때문입니다. 규모가 큰 애플리케이션을 개발할 때 복잡함을 제거하여 훨씬 빠르고 간편하게 개발하고 효율적으로 구현할 수 있어 생산성과 품질 면에서도 우수합니다. 또한 개발이 완료된 후 사후 관리를 위한 유지 보수도 손쉽게 할 수 있습니다. 이처럼 스프링은 사용성과 확장성뿐만 아니라 대규모 서버로서 성능도 뛰어나기 때문에 이미 다양한 환경에서 검증되어 대세로 자리 잡았습니다.

일반적으로 웹 서비스를 개발할 때 보통 자바(Java)를 먼저 익힙니다. 그리고 웹 서버에 웹 페이지를 올려 서비스하려고 JSP(Java Server Page)(자바 서버 페이지)를 익힙니다. 자바나 JSP 정도만 익혀도 웹 서비스를 충분히 개발할 수 있는데, 스프링을 배우는 이유는 무엇일까요?

자바는 웹 애플리케이션을 개발할 때 한 클래스 안에서 수직적인 흐름만 제어할 수 있습니다. 반면 스프링은 특정 클래스에 대한 수평적 처리까지 가능하기에 더욱 강력합니다. 스프링은 의존성 주입(Dependency Injection, DI)이나 관점 지향 프로그래밍(Aspect Oriented Programming, AOP)과 같은 기능뿐만 아니라 기본적으로 웹을 개발할 수 있는 웹 MVC 프레임워크도 함께 제공합니다.1 이 프레임워크가 바로 이 책에서 배울 스프링 MVC입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.