스프링 프레임워크(Spring Framework)란?
"코드로 배우느 스프링 웹 프로젝트"책을 개인 공부 후 자료를 남기기 위한 목적이기에 내용 상에 오류가 있을 수 있습니다.
'스프링 프레임워크'가 무엇인지 말 할 수 있고, 해당 프레임워크의 특징 및 장단점을 설명할 수 잇는 것을 목표로합니다.
1. 프레임워크란?
2. 스프링 프레임워크
"뼈대나 근간을 이루는 코드들의 묶음"
Spring(Java의 웹 프레임워크), Django(Python의 웹 프레임워크), Flask(Python의 마이크로 웹 프레임워크), Ruby on rails(Ruby의 웹 프레임워크), .NET Framework, Node.js(Express.js 프레임워크) 등등.
프레임워 워크 종류 :
3. 개발 시간을 단축할 수 있다.
2. 일정한 품질이 보장된 결과물을 얻을 수 있다.
1. 실력이 부족한 개발자라 허다러도 반쯤 완성한 상태에서 필요한 부분을 조립하는 형태의 개발이 가능하다.
프레임워크를 사용하면 크게 다음 3가지의 장점 이 있습니다.
프레임워크 이용 한다는 의미 : 프로그램의 기본 흐름이나 구조를 정하고, 모든 팀원이 이 구조에 자신의 코드를 추가하는 방식으로 개발 한다.
=> 이러한 상황을 극복하기 위한 코드의 결과물이 '프레임워크' 입니다.
개발자는 각 개개인의 능력차이가 크고, 따라서 개발자 구성에 따라서 프로젝트의 결과 차이가 큽니다.
2. 스프링 프레임워크(Spring Framework)
자바 플랫폼을 위한 오픈 소스 애플리케이션
스프링의 다른 프레임워크와 가장 큰 차이점은 다른 프레임워크들의 포용 입니다. 이는 다시말해 기본 뼈대를 흔들지 않고, 여러 종류의 프레임워크를 혼용해서 사용할 수 있다는 점입니다.
대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준프레임워크 이다.
여러 프레임워크들 중 자바(JAVA)를 기반 으로 하는 프레임워크 이다.
POJO(Plan Old Java Object)기반의 구성
- 코드를 개발할 때 개발자가 특정한 라이버리나 컨테이너의 기술에 종속적이지 않다 는 것을 의미합니다
- 쉽게말해 Java코드를 이용해서 객체를 구성하는 방식을 그대로 스프링에서 사용할 수 있다는 의미 합니다.
의존성 주입
- 의존성 주입은 하나의 객체가 다른객체의 의존성을 제공하는 테크닉입니다.
- "어떤 객체가 필요한 객체를 외부에서 밀어 넣는다." 는 의미입니다.
- "의존성 주입"을 사용하여 갖는 장점은 ' 주입을 받는 입장에서는 어떤 객체인지 신경 쓸 필요가 없다.', '어떤 객체에 의존하든 자신의 역할은 변하지 않는다.' 입니다.
- "ApplicationContext" 라는 존재가 필요한 객체들을 생성하고, 피룡한 객체들을 주입하는 역할을 해주는 구조 입니다.
- "ApplicationContext가 관리하는 객체들을 " 빈(Bean)" 이라고합니다.
- 빈과 빈 사이의 의존 관계를 'xml 설정', '어노테이션 설정', 'Java 설정 방식'을 통해서 처리 할 수 있습니다.
관점지향프로그래밍(AOP)의 지원
- 대부분의 시스템에서 '보안'이나 '로그', '트랜잭션'과 같이 무엇을 실행을 하든 반드시 처리가 필요한 부분이 있습니다. 이를 '횡단 관심사(cross-concern)'라고 합니다.
- AOP는 이러한 횡단 관심사를 모듈로 분리하는 프로그래밍 패러다임입니다.
- 이 패러다임을 통해서 반복적인 코드를 줄이고, 핵심 비즈니스 로직에만 집중을 할 수 잇습니다.
from http://kimvampa.tistory.com/35 by ccl(A) rewrite - 2020-03-24 18:20:14
댓글
댓글 쓰기