SpringBoot

이종찬·2023년 2월 8일
0
post-custom-banner

📖 SpringBoot?

SpringBoot는 애플리케이션 및 서비스를 개발, 패키징 및 배포하는 간소화된 방법을 제공하는 Java기반 프레임워크입니다. 최소한의 설정과 구성으로 프로덕션 준비가 된 독립 실행형 애플리케이션 및 마이크로 서비스를 보다 쉽게 생성할 수 있도록 설계되었습니다. SpringBoot는 일반적으로 많은 개발 작업을 위한 기본 설정 및 구성에 대한 통합 접근 방식을 제공합니다.

🤔 사용해야 하는 이유는?

Spring Boot 어플리케이션에는 Spring 구성이 거의 필요하지 않습니다. 앞서 말했던 간소화된 방법을 통해 Spring 기반 어플리케이션을 쉽게 만들 수 있습니다. 또한 대규모 프로젝트에 공통적인 비 기능을 제공합니다. (보안, 모니터링 등등)

⚡️특징

  1. Java기반 프레임워크
  2. 애플리케이션 및 서비스의 개발, 패키징, 배포를 간소화
  3. 생산 준비가 된 독립 실행형 애플리케이션 및 마이크로서비스를 생성하도록 설계
  4. 최소한의 설정 및 구성
  5. 일반적인 개발 작업을 위한 즉시 사용 가능한 설정 제공
  6. 구성에 대한 통합 접근 방식
  7. 개발자가 프로젝트를 빠르게 시작하고 실행할 수 있도록 지원

😮 사용되는 사례

  1. Spring보다 간단하고 직관적인 설정을 통해 최소한의 노력으로 애플리케이션을 빠르게 만들고 배포하려는 경우

  2. Spring Boot는 마이크로서비스를 쉽게 구축하고 배포할 수 있는 방법을 제공하기 때문에 현대적이고 확장 가능한 애플리케이션에 자주 사용됩니다.

  3. 대규모프로젝트에 필요한 비 기능적 기능도 제공하여 엔터프라이즈 애플리케이션을 구축하는데 사용하기도 합니다.

  4. 데이터베이스, 메시지 브로커 및 보안 시스템과 같은 대중적인 기술과 잘 통합되므로 복잡한 애플리케이션을 위한 유연한 선택이 됩니다

Spring Boot는 광범위한 응용 프로그램 및 서비스를 구축하기 위한 매우 유연하고 효과적인 도구이므로 개발자와 기업에서 많이 사용됩니다.

❌ 단점

  1. Spring Boot를 사용하면 개발을 더 쉽게 시작할 수 있지만 여전히 Spring 프레임워크 및 해당 구성 요소에 대한 충분한 이해가 필요합니다. -> 러닝 커브가 초기엔 낮지만 급격히 올라가는 편

  2. Spring Boot는 즉시 사용 가능한 많은 기능을 제공하지만 애플리케이션에 어느 정도 오버헤드를 추가합니다. 고성능을 보장하기 위해서는 최적화 작업을 추가로 수행해야 할 수 있습니다.

  3. Spring Boot에서 제공하는 추상화를 사용하면 애플리케이션의 기본 구성 요소에서 문제를 진단하고 해결하는 것이 때때로 어려울 수 있습니다.

해당 기술에 장단점이 있지만 많은 개발자들과 기업에서 사용한다는 것은 단점보다 이점이 훨씬 크기 때문이라 생각합니다.

✅ 요약

  • Spring Boot는 Java기반 프레임워크이며 Spring구성이 거의 필요로 하지 않으며 애플리케이션 및 서비스를 개발, 패키징 및 배포하는 간소화된 방법을 제공합니다.
  • 많은 개발자 및 기업에서 사용되고 있는 만큼 유연하고 효과적인 도구입니다. 프레임 워크의 역사도 오래되었습니다.
  • 러닝 커브의 상승 곡선이 가파르고 성능에 있어 어느정도 오버헤드를 추가하지만 단점 보다 이점이 훨씬 큰 프레임워크 입니다.
profile
왜? 라는 질문이 사라질 때까지
post-custom-banner

0개의 댓글