소프트웨어 개발 프레임 워크
- 반제품 형태의 소프트웨어
- 소프트웨어 개발에 공통적으로 사용되는 구성요소/아키텍쳐를 일반화하여 개발을 손쉽게 하기 위함
주요 기능
- 예외/트랜잭션 처리
- 메모리 공유
- 데이터소스/서비스 관리
- 쿼리/로깅/사용자 인증 서비스
특성
모재확제
- 모듈화 : 모듈화하여 유지보수 좋게
- 재사용성 : 재사용 가능한 모듈 -> 예산 절감, 생산성향상, 품질 보증
- 확장성 : 다형성을 통한 인터페이스 확장 -> 다양한 형태/기능의 앱 개발
- 제어의 역 흐름 : 개발자가 통제/관리해야하는 객체들의 제어를 프레임워크에 넘겨서 생산성 향상시킴. 일반적인 프로그램 제어흐름과 반대로 동작하여 제어의 역 흐름(Inversion of Control, IoC)
예시 : 전자정부프레임워크, 스프링프레임워크, 닷넷 프레임워크