2019년 1월 4일
아키텍처, 프레임워크, 플랫폼
I. 아키텍처 프레임워크 플랫폼 비교
가. 아키텍처
구분 | 설명 |
---|---|
개념 | – S/W의 주요 특징을 결정 짓는 주요 설계 구조 |
특징 | – 소프트웨어의 주요 구성요소, 인터페이스, 동작방식 등 주요 특징을 결정 짓는 설계 구조 |
설명 | – 소프트웨어의 주요 특징 결정, 개발 영향도 높음 – 지원 프로그램, 라이브러리, 언어, 구성요소 등 – 구체적 구현을 포함하지 않는 점에서 구분 |
사례 | – 데이터베이스 아키텍처, 소프트웨어 아키텍처 |
나. 프레임워크
구분 | 설명 |
---|---|
개념 | – 다른 S/W 프로젝트가 개발될 수 있는 뼈대 구조 |
특징 | – 지원 프로그램, 라이브러리, 언어, 구성요소를 연동하는 소프트웨어를 포함 |
설명 | – 플랫폼도 프레임워크의 일종 (닷넷 플랫폼) – UI 프로그램 개발을 위한 부분 프레임워크 가능 – 완전한 소프트웨어 실행 환경이 아니므로 플랫폼은 아니고 프레임워크는 가능 |
사례 | – 전자정부 프레임워크, 스프링 프레임워크 등 |
다. 플랫폼
구분 | 설명 |
---|---|
개념 | – 소프트웨어가 실행되는 환경 |
특징 | – 플랫폼 위에 다른 플랫폼 구축 계층구조 가능 |
설명 | – JAVA Runtime의 경우 OS 플랫폼 계층 위에서 실행되는 프로그램에 불과 – 각 계층의 플랫폼은 자신만의 실행 엔진과 API 및 개발 환경 제공 – 다른 플랫폼에 대한 부분적 접근 허용 |
사례 | – 윈도, 리눅스, 안드로이드, iOS 등 |