Pyun's

1.  Framework

    ● 소프트웨어 어플리케이션이나 , 솔루션 등 개발을 수월하기 위해 소프트웨어에 구체적인 기능들에 해당하는 부분의 설계나 구현을 재사용 가능하도록 협업화된 형태로 제공되는 소프트웨어 환경.

    ● 명확하게 정의된 API를 가지고 코드를 재사용 가능한 형태로 구조화한다는 점에서 라이브러리와 비슷.

    ● 쉽게 생각해보면 소프트웨어를 개발할때 뼈대나 기본틀이라고 생각하면 됨, 보통은 이미 프레임워크가 많은곳에서 정리되어 있기때문에 사용하려는 프레임워크 선택 후 해당 프레임워크에  미리 지정 되어있는 클래스나 인터페이스를 가져다가 소스작업을하여 Application을 완성시킴 

2.  Framework 종류

  

3.  Framework의 장점

    ● 개발 생산성이 증대

1) 동일한 작업을 하는 코드를 보다 빠르고 간단하게 작성가능(미리 정의되어 있는 틀에서 사용하기때문에).

2) 미리 제공되어 있는 컴포넌트 , 통신처리 , 데이터처리 등 개발에 필요한 기능등을 사용하기 때문에 이러한 기능을 잘 이용하게 되면 생산성이 증가됨.

    ● 코드/Application 품질이 향상

1)  반복적인 코딩 작업에서 실수하기 쉬운 부분을 내부에서 정의하여 처리할 수 있기 때문에 코드 작성 과정에서 발생할수 잇는 버그를 최소화 할 수 있다.

2)  미리 정의된 틀을 사용하기 때문에 개발 수준이 평준화 되므로 코드 작성시 품질이 하향되는 경우가 드물다.

    ● 유지보수가 편리 해짐.

1)  변화 하는 비지니스 환경에 담당자가 바뀌는 상황이라해도 구조적이고 체계화된 개발 환경을 구축해 둔 경우라면 유지보수에 발생할수 있는 위험을 최소화 할 수 있다.

2)  코드에 패턴이 유사하기 때문에 분석 및 수정이 편리하다.

4.  Framework의 단점

    ● 초기 개발시 개발자에 학습시간이 필요하다

1)  프레임워크에 대해 전체적인  이해까진 아니라도 기본적인 기능들에 사용방법을 습득하려면 일정시간 이상에 학습시간이 필요하다.

    ● 개발의 자유도에 있어 한계가 있다(= 유연성이 부족하다).

      1) 아무리 잘 설계된 프레임워크라도 모든 예외 상황을 커버하기는 쉽지않다. 

      2) 예외상황 발생 시 프레임워크에 지원되지않는 기능들을 추가로 직접 구현할 경우 프레임워크로인해 제약 되는 부분이 발생 될 수 있어서 좀 더 유연하게 대처하기가 힘듬.


참조 ] http://tobetong.com/?p=6640 

'JAVA' 카테고리의 다른 글

스프링 기초.1  (0) 2017.06.19
스프링 연습중에 발생한 문제....  (0) 2017.06.19
Git 기초 정리한 사이트  (0) 2017.03.23
JDK 버전별 다운로드 링크  (0) 2017.03.09
자바 서블릿에 개념  (0) 2016.12.12