개키우는개발자 : )

Basic Framework 개념(2) 본문

JAVA/Spring Framework

Basic Framework 개념(2)

DOGvelopers 2019. 1. 30. 13:53
반응형

Framework 의 개념

학습 목표





2.디자인패턴과 프레임워크의 관련성에 대한 이해.



2-1 디자인패턴의 정의


프로그램 개발에서 자주 나타나는 과제를 해결하기 위한 방법 중 하나로, 소프트웨어 개발과정에서 발견된


Know-How를 축적하여 이름을 붙여 이후에 재사용하기 좋은 형태로 특정 규약을 묶어서 정리한 것.



- 이 용어를 소프트웨어 개발 영역에서 구체적으로 처음 제시한 곳은,GoF(Gang of Four)라 불리는 


네명의 컴퓨터 과학 연구자들이 쓴 서적 'Design Patterns: Elements of Reusable Object-OrientedSoftware'


(재사용 가능한 객체지향 소프트웨어의 요소 - 디자인패턴) 이다.


GOF의 디자인패턴 책 이미지GOF의 디자인패턴 책 이미지


출처) http://www.yes24.com/24/goods/17525598



2-2 디자인패턴을 사용하는 이유


- 요구사항은 수시로 변경 -> 요구사항 변경에 대한 Source Code 변경을 최소화


- 여러 사람이 같이 하는 팀 프로젝트 진행 -> 범용적인 코딩 스타일을 적용


- 상황에 따라 인수 인계하는 경우도 발생 -> 직관적인 코드를 사용



2-3 프레임워크의 정의


비기능적(Non-Functional) 요구사항(성능,보안,확장성,안정성 등)을 만족하는 구조와 구현된 기능을


안정적으로 실행하도록 제어 해주는 잘 만들어진 구조의 라이브러리의 덩어리


-프레임워크는 애플리케이션들의 최소한의 공통점을 찾아 하부 구조를 제공함으로써 개발자들로 하여금


시스템의 하부 구조를 구현하는데 들어가는 노력을 절감하게 해줌.



2-4 프레임워크를 사용하는 이유


- 비기능적인 요소들을 초기 개발 단계마다 구현해야 하는 불합리함을 극복해준다.


-기능적인(Functional) 요구사항에 집중할 수 있도록 해준다.


- 디자인 패턴과 마찬가지로 반복적으로 발견되는 문제를 해결하기 위한 특화된 Solution을 제공한다.



2-4 디자인패턴과 프레임워크의 관련성


디자인 패턴은 프레임워크의 핵심적인 특징이고, 프레임워크를 사용하는 애플리케이션에 그 패턴이


적용된다는 특징을 가지고 있다. 하지만 프레임워크는 디자인 패턴이 아니다.


- 디자인 패턴 애플리케이션을 설계할 때 필요한 구조적인 가이드라인이 되어 줄 수는 있지만 구체적으로


구현된 기반코드를 제공하지 않는다.


- 프레임워크는 디자인 패턴과 함께 패턴이 적용 된 기반 클래스 라이브러리를 제공해서 프레임워크를


사용하는 구조적인 틀과 구현코드를 함께 제공한다.


"개발자는 프레임워크의 기반코드를 확장하여 사용하면서 자연스럽게 그 프레임워크에서 사용된 패턴을 적용할 수 있게 된다."


반응형

'JAVA > Spring Framework' 카테고리의 다른 글

IoC 컨테이너와 DI(Dependency Injection)  (2) 2019.02.06
프로젝트 시작하기  (0) 2019.01.30
Spring Framework 의 개요  (0) 2019.01.30
Basic Framework 개념(3)  (0) 2019.01.30
Basic Framework 개념(1)  (0) 2019.01.30
Comments