
안녕하세요
자바 공부 1일차입니다 :)
오늘은 자바와 떼놓을 수 없는 스프링이 무엇인지 배워보도록 하겠습니다!
Spring이란?
스프링은 자바 기반의 애플리케이션 프레임워크입니다.
이클립스 기반의 IDE인 Spring Tools를 제공 중이며,
VS code 버전으로도 제공하고 있습니다.
Spring의 특징
1. POJO 방식: 특정 인터페이스를 직접 구현하거나 상속받을 필요 없이
기존 라이브러리를 지원하기에 용이하고, 객체가 가벼움
2. 관점 지향 프로그래밍: 여러 모듈에서 공통적으로 사용하는 기능을 분리하여 관리할 수 있다.
3. 의존성 주입: 프로그래밍에서 구성요소 간의 의존 관계가 소스코드 내부가 아닌
외부에서 설정을 통해 정의되는 방식
4. 제어 역전: 외부 라이브러리 코드가 개발자의 코드를 호출하기 하여
스프링 프레임워크가 사용자의 코드를 호출하는 방식
5. Bean 생명주기 관리: 스프링 프레임워크는 Bean이라는 이름으로
프레임워크에서 사용되는 자바 객체의 생성과 소멸을 직접 관리
장점
프레임워크이기 때문에, 개발자의 수준과 실력에 상관없이
일정 수준의 품질을 기대할 수 있음
담당자 혹은 개발자가 중간에 바뀌어도 유지보수에 대한 리스크를 줄일 수 있음
단점
많은 기능을 제공하고 탑재하고 있으므로 그만큼 무거움
기능을 익히기 위해 많은 시간과 노력이 필요함
Spring Boot와의 차이점
스프링 부트는 스프링 프레임워크를 기반으로 한 도구입니다.
스프링은 설정 파일을 작성해야 하지만, 스프링 부트는 자동 설정을 제공하여 편리합니다.
스프링 부트는 내장 서버를 제공하여 쉽게 실행할 수 있습니다.
스프링은 세밀하고 천천히 개발하는 경우에, 스프링 부트는 빠르고 간단하게 개발할 때 사용됩니다.
간단하게 Spring에 대해 알아보았는데요!
스프링 굉장히 편리해보이네요 ㅎㅎ
여러분도 스프링 공부하셔서 개발해보시는 거 어떨까요?
'Java' 카테고리의 다른 글
[Java] 객체 생성 | 참조형 변수 | 객체 배열 (1) | 2024.07.31 |
---|---|
[Java] 클래스 설계 | 객체 생성의 기초 (0) | 2024.07.31 |
[Java] 객체지향 프로그래밍 이해하기 (1) | 2024.07.29 |
[Java] 자바 문법 조건문 사용하기 | 자바 if문 | 자바로 가위바위보 구현하기 (2) | 2024.07.23 |
[Java] 자바란 무엇일까? (0) | 2024.07.02 |